From a03836312463813e366f1043093625dafd3ebd2b Mon Sep 17 00:00:00 2001 From: Campbell Barton Date: Thu, 22 Nov 2007 16:30:14 +0000 Subject: mesh_wire.py - gave an error with no faces, wizard_curve2tree.py - didnt work with no bevel object Curve.py - ext1, ext2 didnt reference the interface names. --- release/scripts/bpymodules/BPyMessages.py | 2 ++ release/scripts/mesh_wire.py | 27 ++++++++++++++++----------- release/scripts/wizard_curve2tree.py | 4 +++- 3 files changed, 21 insertions(+), 12 deletions(-) (limited to 'release') diff --git a/release/scripts/bpymodules/BPyMessages.py b/release/scripts/bpymodules/BPyMessages.py index 0ff8e178ac1..8ee1aa6c707 100644 --- a/release/scripts/bpymodules/BPyMessages.py +++ b/release/scripts/bpymodules/BPyMessages.py @@ -11,6 +11,8 @@ def Error_NoMeshUvActive(): Draw.PupMenu('Error%t|Active object is not a mesh with texface') def Error_NoMeshMultiresEdit(): Draw.PupMenu('Error%t|Unable to complete action with multires enabled') +def Error_NoMeshFaces(): + Draw.PupMenu('Error%t|Mesh has no faces') # File I/O messages def Error_NoFile(path): diff --git a/release/scripts/mesh_wire.py b/release/scripts/mesh_wire.py index 35cfa325497..bd38c47a9b9 100644 --- a/release/scripts/mesh_wire.py +++ b/release/scripts/mesh_wire.py @@ -44,6 +44,7 @@ from BPyMathutils import angleToLength import mesh_solidify import BPyMessages +reload(BPyMessages) import bpy @@ -219,9 +220,7 @@ def solid_wire(ob_orig, me_orig, sce, PREF_THICKNESS, PREF_SOLID, PREF_SHARP, PR for ii in vusers: co += me.verts[ii].co co /= len(vusers) - - - + me.faces.delete(1, range(len(me.faces))) me.faces.extend(new_faces) @@ -245,6 +244,18 @@ def main(): BPyMessages.Error_NoMeshActive() return + # Saves the editmode state and go's out of + # editmode if its enabled, we cant make + # changes to the mesh data while in editmode. + is_editmode = Window.EditMode() + Window.EditMode(0) + + me = ob_act.getData(mesh=1) # old NMesh api is default + if len(me.faces)==0: + BPyMessages.Error_NoMeshFaces() + if is_editmode: Window.EditMode(1) + return + # Create the variables. PREF_THICK = Blender.Draw.Create(0.005) PREF_SOLID = Blender.Draw.Create(1) @@ -259,16 +270,10 @@ def main(): ] if not Blender.Draw.PupBlock('Solid Wireframe', pup_block): + if is_editmode: Window.EditMode(1) return - # Saves the editmode state and go's out of - # editmode if its enabled, we cant make - # changes to the mesh data while in editmode. - is_editmode = Window.EditMode() - Window.EditMode(0) - Window.WaitCursor(1) - me = ob_act.getData(mesh=1) # old NMesh api is default t = sys.time() # Run the mesh editing function @@ -282,4 +287,4 @@ def main(): # This lets you can import the script without running it if __name__ == '__main__': - main() \ No newline at end of file + main() diff --git a/release/scripts/wizard_curve2tree.py b/release/scripts/wizard_curve2tree.py index 041fe72f6f0..9b23d9e7b11 100644 --- a/release/scripts/wizard_curve2tree.py +++ b/release/scripts/wizard_curve2tree.py @@ -183,7 +183,9 @@ class tree: bb = curve.bevob.boundingBox # self.limbScale = (bb[0] - bb[7]).length / 2.825 # THIS IS GOOD WHEN NON SUBSURRFED self.limbScale = (bb[0] - bb[7]).length / 1.8 - + elif curve.ext2 != 0.0: + self.limbScale = curve.ext2 * 1.5 + # forward_diff_bezier will fill in the blanks # nice we can reuse these for every curve segment :) pointlist = [[None, None, None] for i in xrange(steps+1)] -- cgit v1.2.3