Commit: 57b62881f45993e4431ef8a7a2d3dec041e8cf36
Author: Sergey Sharybin
Date:   Wed Feb 19 18:42:32 2014 +0600
https://developer.blender.org/rB57b62881f45993e4431ef8a7a2d3dec041e8cf36

Added track weight to presets

Useful for cases when you need to create bunch of witness tracks.

===================================================================

M       release/scripts/presets/tracking_settings/blurry_footage.py
M       release/scripts/presets/tracking_settings/default.py
M       release/scripts/presets/tracking_settings/fast_motion.py
M       release/scripts/presets/tracking_settings/planar.py
M       release/scripts/startup/bl_operators/presets.py
M       release/scripts/startup/bl_ui/space_clip.py
M       source/blender/blenkernel/intern/tracking.c
M       source/blender/blenloader/intern/versioning_260.c
M       source/blender/makesdna/DNA_tracking_types.h
M       source/blender/makesrna/intern/rna_tracking.c

===================================================================

diff --git a/release/scripts/presets/tracking_settings/blurry_footage.py 
b/release/scripts/presets/tracking_settings/blurry_footage.py
index de6f085..253a8f3 100644
--- a/release/scripts/presets/tracking_settings/blurry_footage.py
+++ b/release/scripts/presets/tracking_settings/blurry_footage.py
@@ -15,3 +15,4 @@ settings.use_default_red_channel = True
 settings.use_default_green_channel = True
 settings.use_default_blue_channel = True
 settings.default_correlation_min = 0.6
+settings.default_weight = 1.0
diff --git a/release/scripts/presets/tracking_settings/default.py 
b/release/scripts/presets/tracking_settings/default.py
index 3c61ea7..c25b114 100644
--- a/release/scripts/presets/tracking_settings/default.py
+++ b/release/scripts/presets/tracking_settings/default.py
@@ -15,3 +15,4 @@ settings.use_default_red_channel = True
 settings.use_default_green_channel = True
 settings.use_default_blue_channel = True
 settings.default_correlation_min = 0.75
+settings.default_weight = 1.0
diff --git a/release/scripts/presets/tracking_settings/fast_motion.py 
b/release/scripts/presets/tracking_settings/fast_motion.py
index 6051f23..4294b73 100644
--- a/release/scripts/presets/tracking_settings/fast_motion.py
+++ b/release/scripts/presets/tracking_settings/fast_motion.py
@@ -15,3 +15,4 @@ settings.use_default_red_channel = True
 settings.use_default_green_channel = True
 settings.use_default_blue_channel = True
 settings.default_correlation_min = 0.6
+settings.default_weight = 1.0
diff --git a/release/scripts/presets/tracking_settings/planar.py 
b/release/scripts/presets/tracking_settings/planar.py
index 49a6404..a099b3a 100644
--- a/release/scripts/presets/tracking_settings/planar.py
+++ b/release/scripts/presets/tracking_settings/planar.py
@@ -15,3 +15,4 @@ settings.use_default_red_channel = True
 settings.use_default_green_channel = True
 settings.use_default_blue_channel = True
 settings.default_correlation_min = 0.75
+settings.default_weight = 1.0
diff --git a/release/scripts/startup/bl_operators/presets.py 
b/release/scripts/startup/bl_operators/presets.py
index f1da0ff..8b0ed7d 100644
--- a/release/scripts/startup/bl_operators/presets.py
+++ b/release/scripts/startup/bl_operators/presets.py
@@ -476,6 +476,7 @@ class AddPresetTrackingSettings(AddPresetBase, Operator):
         "settings.use_default_red_channel",
         "settings.use_default_green_channel",
         "settings.use_default_blue_channel"
+        "settings.default_weight"
     ]
 
     preset_subdir = "tracking_settings"
diff --git a/release/scripts/startup/bl_ui/space_clip.py 
b/release/scripts/startup/bl_ui/space_clip.py
index 55113e4..00c2f7a 100644
--- a/release/scripts/startup/bl_ui/space_clip.py
+++ b/release/scripts/startup/bl_ui/space_clip.py
@@ -335,6 +335,9 @@ class CLIP_PT_tracking_settings(CLIP_PT_tracking_panel, 
Panel):
             sub.prop(settings, "default_frames_limit")
             sub.prop(settings, "default_margin")
 
