diff options
Diffstat (limited to 'space_view3d_align_tools.py')
-rw-r--r-- | space_view3d_align_tools.py | 338 |
1 files changed, 0 insertions, 338 deletions
diff --git a/space_view3d_align_tools.py b/space_view3d_align_tools.py deleted file mode 100644 index 4ed56b35..00000000 --- a/space_view3d_align_tools.py +++ /dev/null @@ -1,338 +0,0 @@ -# AlingTools.py (c) 2009, 2010 Gabriel Beaudin (gabhead) -# -# ***** BEGIN GPL LICENSE BLOCK ***** -# -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software Foundation, -# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# ***** END GPL LICENCE BLOCK ***** - -bl_addon_info = { - "name": "Align Tools", - "author": "Gabriel Beaudin (gabhead)", - "version": (0,1), - "blender": (2, 5, 3), - "api": 31854, - "location": "Tool Shelf", - "description": "Align selected objects to the active object", - "warning": "", - "wiki_url": "http://wiki.blender.org/index.php/Extensions:2.5/Py/"\ - "Scripts/3D interaction/Align_Tools", - "tracker_url": "https://projects.blender.org/tracker/index.php?"\ - "func=detail&aid==22389&group_id=153&atid=468", - "category": "3D View"} - -"""Align Selected Objects""" - -import bpy - - -class AlignUi(bpy.types.Panel): - bl_space_type = 'VIEW_3D' - bl_region_type = 'TOOLS' - - bl_label = "Align Tools" - bl_context = "objectmode" - - def draw(self, context): - layout = self.layout - obj = context.object - - if obj != None: - row = layout.row() - row.label(text="Active object is: ", icon='OBJECT_DATA') - row = layout.row() - row.label(obj.name, icon='EDITMODE_HLT') - - box = layout.separator() - - col = layout.column() - col.label(text="Align Loc + Rot:", icon='MANIPUL') - - - col = layout.column(align=False) - col.operator("object.AlignObjects",text="XYZ") - - col = layout.column() - col.label(text="Align Location:", icon='MAN_TRANS') - - col = layout.column_flow(columns=5,align=True) - col.operator("object.AlignObjectsLocationX",text="X") - col.operator("object.AlignObjectsLocationY",text="Y") - col.operator("object.AlignObjectsLocationZ",text="Z") - col.operator("object.AlignObjectsLocationAll",text="All") - - col = layout.column() - col.label(text="Align Rotation:", icon='MAN_ROT') - - col = layout.column_flow(columns=5,align=True) - col.operator("object.AlignObjectsRotationX",text="X") - col.operator("object.AlignObjectsRotationY",text="Y") - col.operator("object.AlignObjectsRotationZ",text="Z") - col.operator("object.AlignObjectsRotationAll",text="All") - - col = layout.column() - col.label(text="Align Scale:", icon='MAN_SCALE') - - col = layout.column_flow(columns=5,align=True) - col.operator("object.AlignObjectsScaleX",text="X") - col.operator("object.AlignObjectsScaleY",text="Y") - col.operator("object.AlignObjectsScaleZ",text="Z") - col.operator("object.AlignObjectsScaleAll",text="All") - - -##Align all -def main(context): - for i in bpy.context.selected_objects: - i.location = bpy.context.active_object.location - i.rotation_euler = bpy.context.active_object.rotation_euler - -## Align Location - -def LocAll(context): - for i in bpy.context.selected_objects: - i.location = bpy.context.active_object.location - -def LocX(context): - for i in bpy.context.selected_objects: - i.location.x = bpy.context.active_object.location.x - -def LocY(context): - for i in bpy.context.selected_objects: - i.location.y = bpy.context.active_object.location.y - -def LocZ(context): - for i in bpy.context.selected_objects: - i.location.z = bpy.context.active_object.location.z - -## Aling Rotation -def RotAll(context): - for i in bpy.context.selected_objects: - i.rotation_euler = bpy.context.active_object.rotation_euler - -def RotX(context): - for i in bpy.context.selected_objects: - i.rotation_euler.x = bpy.context.active_object.rotation_euler.x - -def RotY(context): - for i in bpy.context.selected_objects: - i.rotation_euler.y = bpy.context.active_object.rotation_euler.y - -def RotZ(context): - for i in bpy.context.selected_objects: - i.rotation_euler.z = bpy.context.active_object.rotation_euler.z -## Aling Scale -def ScaleAll(context): - for i in bpy.context.selected_objects: - i.scale = bpy.context.active_object.scale - -def ScaleX(context): - for i in bpy.context.selected_objects: - i.scale.x = bpy.context.active_object.scale.x - -def ScaleY(context): - for i in bpy.context.selected_objects: - i.scale.y = bpy.context.active_object.scale.y - -def ScaleZ(context): - for i in bpy.context.selected_objects: - i.scale.z = bpy.context.active_object.scale.z - -## Classes - -## Align All Rotation And Location -class AlignOperator(bpy.types.Operator): - '''''' - bl_idname = "object.AlignObjects" - bl_label = "Align Selected To Active" - - @classmethod - def poll(cls, context): - return context.active_object != None - - def execute(self, context): - main(context) - return {'FINISHED'} - -#######################Align Location######################## -## Align LocationAll -class AlignLocationOperator(bpy.types.Operator): - '''''' - bl_idname = "object.AlignObjectsLocationAll" - bl_label = "Align Selected Location To Active" - - @classmethod - def poll(cls, context): - return context.active_object != None - - def execute(self, context): - LocAll(context) - return {'FINISHED'} -## Align LocationX -class AlignLocationXOperator(bpy.types.Operator): - '''''' - bl_idname = "object.AlignObjectsLocationX" - bl_label = "Align Selected Location X To Active" - - @classmethod - def poll(cls, context): - return context.active_object != None - - def execute(self, context): - LocX(context) - return {'FINISHED'} -## Align LocationY -class AlignLocationYOperator(bpy.types.Operator): - '''''' - bl_idname = "object.AlignObjectsLocationY" - bl_label = "Align Selected Location Y To Active" - - @classmethod - def poll(cls, context): - return context.active_object != None - - def execute(self, context): - LocY(context) - return {'FINISHED'} -## Align LocationZ -class AlignLocationZOperator(bpy.types.Operator): - '''''' - bl_idname = "object.AlignObjectsLocationZ" - bl_label = "Align Selected Location Z To Active" - - @classmethod - def poll(cls, context): - return context.active_object != None - - def execute(self, context): - LocZ(context) - return {'FINISHED'} - -#######################Align Rotation######################## -## Align RotationAll -class AlignRotationOperator(bpy.types.Operator): - '''''' - bl_idname = "object.AlignObjectsRotationAll" - bl_label = "Align Selected Rotation To Active" - - @classmethod - def poll(cls, context): - return context.active_object != None - - def execute(self, context): - RotAll(context) - return {'FINISHED'} -## Align RotationX -class AlignRotationXOperator(bpy.types.Operator): - '''''' - bl_idname = "object.AlignObjectsRotationX" - bl_label = "Align Selected Rotation X To Active" - - @classmethod - def poll(cls, context): - return context.active_object != None - - def execute(self, context): - RotX(context) - return {'FINISHED'} -## Align RotationY -class AlignRotationYOperator(bpy.types.Operator): - '''''' - bl_idname = "object.AlignObjectsRotationY" - bl_label = "Align Selected Rotation Y To Active" - - @classmethod - def poll(cls, context): - return context.active_object != None - - def execute(self, context): - RotY(context) - return {'FINISHED'} -## Align RotationZ -class AlignRotationZOperator(bpy.types.Operator): - '''''' - bl_idname = "object.AlignObjectsRotationZ" - bl_label = "Align Selected Rotation Z To Active" - - @classmethod - def poll(cls, context): - return context.active_object != None - - def execute(self, context): - RotZ(context) - return {'FINISHED'} -#######################Align Scale######################## -## Scale All -class AlignScaleOperator(bpy.types.Operator): - '''''' - bl_idname = "object.AlignObjectsScaleAll" - bl_label = "Align Selected Scale To Active" - - @classmethod - def poll(cls, context): - return context.active_object != None - - def execute(self, context): - ScaleAll(context) - return {'FINISHED'} -## Align ScaleX -class AlignScaleXOperator(bpy.types.Operator): - '''''' - bl_idname = "object.AlignObjectsScaleX" - bl_label = "Align Selected Scale X To Active" - - @classmethod - def poll(cls, context): - return context.active_object != None - - def execute(self, context): - ScaleX(context) - return {'FINISHED'} -## Align ScaleY -class AlignScaleYOperator(bpy.types.Operator): - '''''' - bl_idname = "object.AlignObjectsScaleY" - bl_label = "Align Selected Scale Y To Active" - - @classmethod - def poll(cls, context): - return context.active_object != None - - def execute(self, context): - ScaleY(context) - return {'FINISHED'} -## Align ScaleZ -class AlignScaleZOperator(bpy.types.Operator): - '''''' - bl_idname = "object.AlignObjectsScaleZ" - bl_label = "Align Selected Scale Z To Active" - - @classmethod - def poll(cls, context): - return context.active_object != None - - def execute(self, context): - ScaleZ(context) - return {'FINISHED'} - -## registring -def register(): - pass - -def unregister(): - pass - -if __name__ == "__main__": - register() |