individual split to scenes
1.4.0 - added: split selection to scenes individually
This commit is contained in:
+24
-6
@@ -92,14 +92,32 @@ class GPEXP_OT_split_to_scene(bpy.types.Operator):
|
||||
mode : bpy.props.StringProperty(default='ALL', options={'SKIP_SAVE'})
|
||||
|
||||
def execute(self, context):
|
||||
err = fn.split_object_to_scene()
|
||||
if err:
|
||||
self.report({'ERROR'}, err)
|
||||
return {"CANCELLED"}
|
||||
if self.mode == 'ALL':
|
||||
print('split selected object in separated scene')
|
||||
err = fn.split_object_to_scene()
|
||||
if err:
|
||||
self.report({'ERROR'}, err)
|
||||
return {"CANCELLED"}
|
||||
|
||||
elif self.mode == 'INDIVIDUAL':
|
||||
print('split selected object individually in separated scenes')
|
||||
errors = []
|
||||
selected_objs = [o for o in context.selected_objects]
|
||||
scn = context.scene
|
||||
for o in reversed(selected_objs):
|
||||
err = fn.split_object_to_scene(objs=[o], scene_name=o.name)
|
||||
if err:
|
||||
errors.append(err)
|
||||
|
||||
## Reset to current scene (function use ops and go to new scene)
|
||||
context.window.scene = scn
|
||||
|
||||
if errors:
|
||||
fn.show_message_box(errors, 'Error Log')
|
||||
return {"CANCELLED"}
|
||||
|
||||
return {"FINISHED"}
|
||||
|
||||
|
||||
|
||||
classes=(
|
||||
GPEXP_OT_add_layer_to_render,
|
||||
GPEXP_OT_add_objects_to_render,
|
||||
|
||||
Reference in New Issue
Block a user