+            col = box.column()
+            col.prop(settings, "default_weight")
+
 
 class CLIP_PT_tools_tracking(CLIP_PT_tracking_panel, Panel):
     bl_space_type = 'CLIP_EDITOR'
diff --git a/source/blender/blenkernel/intern/tracking.c 
b/source/blender/blenkernel/intern/tracking.c
index de20f4a..e72b369 100644
--- a/source/blender/blenkernel/intern/tracking.c
+++ b/source/blender/blenkernel/intern/tracking.c
@@ -200,6 +200,7 @@ void BKE_tracking_settings_init(MovieTracking *tracking)
        tracking->settings.default_pattern_size = 15;
        tracking->settings.default_search_size = 61;
        tracking->settings.default_algorithm_flag |= 
TRACK_ALGORITHM_FLAG_USE_BRUTE;
+       tracking->settings.default_weight = 1.0f;
        tracking->settings.dist = 1;
        tracking->settings.object_distance = 1;
 
@@ -418,7 +419,7 @@ MovieTrackingTrack *BKE_tracking_track_add(MovieTracking 
*tracking, ListBase *tr
        track->frames_limit = settings->default_frames_limit;
        track->flag = settings->default_flag;
        track->algorithm_flag = settings->default_algorithm_flag;
-       track->weight = 1.0f;
+       track->weight = settings->default_weight;
 
        memset(&marker, 0, sizeof(marker));
        marker.pos[0] = x;
diff --git a/source/blender/blenloader/intern/versioning_260.c 
b/source/blender/blenloader/intern/versioning_260.c
index af6355d..2880fec 100644
--- a/source/blender/blenloader/intern/versioning_260.c
+++ b/source/blender/blenloader/intern/versioning_260.c
@@ -2719,4 +2719,11 @@ void blo_do_versions_260(FileData *fd, Library 
*UNUSED(lib), Main *main)
                        }
                }
        }
+
+       if (!DNA_struct_elem_find(fd->filesdna, "MovieTrackingSettings", 
"float", "default_weight")) {
+               MovieClip *clip;
+               for (clip = main->movieclip.first; clip; clip = clip->id.next) {
+                       clip->tracking.settings.default_weight = 1.0f;
+               }
+       }
 }
diff --git a/source/blender/makesdna/DNA_tracking_types.h 
b/source/blender/makesdna/DNA_tracking_types.h
index 78faf5d..a5079cb 100644
--- a/source/blender/makesdna/DNA_tracking_types.h
+++ b/source/blender/makesdna/DNA_tracking_types.h
@@ -210,6 +210,7 @@ typedef struct MovieTrackingSettings {
        short default_margin;               /* margin from frame boundaries */
        short default_pattern_match;        /* re-adjust every N frames */
        short default_flag;                 /* default flags like color 
channels used by default */
+       float default_weight;               /* default weight of the track */
 
        short motion_flag;      /* flags describes motion type */
 
@@ -222,7 +223,7 @@ typedef struct MovieTrackingSettings {
                                             * were moved to per-tracking 
object settings
                                             */
 
-       int reconstruction_flag, pad;
+       int reconstruction_flag;
 
        /* which camera intrinsics to refine. uses on the REFINE_* flags */
        short refine_camera_intrinsics, pad2;
diff --git a/source/blender/makesrna/intern/rna_tracking.c 
b/source/blender/makesrna/intern/rna_tracking.c
index 8cb8264..289556b 100644
--- a/source/blender/makesrna/intern/rna_tracking.c
+++ b/source/blender/makesrna/intern/rna_tracking.c
@@ -930,6 +930,10 @@ static void rna_def_trackingSettings(BlenderRNA *brna)
        RNA_def_property_ui_text(prop, "Use Blue Channel", "Use blue channel 
from footage for tracking");
        RNA_def_property_update(prop, NC_MOVIECLIP | ND_DISPLAY, NULL);
 
+       prop = RNA_def_property(srna, "default_weight", PROP_FLOAT, 
PROP_FACTOR);
+       RNA_def_property_range(prop, 0.0f, 1.0f);
+       RNA_def_property_ui_text(prop, "Weight", "Influence of newly created 
track on a final solution");
+
        /* ** object tracking ** */
 
        /* object distance */

_______________________________________________
Bf-blender-cvs mailing list
[email protected]
http://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to