diff options
Diffstat (limited to 'release/scripts/scripttemplate_pyconstraint.py')
-rw-r--r-- | release/scripts/scripttemplate_pyconstraint.py | 114 |
1 files changed, 0 insertions, 114 deletions
diff --git a/release/scripts/scripttemplate_pyconstraint.py b/release/scripts/scripttemplate_pyconstraint.py deleted file mode 100644 index 0215e47a1bd..00000000000 --- a/release/scripts/scripttemplate_pyconstraint.py +++ /dev/null @@ -1,114 +0,0 @@ -#!BPY -""" -Name: 'Script Constraint' -Blender: 245 -Group: 'ScriptTemplate' -Tooltip: 'Add a new script for custom constraints' -""" - -from Blender import Window -import bpy - -script_data = \ -"""#BPYCONSTRAINT -''' - PyConstraint template, access this in the "add constraint" scripts submenu. - Add docstring here -''' - -import Blender -from Blender import Draw -from Blender import Mathutils -import math - -''' - This variable specifies the number of targets - that this constraint can use -''' -NUM_TARGETS = 1 - - -''' - This function is called to evaluate the constraint - obmatrix: (Matrix) copy of owner's 'ownerspace' matrix - targetmatrices: (List) list of copies of the 'targetspace' matrices of the targets (where applicable) - idprop: (IDProperties) wrapped data referring to this - constraint instance's idproperties -''' -def doConstraint(obmatrix, targetmatrices, idprop): - # Separate out the transformation components for easy access. - obloc = obmatrix.translationPart() # Translation - obrot = obmatrix.toEuler() # Rotation - obsca = obmatrix.scalePart() # Scale - - # Define user-settable parameters - # Must also be defined in getSettings(). - if not idprop.has_key('user_toggle'): idprop['user_toggle'] = 1 - if not idprop.has_key('user_slider'): idprop['user_slider'] = 1.0 - - - # Do stuff here, changing obloc, obrot, and obsca. - - - # Convert back into a matrix for loc, scale, rotation, - mtxloc = Mathutils.TranslationMatrix(obloc) - mtxrot = obrot.toMatrix().resize4x4() - mtxsca = Mathutils.Matrix([obsca[0],0,0,0], [0,obsca[1],0,0], [0,0,obsca[2],0], [0,0,0,1]) - - # Recombine the separate elements into a transform matrix. - outputmatrix = mtxsca * mtxrot * mtxloc - - # Return the new matrix. - return outputmatrix - - - -''' - This function manipulates the matrix of a target prior to sending it to doConstraint() - target_object: wrapped data, representing the target object - subtarget_bone: wrapped data, representing the subtarget pose-bone/vertex-group (where applicable) - target_matrix: (Matrix) the transformation matrix of the target - id_properties_of_constraint: (IDProperties) wrapped idproperties -''' -def doTarget(target_object, subtarget_bone, target_matrix, id_properties_of_constraint): - return target_matrix - - -''' - This function draws a pupblock that lets the user set - the values of custom settings the constraint defines. - This function is called when the user presses the settings button. - idprop: (IDProperties) wrapped data referring to this - constraint instance's idproperties -''' -def getSettings(idprop): - # Define user-settable parameters. - # Must also be defined in getSettings(). - if not idprop.has_key('user_toggle'): idprop['user_toggle'] = 1 - if not idprop.has_key('user_slider'): idprop['user_slider'] = 1.0 - - # create temporary vars for interface - utoggle = Draw.Create(idprop['user_toggle']) - uslider = Draw.Create(idprop['user_slider']) - - - # define and draw pupblock - block = [] - block.append("Buttons: ") - block.append(("Toggle", utoggle, "This is a toggle button.")) - block.append("More buttons: ") - block.append(("Slider", uslider, 0.0000001, 1000.0, "This is a number field.")) - - retval = Draw.PupBlock("Constraint Template", block) - - # update id-property values after user changes settings - if (retval): - idprop['user_toggle']= utoggle.val - idprop['user_slider']= uslider.val - -""" - -new_text = bpy.data.texts.new('pyconstraint_template.py') -new_text.write(script_data) -bpy.data.texts.active = new_text -Window.RedrawAll() |