Revision: 48572
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=48572
Author: psy-fi
Date: 2012-07-03 23:18:49 +0000 (Tue, 03 Jul 2012)
Log Message:
-----------
Fix rake overlay for image editor
Modified Paths:
--------------
branches/soc-2012-bratwurst/source/blender/editors/sculpt_paint/paint_2D.c
branches/soc-2012-bratwurst/source/blender/editors/sculpt_paint/paint_2D.h
branches/soc-2012-bratwurst/source/blender/editors/sculpt_paint/paint_image.c
Modified:
branches/soc-2012-bratwurst/source/blender/editors/sculpt_paint/paint_2D.c
===================================================================
--- branches/soc-2012-bratwurst/source/blender/editors/sculpt_paint/paint_2D.c
2012-07-03 22:58:43 UTC (rev 48571)
+++ branches/soc-2012-bratwurst/source/blender/editors/sculpt_paint/paint_2D.c
2012-07-03 23:18:49 UTC (rev 48572)
@@ -338,7 +338,7 @@
if(brush->flag & BRUSH_RANDOM_ROTATION)
special_rotation = BLI_frand()*2*M_PI;
else if(brush->flag & BRUSH_RAKE) {
- paint_calculate_rake_rotation(ups, pos);
+ paint_calculate_rake_rotation(ups,
painter->areamousepos);
special_rotation = ups->last_angle;
}
@@ -403,7 +403,7 @@
painter->accumdistance += len;
if(brush->flag & BRUSH_RAKE) {
- paint_calculate_rake_rotation(ups, pos);
+ paint_calculate_rake_rotation(ups,
painter->areamousepos);
special_rotation = ups->last_angle;
} else if(brush->flag & BRUSH_RANDOM_ROTATION)
special_rotation = BLI_frand()*2*M_PI;
Modified:
branches/soc-2012-bratwurst/source/blender/editors/sculpt_paint/paint_2D.h
===================================================================
--- branches/soc-2012-bratwurst/source/blender/editors/sculpt_paint/paint_2D.h
2012-07-03 22:58:43 UTC (rev 48571)
+++ branches/soc-2012-bratwurst/source/blender/editors/sculpt_paint/paint_2D.h
2012-07-03 23:18:49 UTC (rev 48572)
@@ -52,7 +52,7 @@
struct Scene *scene;
struct Brush *brush;
- float lastmousepos[2]; /* mouse position of last paint call */
+ float lastmousepos[2]; /* mouse position of last paint call. May be
area space or image space, depending texture or image paint */
float accumdistance; /* accumulated distance of brush since last
paint op */
float lastpaintpos[2]; /* position of last paint op */
@@ -70,6 +70,8 @@
float startjitter;
float startspacing;
+ float areamousepos[2]; /* guaranteed to hold the mouse position */
+
BrushPainterCache cache;
};
Modified:
branches/soc-2012-bratwurst/source/blender/editors/sculpt_paint/paint_image.c
===================================================================
---
branches/soc-2012-bratwurst/source/blender/editors/sculpt_paint/paint_image.c
2012-07-03 22:58:43 UTC (rev 48571)
+++
branches/soc-2012-bratwurst/source/blender/editors/sculpt_paint/paint_image.c
2012-07-03 23:18:49 UTC (rev 48572)
@@ -105,6 +105,7 @@
#include "GPU_extensions.h"
#include "paint_intern.h"
+#include "paint_2D.h"
/* Defines and Structs */
@@ -4128,6 +4129,9 @@
pos[0] = (float)(mval_i[0]);
pos[1] = (float)(mval_i[1]);
+ painter->areamousepos[0] = (float)(mval_i[0]);
+ painter->areamousepos[1] = (float)(mval_i[1]);
+
// we may want to use this later
// BKE_brush_painter_require_imbuf(painter, ((ibuf->rect_float)? 1: 0),
0, 0);
@@ -4639,6 +4643,9 @@
s->uv[1] = newuv[1];
}
else {
+ painter->areamousepos[0] = (float)(mval[0]);
+ painter->areamousepos[1] = (float)(mval[1]);
+
UI_view2d_region_to_view(s->v2d, mval[0], mval[1], &newuv[0],
&newuv[1]);
redraw |= imapaint_paint_sub_stroke(s, painter, s->image,
texpaint, newuv,
time, 1, pressure);
_______________________________________________
Bf-blender-cvs mailing list
[email protected]
http://lists.blender.org/mailman/listinfo/bf-blender-cvs