[Bf-blender-cvs] [ebf98b4c056] greasepencil-experimental: Revert "GP: Draw: Speedline guides"

Charlie Jolly noreply at git.blender.org
Fri Jan 4 10:47:58 CET 2019


Commit: ebf98b4c05665ccc7f9f39bfb89b3ed73561e26b
Author: Charlie Jolly
Date:   Wed Jan 2 17:57:07 2019 +0000
Branches: greasepencil-experimental
https://developer.blender.org/rBebf98b4c05665ccc7f9f39bfb89b3ed73561e26b

Revert "GP: Draw: Speedline guides"

This reverts commit e83bfeab810dafb6b4963e2ce46b697cbee0701c.

===================================================================

M	release/scripts/presets/keyconfig/keymap_data/blender_default.py
M	release/scripts/startup/bl_ui/space_view3d.py
M	source/blender/editors/gpencil/gpencil_paint.c
M	source/blender/makesdna/DNA_scene_types.h
M	source/blender/makesrna/intern/rna_sculpt_paint.c

===================================================================

diff --git a/release/scripts/presets/keyconfig/keymap_data/blender_default.py b/release/scripts/presets/keyconfig/keymap_data/blender_default.py
index e3955959a8d..3912afa8f89 100644
--- a/release/scripts/presets/keyconfig/keymap_data/blender_default.py
+++ b/release/scripts/presets/keyconfig/keymap_data/blender_default.py
@@ -3039,24 +3039,7 @@ def km_grease_pencil_stroke_paint_draw_brush(params):
         # Erase
         ("gpencil.draw", {"type": 'LEFTMOUSE', "value": 'PRESS', "ctrl": True},
          {"properties": [("mode", 'ERASER'), ("wait_for_input", False)]}),
-        # Constrain Guides Speedlines
-		# Freehand
-        ("gpencil.draw", {"type": 'J', "value": 'PRESS'}, None),
-        ("gpencil.draw", {"type": 'J', "value": 'PRESS', "alt": True}, None),
-        ("gpencil.draw", {"type": 'J', "value": 'PRESS', "shift": True}, None),
-        ("gpencil.draw", {"type": 'K', "value": 'PRESS'}, None),
-        ("gpencil.draw", {"type": 'K', "value": 'PRESS', "alt": True}, None),
-        ("gpencil.draw", {"type": 'K', "value": 'PRESS', "shift": True}, None),
-        ("gpencil.draw", {"type": 'L', "value": 'PRESS'}, None),
-        ("gpencil.draw", {"type": 'L', "value": 'PRESS', "alt": True}, None),
-        ("gpencil.draw", {"type": 'L', "value": 'PRESS', "ctrl": True}, None),
-        ("gpencil.draw", {"type": 'V', "value": 'PRESS'}, None),
-		# Mirror or flip
-        ("gpencil.draw", {"type": 'M', "value": 'PRESS'}, None),
-		# Mode
-        ("gpencil.draw", {"type": 'C', "value": 'PRESS'}, None),
-		# Set reference point
-        ("gpencil.draw", {"type": 'C', "value": 'PRESS', "alt": True}, None),
+
         # Tablet Mappings for Drawing ------------------ */
         # For now, only support direct drawing using the eraser, as most users using a tablet
         # may still want to use that as their primary pointing device!
diff --git a/release/scripts/startup/bl_ui/space_view3d.py b/release/scripts/startup/bl_ui/space_view3d.py
index a4e0cd4a20e..47863156898 100644
--- a/release/scripts/startup/bl_ui/space_view3d.py
+++ b/release/scripts/startup/bl_ui/space_view3d.py
@@ -245,18 +245,6 @@ class VIEW3D_HT_header(Header):
                 text=lk_name,
                 icon=lk_icon,
             )
-            
-        if object_mode in {'PAINT_GPENCIL'}:
-            if context.workspace.tools.from_space_view3d_mode(object_mode).name == "Draw":
-                settings = tool_settings.gpencil_sculpt
-                row = layout.row(align=True)
-                row.prop(settings, "use_speed_guide", text="", icon='GRID')
-                sub = row.row(align=True)
-                sub.enabled = settings.use_speed_guide
-                sub.popover(
-                    panel="VIEW3D_PT_gpencil_guide",
-                    text="Guides"
-                )
 
         layout.separator_spacer()
 
@@ -5332,30 +5320,7 @@ class VIEW3D_PT_gpencil_lock(Panel):
         col = row.column()
         col.prop(context.tool_settings.gpencil_sculpt, "lock_axis", expand=True)
 
