[Bf-extensions-cvs] [7c3da5f] master: ewoc_projects_tools version 1.4.0

Gert De Roost noreply at git.blender.org
Tue Oct 28 00:20:17 CET 2014


Commit: 7c3da5fa681a5827173070bb049db7aba193ab51
Author: Gert De Roost
Date:   Mon Oct 27 20:01:53 2014 +0100
Branches: master
https://developer.blender.org/rBAC7c3da5fa681a5827173070bb049db7aba193ab51

ewoc_projects_tools version 1.4.0

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

M	ewoc_projects_tools/__init__.py
M	ewoc_projects_tools/mesh_edgegrow.py
M	ewoc_projects_tools/mesh_edgetune.py
M	ewoc_projects_tools/mesh_fanconnect.py
M	ewoc_projects_tools/mesh_floodsel.py
M	ewoc_projects_tools/mesh_paredge.py
M	ewoc_projects_tools/object_decouple.py
M	ewoc_projects_tools/object_keeptrans.py

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

diff --git a/ewoc_projects_tools/__init__.py b/ewoc_projects_tools/__init__.py
index ab28f24..a98e95e 100644
--- a/ewoc_projects_tools/__init__.py
+++ b/ewoc_projects_tools/__init__.py
@@ -21,9 +21,9 @@
 bl_info = {
 	"name": "EWOCprojects tools",
 	"author": "Gert De Roost - paleajed",
-	"version": (1, 3, 1),
-	"blender": (2, 71, 0),
-	"location": "View3D > Tool Shelf > Addons & Specials (W-key)",
+	"version": (1, 4, 0),
+	"blender": (2, 65, 0),
+	"location": "View3D > Toolbar and View3D > Specials (W-key)",
 	"description": "Edit mode tools - contrib version",
 	"warning": "",
 	"wiki_url": "",
@@ -115,9 +115,7 @@ class PaleajedPanel(bpy.types.Panel):
 	bl_label = "EWOCprojects tools"
 	bl_space_type = 'VIEW_3D'
 	bl_region_type = 'TOOLS'
-	bl_options = {'DEFAULT_CLOSED'}
-	bl_category = "Addons"
-
+	bl_category = 'Tools'
 
 	def draw(self, context):
 		scn = bpy.context.scene
diff --git a/ewoc_projects_tools/mesh_edgegrow.py b/ewoc_projects_tools/mesh_edgegrow.py
index 272a724..c6395f2 100644
--- a/ewoc_projects_tools/mesh_edgegrow.py
+++ b/ewoc_projects_tools/mesh_edgegrow.py
@@ -43,8 +43,8 @@ Save as Default (Optional).
 bl_info = {
 	"name": "EdgeGrow",
 	"author": "Gert De Roost",
-	"version": (0, 4, 0),
-	"blender": (2, 68, 0),
+	"version": (0, 4, 1),
+	"blender": (2, 65, 0),
 	"location": "View3D > Tools",
 	"description": "Growing edgeloops with arrowkeys",
 	"warning": "",
@@ -342,7 +342,7 @@ class EdgeGrow(bpy.types.Operator):
 				if len(self.edgelist[i]) == 1:
 					if i == 0:
 						x1, y = self.getscreencoords(v.co)
-						x2, y = self.getscreencoords(edgelist[i][0].other_vert(v).co)
+						x2, y = self.getscreencoords(self.edgelist[i][0].other_vert(v).co)
 						if x1 < x2:
 							self.singledir[0] = v
 						else:
@@ -618,7 +618,7 @@ class EdgeGrow(bpy.types.Operator):
 			glEnd()
 
 
-	def setcursors(self, v):
+	def setcursors(self, v, posn):
 
 		# what it says
 		if self.oldstate[posn] == 'START':
@@ -653,7 +653,7 @@ class EdgeGrow(bpy.types.Operator):
 					# if snake is one edge, use singledir vert for orientation
 					v = lst[0].verts[0]
 					self.drawedges(v, lst[0])
-					self.setcursors(v)
+					self.setcursors(v, posn)
 					if self.oldstate[posn] == 'INIT':
 						if self.singledir[posn] == v:
 							self.startcur[posn] = self.tempcur
@@ -661,7 +661,7 @@ class EdgeGrow(bpy.types.Operator):
 							self.endcur[posn] = self.tempcur
 					v = lst[0].verts[1]
 					self.drawedges(v, lst[0])
-					self.setcursors(v)
+					self.setcursors(v, posn)
 					if self.oldstate[posn] == 'INIT':
 						if self.singledir[posn] == v:
 							self.startcur[posn] = self.tempcur
diff --git a/ewoc_projects_tools/mesh_edgetune.py b/ewoc_projects_tools/mesh_edgetune.py
index 81453f4..b459948 100644
--- a/ewoc_projects_tools/mesh_edgetune.py
+++ b/ewoc_projects_tools/mesh_edgetune.py
@@ -61,8 +61,8 @@ This script is an implementation of the concept of sliding vertices around
 bl_info = {
 	"name": "EdgeTune",
 	"author": "Gert De Roost",
-	"version": (3, 5, 0),
-	"blender": (2, 63, 0),
+	"version": (3, 5, 1),
+	"blender": (2, 65, 0),
 	"location": "View3D > Tools",
 	"description": "Tuning edgeloops by redrawing them manually, sliding verts.",
 	"warning": "",
@@ -125,7 +125,6 @@ class EdgeTune(bpy.types.Operator):
 		if event.type == 'RIGHTMOUSE':
 			# cancel operation, reset to bmumdo mesh
 			bpy.types.SpaceView3D.draw_handler_remove(self._handle, 'WINDOW')
-			self.bm.free()
 			bpy.ops.object.editmode_toggle()
 			self.bmundo.to_mesh(self.mesh)
 			bpy.ops.object.editmode_toggle()
@@ -155,9 +154,9 @@ class EdgeTune(bpy.types.Operator):
 		elif event.type == 'RET':
 			# Consolidate changes.
 			# Free the bmesh.
-			self.bm.free()
 			self.bmundo.free()
 			bpy.types.SpaceView3D.draw_handler_remove(self._handle, 'WINDOW')
+			self.region.tag_redraw()
 			return {'FINISHED'}
 
 		elif event.type == 'MOUSEMOVE':
diff --git a/ewoc_projects_tools/mesh_fanconnect.py b/ewoc_projects_tools/mesh_fanconnect.py
index bb87f8f..a93547d 100644
--- a/ewoc_projects_tools/mesh_fanconnect.py
+++ b/ewoc_projects_tools/mesh_fanconnect.py
@@ -37,8 +37,8 @@ Save as Default (Optional).
 bl_info = {
 	"name": "FanConnect",
 	"author": "Gert De Roost",
-	"version": (0, 2, 0),
-	"blender": (2, 63, 0),
+	"version": (0, 2, 1),
+	"blender": (2, 65, 0),
 	"location": "View3D > Tools",
 	"description": "Connects multiple selected verts to one single other vert.",
 	"warning": "",
@@ -101,7 +101,7 @@ class FanConnect(bpy.types.Operator):
 			for f in actvert.link_faces:
 				if v in f.verts:
 					# when already face: split it
-					bmesh.utils.face_split(f, v, actvert)
+					bmesh.ops.connect_verts(self.bm, verts=[v, actvert])
 		for v in vertlist:
 			v2 = None
 			for e in v.link_edges:
diff --git a/ewoc_projects_tools/mesh_floodsel.py b/ewoc_projects_tools/mesh_floodsel.py
index 1428fb9..e308970 100644
--- a/ewoc_projects_tools/mesh_floodsel.py
+++ b/ewoc_projects_tools/mesh_floodsel.py
@@ -42,8 +42,8 @@ Save as Default (Optional).
 bl_info = {
 	"name": "FloodSel",
 	"author": "Gert De Roost",
-	"version": (1, 0, 0),
-	"blender": (2, 63, 0),
+	"version": (1, 1, 2),
+	"blender": (2, 65, 0),
 	"location": "View3D > Tools",
 	"description": "Flood-(de)select areas.",
 	"warning": "",
@@ -142,6 +142,7 @@ class FloodSel(bpy.types.Operator):
 				for elem in self.doneset:
 					elem.select = not(self.state)
 			if not(self.Multiple):
+				started = False
 				self.bm.free()
 				bpy.ops.object.editmode_toggle()
 				bpy.ops.object.editmode_toggle()
@@ -170,14 +171,14 @@ class FloodSel(bpy.types.Operator):
 				if not(a.type == 'VIEW_3D'):
 					continue
 				for r in a.regions:
-					if not(r.type == 'WINDOW'):
-						continue
 					if mxa > r.x and mya > r.y and mxa < r.x + r.width and mya < r.y + r.height:
+						if not(r.type == 'WINDOW'):
+							self.region = None
+							break
 						self.region = r
 						for sp in a.spaces:
 							if sp.type == 'VIEW_3D':
 								self.space = sp
-						break
 
 			if not(self.region):
 				if len(self.doneset):
@@ -236,7 +237,7 @@ class FloodSel(bpy.types.Operator):
 			if 'EDGE' in self.bm.select_mode:
 				startlist = []
 				for e in face.edges:
-					if e.select == state:
+					if e.select == self.state:
 						startlist.append(e)
 				scanlist = list(startlist)
 				self.doneset = set(startlist)
@@ -271,7 +272,7 @@ class FloodSel(bpy.types.Operator):
 							for f in v.link_faces:
 								cands.append(f)
 					for f in cands:
-						if f != face and not(f in doneset) and f.select == self.state:
+						if f != face and not(f in self.doneset) and f.select == self.state:
 							self.doneset.add(f)
 							scanlist.append(f)
 			if self.Preselection:
diff --git a/ewoc_projects_tools/mesh_paredge.py b/ewoc_projects_tools/mesh_paredge.py
index b3e87ce..472d888 100644
--- a/ewoc_projects_tools/mesh_paredge.py
+++ b/ewoc_projects_tools/mesh_paredge.py
@@ -42,8 +42,8 @@ Save as Default (Optional).
 bl_info = {
 	"name": "ParEdge",
 	"author": "Gert De Roost",
-	"version": (0, 5, 0),
-	"blender": (2, 63, 0),
+	"version": (0, 5, 3),
+	"blender": (2, 65, 0),
 	"location": "View3D > Tools",
 	"description": "Inserting of parallel edges",
 	"warning": "",
@@ -134,11 +134,11 @@ class ParEdge(bpy.types.Operator):
 			if not(a.type == 'VIEW_3D'):
 				continue
 			for r in a.regions:
-				if not(r.type == 'WINDOW'):
-					continue
 				if mxa > r.x and mya > r.y and mxa < r.x + r.width and mya < r.y + r.height:
+					if not(r.type == 'WINDOW'):
+						self.region = None
+						break
 					self.region = r
-					break
 
 		if event.type in {'RIGHTMOUSE', 'ESC'} or self.wrongsel or self.stop:
 			self.area.header_text_set()
@@ -178,7 +178,7 @@ class ParEdge(bpy.types.Operator):
 			bpy.ops.mesh.select_all(action = 'DESELECT')
 			for posn in range(len(self.vertlist)):
 				if self.capped:
-					for e in capsellist:
+					for e in self.capsellist:
 						if e == None:
 							continue
 						e.select = True
@@ -203,7 +203,7 @@ class ParEdge(bpy.types.Operator):
 							vert.select = True
 						for edge in self.dissedges1[posn]:
 							edge.select = True
-						bpy.ops.mesh.dissolve_limited()
+						bpy.ops.mesh.dissolve_edges(use_verts=True)
 						self.mesh.calc_tessface()
 						self.negsubd[posn] = False
 						self.possubd[posn] = False
@@ -213,7 +213,7 @@ class ParEdge(bpy.types.Operator):
 							vert.select = True
 						for edge in self.dissedges2[posn]:
 							edge.select = True
-						bpy.ops.mesh.dissolve_limited()
+						bpy.ops.mesh.dissolve_edges(use_verts=True)
 						self.mesh.calc_tessface()
 						self.negsubd[posn] = False
 						self.possubd[posn] = False
@@ -290,7 +290,7 @@ class ParEdge(bpy.types.Operator):
 								vert.select = True
 							for edge in self.dissedges2[posn]:
 								edge.select = True
-							bpy.ops.mesh.dissolve_limited()
+							bpy.ops.mesh.dissolve_edges(use_verts=True)
 							self.mesh.calc_tessface()
 							for vert in self.dissverts1[posn]:
 								vert.select = True
@@ -309,7 +309,7 @@ class ParEdge(bpy.types.Operator):
 									vert.select = True
 								for edge in self.dissedges1[posn]:
 									edge.select = True
-								bpy.ops.mesh.dissolve_limited()
+								bpy.ops.mesh.dissolve_edges(use_verts=True)
 								self.mesh.calc_tessface()
 								for vert in self.dissverts2[posn]:
 									vert.select = True
@@ -343,7 +343,7 @@ class ParEdge(bpy.types.Operator):
 			# dont do anything if zero - removing edges will be handled once exiting with ENTER
 			if self.Distance == 0:
 				return
-
+				
 			#negative side handling
 			if self.dist < 0 or self.Both == True:
 				for posn in range(len(self.vertlist)):
@@ -356,7 +356,8 @@ class ParEdge(bpy.types.Operator):
 									vert.select = True
 								for edge in self.dissedges2[posn]:
 									edge.select = True
-								bpy.ops.mesh.dissolve_limited()
+								self.mesh.update()
+								bpy.ops.mesh.dissolve_edges(use_verts=True, use_face_split=False)
 								self.railedges2[posn] = []
 								self.railverts2[posn] = []
 								self.dissverts2[posn] = []
@@ -372,11 +373,11 @@ class ParEdge(bpy.types.Operator):
 					if not(self.negsubd[posn]):
 						self.negsubd[posn] = True
 						# if just switched sides: loo

@@ Diff output truncated at 10240 characters. @@



More information about the Bf-extensions-cvs mailing list