diff --git a/interpolate_strokes/operators_velocity.py b/interpolate_strokes/operators_velocity.py index a7ac4ba..af947e8 100644 --- a/interpolate_strokes/operators_velocity.py +++ b/interpolate_strokes/operators_velocity.py @@ -87,6 +87,10 @@ class GP_OT_interpolate_stroke_velocity(GP_OT_interpolate_stroke_base): if state := super().invoke(context, event): return state + if not self.settings.target_object and not self.settings.target_collection: + self.report({"ERROR"}, "No collection of object specified") + return {"CANCELLED"} + scn = bpy.context.scene settings = context.scene.gp_interpo_settings diff --git a/interpolate_strokes/properties.py b/interpolate_strokes/properties.py index 4e59e6e..84edf33 100644 --- a/interpolate_strokes/properties.py +++ b/interpolate_strokes/properties.py @@ -17,11 +17,11 @@ class GP_PG_interpolate_settings(PropertyGroup): method : EnumProperty( name='Method', items= ( - ('GEOMETRY', 'Geometry', 'Directly follow underlying geometry', 0), - ('OBJECT', 'Object Geometry', 'Same as Geometry mode, but target only a specific object, even if occluded (ignore all the others)', 1), - ('BONE', 'Bone', 'Pick an armature bone and follow it', 2), - ('TRI', 'Triangle', 'Interpolate based on triangle traced manually over geometry', 3), - ('VELOCITY', 'Velocity', 'Interpolate based on velocity, works well for point outside geometry', 4) + ('VELOCITY', 'Velocity', 'Interpolate based on velocity, works well for point outside geometry', 0), + ('GEOMETRY', 'Geometry', 'Directly follow underlying geometry', 1), + ('OBJECT', 'Object Geometry', 'Same as Geometry mode, but target only a specific object, even if occluded (ignore all the others)', 2), + ('BONE', 'Bone', 'Pick an armature bone and follow it', 3), + ('TRI', 'Triangle', 'Interpolate based on triangle traced manually over geometry', 4) ), default='GEOMETRY', description='Select method for interpolating strokes'