diff options
-rw-r--r-- | release/scripts/startup/bl_ui/space_clip.py | 7 | ||||
-rw-r--r-- | source/blender/makesrna/intern/rna_tracking.c | 61 |
2 files changed, 30 insertions, 38 deletions
diff --git a/release/scripts/startup/bl_ui/space_clip.py b/release/scripts/startup/bl_ui/space_clip.py index 4b24f36eace..67d3db7d871 100644 --- a/release/scripts/startup/bl_ui/space_clip.py +++ b/release/scripts/startup/bl_ui/space_clip.py @@ -545,9 +545,12 @@ class CLIP_PT_tools_solve(CLIP_PT_tracking_panel, Panel): col.prop(tracking_object, "keyframe_a") col.prop(tracking_object, "keyframe_b") - col = layout.column() + col = layout.column(heading="Refine", align=True) col.active = tracking_object.is_camera - col.prop(settings, "refine_intrinsics", text="Refine") + col.prop(settings, "refine_intrinsics_focal_length", text="Focal Length") + col.prop(settings, "refine_intrinsics_principal_point", text="Principal Point") + col.prop(settings, "refine_intrinsics_k1", text="K1") + col.prop(settings, "refine_intrinsics_k2", text="K2") col = layout.column(align=True) col.scale_y = 2.0 diff --git a/source/blender/makesrna/intern/rna_tracking.c b/source/blender/makesrna/intern/rna_tracking.c index 6d90a76a2c0..17a7ab63077 100644 --- a/source/blender/makesrna/intern/rna_tracking.c +++ b/source/blender/makesrna/intern/rna_tracking.c @@ -889,38 +889,6 @@ static void rna_def_trackingSettings(BlenderRNA *brna) {0, NULL, 0, NULL, NULL}, }; - static const EnumPropertyItem refine_items[] = { - {0, "NONE", 0, "Nothing", "Do not refine camera intrinsics"}, - {REFINE_FOCAL_LENGTH, "FOCAL_LENGTH", 0, "Focal Length", "Refine focal length"}, - {REFINE_FOCAL_LENGTH | REFINE_RADIAL_DISTORTION_K1, - "FOCAL_LENGTH_RADIAL_K1", - 0, - "Focal length, K1", - "Refine focal length and radial distortion K1"}, - {REFINE_FOCAL_LENGTH | REFINE_RADIAL_DISTORTION_K1 | REFINE_RADIAL_DISTORTION_K2, - "FOCAL_LENGTH_RADIAL_K1_K2", - 0, - "Focal length, K1, K2", - "Refine focal length and radial distortion K1 and K2"}, - {REFINE_FOCAL_LENGTH | REFINE_PRINCIPAL_POINT | REFINE_RADIAL_DISTORTION_K1 | - REFINE_RADIAL_DISTORTION_K2, - "FOCAL_LENGTH_PRINCIPAL_POINT_RADIAL_K1_K2", - 0, - "Focal Length, Optical Center, K1, K2", - "Refine focal length, optical center and radial distortion K1 and K2"}, - {REFINE_FOCAL_LENGTH | REFINE_PRINCIPAL_POINT, - "FOCAL_LENGTH_PRINCIPAL_POINT", - 0, - "Focal Length, Optical Center", - "Refine focal length and optical center"}, - {REFINE_RADIAL_DISTORTION_K1 | REFINE_RADIAL_DISTORTION_K2, - "RADIAL_K1_K2", - 0, - "K1, K2", - "Refine radial distortion K1 and K2"}, - {0, NULL, 0, NULL, NULL}, - }; - srna = RNA_def_struct(brna, "MovieTrackingSettings", NULL); RNA_def_struct_ui_text(srna, "Movie tracking settings", "Match moving settings"); @@ -943,11 +911,32 @@ static void rna_def_trackingSettings(BlenderRNA *brna) "Automatically select keyframes when solving camera/object motion"); /* intrinsics refinement during bundle adjustment */ - prop = RNA_def_property(srna, "refine_intrinsics", PROP_ENUM, PROP_NONE); - RNA_def_property_enum_sdna(prop, NULL, "refine_camera_intrinsics"); + + prop = RNA_def_property(srna, "refine_intrinsics_focal_length", PROP_BOOLEAN, PROP_NONE); + RNA_def_property_boolean_sdna(prop, NULL, "refine_camera_intrinsics", REFINE_FOCAL_LENGTH); RNA_def_property_clear_flag(prop, PROP_ANIMATABLE); - RNA_def_property_enum_items(prop, refine_items); - RNA_def_property_ui_text(prop, "Refine", "Refine intrinsics during camera solving"); + RNA_def_property_ui_text( + prop, "Refine Focal Length", "Refine focal length during camera solving"); + + prop = RNA_def_property(srna, "refine_intrinsics_principal_point", PROP_BOOLEAN, PROP_NONE); + RNA_def_property_boolean_sdna(prop, NULL, "refine_camera_intrinsics", REFINE_PRINCIPAL_POINT); + RNA_def_property_clear_flag(prop, PROP_ANIMATABLE); + RNA_def_property_ui_text( + prop, "Refine Principal Point", "Refine principal point during camera solving"); + + prop = RNA_def_property(srna, "refine_intrinsics_k1", PROP_BOOLEAN, PROP_NONE); + RNA_def_property_boolean_sdna( + prop, NULL, "refine_camera_intrinsics", REFINE_RADIAL_DISTORTION_K1); + RNA_def_property_clear_flag(prop, PROP_ANIMATABLE); + RNA_def_property_ui_text( + prop, "Refine K1", "Refine K1 coefficient of distortion model during camera solving"); + + prop = RNA_def_property(srna, "refine_intrinsics_k2", PROP_BOOLEAN, PROP_NONE); + RNA_def_property_boolean_sdna( + prop, NULL, "refine_camera_intrinsics", REFINE_RADIAL_DISTORTION_K2); + RNA_def_property_clear_flag(prop, PROP_ANIMATABLE); + RNA_def_property_ui_text( + prop, "Refine K2", "Refine K2 coefficient of distortion model during camera solving"); /* tool settings */ |