I have parented the smaller cube to the larger cube, to make child parent link. I want to be able to duplicate both objects, by selecting them as an entity, and not selecting both of them to duplicate them. Is there a way once I have made a child parent object, just by selecting it, I can make multiple duplicates? In the example I have posted, the second image Im trying to make the object a group so I can duplicate it as one object, rather than selecting the small and large cube. I thought that by parenting objects they could be also duplicated as one, but I keep on selecting both objects to duplicate.
Asked
Active
Viewed 739 times
2
-
It has a children options in the select operator. – X Y May 09 '22 at 01:41
-
Im trying to do that, select both cubes and then choose children, but again I need to click on both of them to duplicate them, if I choose one cube, only one will duplicate. – blender breath May 09 '22 at 02:01
-
AFAIK this is not possible. Parenting doesn't mean that they are "one" object. They are still 2 objects. Maybe an add-on can do this. But of course you could write a python snippet which does what you want: select all objects which are parented or child objects. May i ask why you want such a functionality? – Chris May 09 '22 at 05:20
1 Answers
4
Addon: select and select children
bl_info = {
"name": "My Addon",
"author": "X Y",
"version": (0, 1),
"blender": (2, 80, 0),
"location": "View3D",
"description": "select and select children",
"category": "Object",
}
import bpy
class MY_OP(bpy.types.Operator):
bl_idname = "view3d.select_and_grouped"
bl_label = "Operator select and grouped"
def invoke(self, context, event):
bpy.ops.view3d.select('INVOKE_DEFAULT')
bpy.ops.object.select_grouped(extend = True)
return {'FINISHED'}
def register():
bpy.utils.register_class(MY_OP)
def unregister():
bpy.utils.unregister_class(MY_OP)
if name == "main":
register()
1) Save to .py file and install
2) Check keymap is conflict
3) Add keymap in 3D view(Global)
view3d.select_and_grouped
4) Save Perferences
0) If you want to duplicate and Join the object
Add this between line 19 and 20
bpy.ops.object.duplicate_move(OBJECT_OT_duplicate={"linked":False, "mode":'TRANSLATION'}, TRANSFORM_OT_translate={"value":(0, 0, 0), "orient_type":'GLOBAL', "orient_matrix":((0, 0, 0), (0, 0, 0), (0, 0, 0)), "orient_matrix_type":'GLOBAL', "constraint_axis":(False, False, False), "mirror":False, "use_proportional_edit":False, "proportional_edit_falloff":'SMOOTH', "proportional_size":1, "use_proportional_connected":False, "use_proportional_projected":False, "snap":False, "snap_target":'CLOSEST', "snap_point":(0, 0, 0), "snap_align":False, "snap_normal":(0, 0, 0), "gpencil_strokes":False, "cursor_transform":False, "texture_space":False, "remove_on_cancel":False, "release_confirm":False, "use_accurate":False, "use_automerge_and_split":False})
bpy.ops.object.join()
X Y
- 5,234
- 1
- 6
- 20