-        
-class VIEW3D_PT_gpencil_guide(Panel):
-    bl_space_type = 'VIEW_3D'
-    bl_region_type = 'HEADER'
-    bl_label = "Guides"
-
-    @staticmethod
-    def draw(self, context):
-        settings = context.tool_settings.gpencil_sculpt
-
-        layout = self.layout
-        layout.label(text="Guides")
-        
-        row = layout.row()
-        col = row.column()
-        col.prop(settings, "guide_type", expand=True)
-                
-        row = col.row(align=True)
-        row.active = bool(settings.guide_type == "PARALLEL");
-        row.prop(settings, "guide_angle")
-        
-        col.prop(settings, "guide_flip")
 
-        
 class VIEW3D_PT_overlay_gpencil_options(Panel):
     bl_space_type = 'VIEW_3D'
     bl_region_type = 'HEADER'
@@ -5825,7 +5790,6 @@ classes = (
     VIEW3D_PT_snapping,
     VIEW3D_PT_gpencil_origin,
     VIEW3D_PT_gpencil_lock,
-    VIEW3D_PT_gpencil_guide,
     VIEW3D_PT_transform_orientations,
     VIEW3D_PT_overlay_gpencil_options,
     VIEW3D_PT_context_properties,
diff --git a/source/blender/editors/gpencil/gpencil_paint.c b/source/blender/editors/gpencil/gpencil_paint.c
index 20e93494fc9..2c071493fb1 100644
--- a/source/blender/editors/gpencil/gpencil_paint.c
+++ b/source/blender/editors/gpencil/gpencil_paint.c
@@ -157,7 +157,6 @@ typedef struct tGPsdata {
 
 	float mval[2];        /* current mouse-position */
 	float mvalo[2];       /* previous recorded mouse-position */
-	float mvali[2];       /* initial recorded mouse-position */
 
 	float pressure;     /* current stylus pressure */
 	float opressure;    /* previous stylus pressure */
@@ -183,7 +182,7 @@ typedef struct tGPsdata {
 
 	Brush *brush;    /* current drawing brush */
 	Brush *eraser;   /* default eraser brush */
-	short straight[2];   /* 1: line horizontal, 2: line vertical, 3: speed lines, other: not defined, second element position */
+	short straight[2];   /* 1: line horizontal, 2: line vertical, other: not defined, second element position */
 	int lock_axis;       /* lock drawing to one axis */
 	bool disable_fill;   /* the stroke is no fill mode */
 
@@ -2537,21 +2536,10 @@ static void gpencil_draw_apply(bContext *C, wmOperator *op, tGPsdata *p, Depsgra
 	}
 }
 
-/* Helper to rotate point around origin */
-static void gp_rotate_v2_v2v2fl(float v[2], const float p[2], const float origin[2], const float angle)
-{
-	float pt[2];
-	float r[2];
-	sub_v2_v2v2(pt, p, origin);
-	rotate_v2_v2fl(r, pt, angle);
-	add_v2_v2v2(v, r, origin);
-}
-
 /* handle draw event */
 static void gpencil_draw_apply_event(bContext *C, wmOperator *op, const wmEvent *event, Depsgraph *depsgraph, float x, float y)
 {
 	tGPsdata *p = op->customdata;
-	ToolSettings *ts = p->scene->toolsettings;
 	PointerRNA itemptr;
 	float mousef[2];
 	int tablet = 0;
@@ -2565,14 +2553,7 @@ static void gpencil_draw_apply_event(bContext *C, wmOperator *op, const wmEvent
 	p->shift = event->shift;
 
 	/* verify key status for straight lines */
-	
-	if (ts->gp_sculpt.use_speed_guide) {
-		if (p->straight[0] == 0) {
-			p->straight[0] = 3;
-			p->straight[1] = ts->gp_sculpt.guide_type;
-		}
-	}
-	else if ((event->alt > 0) && (RNA_boolean_get(op->ptr, "disable_straight") == false)) {
+	if ((event->alt > 0) && (RNA_boolean_get(op->ptr, "disable_straight") == false)) {
 		if (p->straight[0] == 0) {
 			int dx = (int)fabsf(p->mval[0] - p->mvalo[0]);
 			int dy = (int)fabsf(p->mval[1] - p->mvalo[1]);
@@ -2641,12 +2622,12 @@ static void gpencil_draw_apply_event(bContext *C, wmOperator *op, const wmEvent
 	if (p->flags & GP_PAINTFLAG_FIRSTRUN) {
 		p->flags &= ~GP_PAINTFLAG_FIRSTRUN;
 
-		copy_v2_v2(p->mvalo, p->mval);
+		p->mvalo[0] = p->mval[0];
+		p->mvalo[1] = p->mval[1];
 		p->opressure = p->pressure;
 		p->inittime = p->ocurtime = p->curtime;
 		p->straight[0] = 0;
 		p->straight[1] = 0;
-		copy_v2_v2(p->mvali, p->mval); /* save initial mouse */
 
 		/* special exception here for too high pressure values on first touch in
 		 * windows for some tablets, then we just skip first touch...
@@ -2657,40 +2638,7 @@ static void gpencil_draw_apply_event(bContext *C, wmOperator *op, const wmEvent
 
 	/* check if alt key is pressed and limit to straight lines */
 	if ((p->paintmode != GP_PAINTMODE_ERASER) && (p->straight[0] != 0)) {
-		if (p->straight[0] == 3) {
-			/* speed_guide */
-			int spdmode = p->straight[1];
-			bool flip = ts->gp_sculpt.guide_flip;
-			if (spdmode == 0) {
-				/* speed_guide - use single origin point */
-				float origin[2];
-				RNA_float_get_array(op->ptr, "guide_origin", origin);
-				if (!flip) {
-					/* speed_guide - constrain to rings (distance from origin) */
-					float distance;
-					distance = len_v2v2(p->mvali, origin);
-					dist_ensure_v2_v2fl(p->mval, origin, distance);
-				}
-				else {
-					/* speed_guide - constrain in lines (direction from origin) */
-					closest_to_line_v2(p->mval, p->mval, p->mvali, origin);
-				}
-			}
-			else if (spdmode == 1) {
-				/* speed_guide - use angle of direction */
-				float point[2];
-				float unit[2];
-				float angle;
-				copy_v2_v2(unit, p->mvali);
-				unit[0] += 1.0f; /* start from horizontal */
-				angle = ts->gp_sculpt.guide_angle;
-				if (flip)
-					angle += M_PI_2; /* rotate 90 degrees */
-				gp_rotate_v2_v2v2fl(point, unit, p->mvali, angle);
-				closest_to_line_v2(p->mval, p->mval, p->mvali, point);
-			}
-		}
-		else if (p->straight[0] == 1) {
+		if (p->straight[0] == 1) {
 			/* horizontal */
 			p->mval[1] = p->straight[1]; /* replace y */
 		}
@@ -2795,74 +2743,6 @@ static int gpencil_draw_exec(bContext *C, wmOperator *op)
 
 /* ------------------------------- */
 
-static void gpencil_guide_event_handling(bContext *C, wmOperator *op, const wmEvent *event, tGPsdata *p)
-{
-	ToolSettings *ts = p->scene->toolsettings;
-	if ((event->type == VKEY) && (event->val == KM_PRESS)) {
-		/* Freehand mode, turn off speed guide */
-		ts->gp_sculpt.use_speed_guide = false;
-	}
-	else if ((event->type == MKEY) && (event->val == KM_PRESS)) {
-		/* Flip direction */
-		copy_v2_v2(p->mvali, p->mval);
-		ts->gp_sculpt.guide_flip ^= 1;
-	}
-	else if ((event->type == LKEY) && (event->val == KM_PRESS)) {
-		/* Line guides */
-		ts->gp_sculpt.use_speed_guide = true;
-		copy_v2_v2(p->mvali, p->mval);
-		if (event->ctrl) {
-			ts->gp_sculpt.guide_angle = 0.0f;
-			ts->gp_sculpt.guide_type = GP_GUIDE_PARALLEL;
-			ts->gp_sculpt.guide_flip = 0;
-		}
-		else if (event->alt) {
-			ts->gp_sculpt.guide_type = GP_GUIDE_PARALLEL;
-			ts->gp_sculpt.guide_angle = RNA_float_get(op->ptr, "guide_last_angle");
-			ts->gp_sculpt.guide_flip = 0;
-		}
-		else if (ts->gp_sculpt.guide_type == 1) {
-			ts->gp_sculpt.guide_flip ^= 1;
-		}
-		else {
-			ts->gp_sculpt.guide_type = GP_GUIDE_PARALLEL;
-			ts->gp_sculpt.guide_flip = 0;
-		}
-		
-	}
-	else if ((event->type == CKEY) && (event->val == KM_PRESS)) {
-		/* Point guide */
-		ts->gp_sculpt.use_speed_guide = true;
-		copy_v2_v2(p->mvali, p->mval);
-		if (event->alt) {
-			float origin[2];
-			copy_v2fl_v2i(origin, event->mval);
-			RNA_float_set_array(op->ptr, "guide_origin", origin);
-			ts->gp_sculpt.guide_type = GP_GUIDE_CIRCULAR;
-			ts->gp_sculpt.guide_flip = 0;
-		}
-		else if (ts->gp_sculpt.guide_ty

@@ Diff output truncated at 10240 characters. @@



More information about the Bf-blender-cvs mailing list