From afa57a507cbab65d11e67d7416fecf7bb46b3e34 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?T=C3=A9o=20Mazars?= Date: Sat, 23 Mar 2013 12:28:25 +0100 Subject: [PATCH] Bug 641951 - Weird spacing with flat brushes Take brush orientation into account when computing distances in the coordinate space of the brush. --- app/paint/gimpbrushcore.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/app/paint/gimpbrushcore.c b/app/paint/gimpbrushcore.c index 063153cdf3..07ad88fd7f 100644 --- a/app/paint/gimpbrushcore.c +++ b/app/paint/gimpbrushcore.c @@ -549,12 +549,14 @@ gimp_brush_core_interpolate (GimpPaintCore *paint_core, /* calculate the distance traveled in the coordinate space of the brush */ temp_vec = core->brush->x_axis; gimp_vector2_mul (&temp_vec, core->scale); + gimp_vector2_rotate (&temp_vec, core->angle * G_PI * 2); mag = gimp_vector2_length (&temp_vec); xd = gimp_vector2_inner_product (&delta_vec, &temp_vec) / (mag * mag); temp_vec = core->brush->y_axis; gimp_vector2_mul (&temp_vec, core->scale); + gimp_vector2_rotate (&temp_vec, core->angle * G_PI * 2); mag = gimp_vector2_length (&temp_vec); yd = gimp_vector2_inner_product (&delta_vec, &temp_vec) / (mag * mag);