diff options
author | Sergey Sharybin <sergey.vfx@gmail.com> | 2012-08-04 14:47:31 +0400 |
---|---|---|
committer | Sergey Sharybin <sergey.vfx@gmail.com> | 2012-08-04 14:47:31 +0400 |
commit | 4f410971c3e144d4404dd035f70b97271333b232 (patch) | |
tree | 5f11d7205041a1bcf08c277eb0abde5248fb8057 /release/scripts/startup/bl_operators/clip.py | |
parent | 96bda09d230f20f9402c5b1b54e2d27eec550b12 (diff) |
Camera tracking presets
- Fix for copy default settings from active track operator
- Add meaningful tracking presets
API changes:
- Added parameter exact to Marker.find_frame, so now it's
possible to get estimated marker
- Added Marker.pattern_bound_box to get pattern's bound box
Diffstat (limited to 'release/scripts/startup/bl_operators/clip.py')
-rw-r--r-- | release/scripts/startup/bl_operators/clip.py | 18 |
1 files changed, 14 insertions, 4 deletions
diff --git a/release/scripts/startup/bl_operators/clip.py b/release/scripts/startup/bl_operators/clip.py index a30502b454e..c45d2f2e702 100644 --- a/release/scripts/startup/bl_operators/clip.py +++ b/release/scripts/startup/bl_operators/clip.py @@ -90,14 +90,17 @@ def CLIP_track_view_selected(sc, track): return False -def CLIP_default_settings_from_track(clip, track): +def CLIP_default_settings_from_track(clip, track, framenr): settings = clip.tracking.settings width = clip.size[0] height = clip.size[1] - pattern = track.pattern_max - track.pattern_min - search = track.search_max - track.search_min + marker = track.markers.find_frame(framenr, False) + pattern_bb = marker.pattern_bound_box + + pattern = Vector(pattern_bb[1]) - Vector(pattern_bb[0]) + search = marker.search_max - marker.search_min pattern[0] = pattern[0] * width pattern[1] = pattern[1] * height @@ -111,6 +114,10 @@ def CLIP_default_settings_from_track(clip, track): settings.default_frames_limit = track.frames_limit settings.default_pattern_match = track.pattern_match settings.default_margin = track.margin + settings.default_motion_model = track.motion_model + settings.use_default_brute = track.use_brute + settings.use_default_normalization = track.use_normalization + settings.use_default_mask = track.use_mask settings.use_default_red_channel = track.use_red_channel settings.use_default_green_channel = track.use_green_channel settings.use_default_blue_channel = track.use_blue_channel @@ -862,6 +869,9 @@ class CLIP_OT_track_settings_as_default(Operator): sc = context.space_data clip = sc.clip - CLIP_default_settings_from_track(clip, clip.tracking.tracks.active) + track = clip.tracking.tracks.active + framenr = context.scene.frame_current - clip.frame_start + 1 + + CLIP_default_settings_from_track(clip, track, framenr) return {'FINISHED'} |