[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [53086] trunk/blender/source/blender/ editors/mesh/editmesh_select.c: fix/workaround [#33493] checker de-select and edge loops

Campbell Barton ideasman42 at gmail.com
Mon Dec 17 16:02:27 CET 2012


Revision: 53086
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=53086
Author:   campbellbarton
Date:     2012-12-17 15:02:26 +0000 (Mon, 17 Dec 2012)
Log Message:
-----------
fix/workaround [#33493] checker de-select and edge loops

Checker de-select by default would give uneven selection on a circle, this isnt really a bug but the offset used would give unevenly spaced selection even if the 3rd vertex for eg could be evenly selected on a circle.

Change how the offset works so the active element always remains selected when the offset is set to zero, this tends to give more even de-selection.

Modified Paths:
--------------
    trunk/blender/source/blender/editors/mesh/editmesh_select.c

Modified: trunk/blender/source/blender/editors/mesh/editmesh_select.c
===================================================================
--- trunk/blender/source/blender/editors/mesh/editmesh_select.c	2012-12-17 14:51:06 UTC (rev 53085)
+++ trunk/blender/source/blender/editors/mesh/editmesh_select.c	2012-12-17 15:02:26 UTC (rev 53086)
@@ -2630,7 +2630,8 @@
 	int nth = RNA_int_get(op->ptr, "nth");
 	int offset = RNA_int_get(op->ptr, "offset");
 
-	offset = MIN2(nth, offset);
+	/* so input of offset zero ends up being (nth - 1) */
+	offset = (offset + (nth - 1)) % nth;
 
 	if (edbm_deselect_nth(em, nth, offset) == 0) {
 		BKE_report(op->reports, RPT_ERROR, "Mesh has no active vert/edge/face");




More information about the Bf-blender-cvs mailing list