def separate():
context = bpy.context
sce = context.scene
obj = context.active_object
def object_duplicate(ob):
ops_ob = bpy.ops.object
ops_ob.select_all(action="DESELECT")
ops_ob.select_pattern(pattern=ob.name)
ops_ob.duplicate()
return context.selected_objects[0]
object_prepare()
obj.select = False
ob = context.selected_objects[0]
obj_copy = object_duplicate(obj)
ob_copy = object_duplicate(ob)
mode = 'INTERSECT'
mesh_selection(obj_copy, 'SELECT')
mesh_selection(ob, 'DESELECT')
sce.objects.active = ob
modifier_boolean(ob, obj_copy, mode)
mode = 'DIFFERENCE'
mesh_selection(ob_copy, 'SELECT')
mesh_selection(obj, 'DESELECT')
sce.objects.active = obj
modifier_boolean(obj, ob_copy, mode)
obj.select = True
### Operator ###
评论列表
文章目录