Love the addin. I got this for the Cut / Copy / Paste, but I’m finding many of the features useful.
I’ve recently jumped to Blender from Modo where I was using a script called “SOLO” which would isolate the selection and allow you to model the object at the world origin, then jump back to your full scene. I really missed this feature in Blender, so I put together a blender macro which achieves this. I added the macro as a wrapper around your Copy+, and it lets you do a copy/paste but at the object origin. This makes it easy to copy geometry between animated objects without concern for their current transorm.
My implemention is rough, but if you could add a flag to keKit Copy+ to do the operation at the object local space it could be handy. I use it all the time. The basic idea here is to create a linked duplicate called “TEMP”, single user (no animation), clear transforms, do the COPY+ operation, then delete the “TEMP” object.
bpy.ops.object.mode_set(mode=‘OBJECT’, toggle=False)
bpy.context.scene.tool_settings.use_keyframe_insert_auto = False
bpy.ops.object.duplicate_move_linked(OBJECT_OT_duplicate={“linked”:True, “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”:(True, True, True), “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.make_single_user(object=False, obdata=False, material=False, animation=True)
bpy.ops.object.parent_clear(type=‘CLEAR’)
bpy.ops.object.rotation_clear(clear_delta=False)
bpy.ops.object.location_clear(clear_delta=False)
bpy.ops.object.editmode_toggle()
bpy.context.object.name = “TEMP”
bpy.ops.view3d.ke_copyplus(mode=‘COPY’)
bpy.data.objects.remove(bpy.data.objects[‘TEMP’], do_unlink=True)
bpy.ops.object.mode_set(mode=‘OBJECT’, toggle=False)