[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [18434] branches/etch-a-ton/source/blender /src/editarmature_sketch.c: Last version of overdraw didn' t work great with polylines.
Martin Poirier
theeth at yahoo.com
Fri Jan 9 20:25:13 CET 2009
Revision: 18434
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=18434
Author: theeth
Date: 2009-01-09 20:25:10 +0100 (Fri, 09 Jan 2009)
Log Message:
-----------
Last version of overdraw didn't work great with polylines. Fix this and misc wrong initial values.
Modified Paths:
--------------
branches/etch-a-ton/source/blender/src/editarmature_sketch.c
Modified: branches/etch-a-ton/source/blender/src/editarmature_sketch.c
===================================================================
--- branches/etch-a-ton/source/blender/src/editarmature_sketch.c 2009-01-09 18:32:33 UTC (rev 18433)
+++ branches/etch-a-ton/source/blender/src/editarmature_sketch.c 2009-01-09 19:25:10 UTC (rev 18434)
@@ -92,6 +92,8 @@
int selected;
} SK_Stroke;
+#define SK_ADJUST_LIMIT 5
+
typedef struct SK_Adjustment
{
SK_Stroke *target;
@@ -1360,14 +1362,14 @@
void sk_resetAdjust(SK_Sketch *sketch)
{
sketch->adj.target = NULL;
- sketch->adj.start = 0;
- sketch->adj.end = 0;
+ sketch->adj.start = -1;
+ sketch->adj.end = -1;
sketch->adj.count = 0;
}
int sk_hasAdjust(SK_Sketch *sketch, SK_Stroke *stk)
{
- return sketch->adj.target && sketch->adj.count >= 3 && (sketch->adj.target == stk || stk == NULL);
+ return sketch->adj.target && sketch->adj.count >= SK_ADJUST_LIMIT && (sketch->adj.target == stk || stk == NULL);
}
void sk_updateAdjust(SK_Sketch *sketch, SK_Stroke *stk, SK_DrawData *dd)
@@ -1398,7 +1400,14 @@
{
if (closest_index > -1)
{
- sketch->adj.count++;
+ if (sk_lastStrokePoint(stk)->type == PT_EXACT)
+ {
+ sketch->adj.count = SK_ADJUST_LIMIT;
+ }
+ else
+ {
+ sketch->adj.count++;
+ }
}
if (stk->nb_points == 1)
@@ -1421,7 +1430,15 @@
if (closest_pt != NULL)
{
- sketch->adj.count++;
+ if (sk_lastStrokePoint(stk)->type == PT_EXACT)
+ {
+ sketch->adj.count = SK_ADJUST_LIMIT;
+ }
+ else
+ {
+ sketch->adj.count++;
+ }
+
sketch->adj.end = index;
}
else
More information about the Bf-blender-cvs
mailing list