Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'release/scripts/scripttemplate_camera_object.py')
-rw-r--r--release/scripts/scripttemplate_camera_object.py104
1 files changed, 0 insertions, 104 deletions
diff --git a/release/scripts/scripttemplate_camera_object.py b/release/scripts/scripttemplate_camera_object.py
deleted file mode 100644
index cacc35ed1a5..00000000000
--- a/release/scripts/scripttemplate_camera_object.py
+++ /dev/null
@@ -1,104 +0,0 @@
-#!BPY
-"""
-Name: 'Camera/Object Example'
-Blender: 245
-Group: 'ScriptTemplate'
-Tooltip: 'Script template for setting the camera direction'
-"""
-
-from Blender import Window
-import bpy
-
-script_data = \
-'''#!BPY
-"""
-Name: 'My Camera script'
-Blender: 245
-Group: 'Object'
-Tooltip: 'Rotate the camera to center on the active object'
-"""
-
-import Blender
-from Blender import Window, Scene, Draw, Mathutils
-
-# Rotate the camera in such a way that it centers on the currently active object
-def RotCamToOb(cam, ob):
-
- # Get the camera matrix
- camMat = cam.getMatrix('worldspace');
-
- # Get the location of the camera and object and make sure they're vectors
- camLoc = Mathutils.Vector(cam.loc)
- obLoc = Mathutils.Vector(ob.loc)
-
- # Get the vector (direction) from the camera to the object
- newVec = obLoc - camLoc
-
- # Make a quaternion that points the camera along the vector
- newQuat = newVec.toTrackQuat('-z', 'y')
-
- # Convert the new quaternion to a rotation matrix (and resize it to 4x4 so it matches the other matrices)
- rotMat = newQuat.toMatrix().resize4x4()
-
- # Make a matrix with only the current location of the camera
- transMat = Mathutils.TranslationMatrix(camMat.translationPart());
-
- # Multiply the rotation and translation matrixes to make 1 matrix with all data
- newMat = rotMat * transMat
-
- # Now we make this matrix the camera matrix and voila done!
- cam.setMatrix(newMat)
-
-#Make sure blender and the objects are in the right state and start doing stuff
-def SceneCheck():
-
- # Show a neat waitcursor whilst the script runs
- Window.WaitCursor(1)
-
- # If we are in edit mode, go out of edit mode and store the status in a var
- emode = int(Window.EditMode())
- if emode: Window.EditMode(0)
-
- # Get the scene, the camera and the currently active object
- scn = Scene.GetCurrent()
- cam = scn.getCurrentCamera()
- ob = scn.getActiveObject()
-
- # Lets do some checks to make sure we have everything
- # And if we don't then call a return which stops the entire script
- if not cam:
- Draw.PupMenu('Error, no active camera, aborting.')
- return
-
- if not ob:
- Draw.PupMenu('Error, no active object, aborting.')
- return
-
- if cam == ob:
- Draw.PupMenu('Error, select an object other than the camera, aborting.')
- return
-
- # Start the main function of the script if we didn't encounter any errors
- RotCamToOb(cam, ob)
-
- # Update the scene
- scn.update()
-
- # Redraw the 3d view so we can instantly see what was changed
- Window.Redraw(Window.Types.VIEW3D)
-
- # If we were in edit mode when the script started, go back into edit mode
- if emode: Window.EditMode(1)
-
- # Remove the waitcursor
- Window.WaitCursor(0)
-
-# Start the script
-SceneCheck()
-
-'''
-
-new_text = bpy.data.texts.new('camobject_template.py')
-new_text.write(script_data)
-bpy.data.texts.active = new_text
-Window.RedrawAll()