Revision: 48276
          
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=48276
Author:   nazgul
Date:     2012-06-25 16:36:22 +0000 (Mon, 25 Jun 2012)
Log Message:
-----------
Ignore disabled markers when building keying screen.

Modified Paths:
--------------
    
trunk/blender/source/blender/compositor/operations/COM_KeyingScreenOperation.cpp

Modified: 
trunk/blender/source/blender/compositor/operations/COM_KeyingScreenOperation.cpp
===================================================================
--- 
trunk/blender/source/blender/compositor/operations/COM_KeyingScreenOperation.cpp
    2012-06-25 16:36:12 UTC (rev 48275)
+++ 
trunk/blender/source/blender/compositor/operations/COM_KeyingScreenOperation.cpp
    2012-06-25 16:36:22 UTC (rev 48276)
@@ -101,8 +101,15 @@
        else
                tracksbase = BKE_tracking_get_active_tracks(tracking);
 
-       sites_total = BLI_countlist(tracksbase);
+       /* count sites */
+       for (track = (MovieTrackingTrack *) tracksbase->first, sites_total = 0; 
track; track = track->next) {
+               MovieTrackingMarker *marker = BKE_tracking_marker_get(track, 
clip_frame);
 
+               if ((marker->flag & MARKER_DISABLED) == 0) {
+                       sites_total++;
+               }
+       }
+
        if (!sites_total)
                return NULL;
 
@@ -117,11 +124,17 @@
        sites = (VoronoiSite *) MEM_callocN(sizeof(VoronoiSite) * sites_total, 
"keyingscreen voronoi sites");
        track = (MovieTrackingTrack *) tracksbase->first;
        for (track = (MovieTrackingTrack *) tracksbase->first, i = 0; track; 
track = track->next, i++) {
-               VoronoiSite *site = &sites[i];
                MovieTrackingMarker *marker = BKE_tracking_marker_get(track, 
clip_frame);
-               ImBuf *pattern_ibuf = BKE_tracking_get_pattern_imbuf(ibuf, 
track, marker, TRUE, FALSE);
+               VoronoiSite *site;
+               ImBuf *pattern_ibuf;
                int j;
 
+               if (marker->flag & MARKER_DISABLED)
+                       continue;
+
+               site = &sites[i];
+               pattern_ibuf = BKE_tracking_get_pattern_imbuf(ibuf, track, 
marker, TRUE, FALSE);
+
                zero_v3(site->color);
                for (j = 0; j < pattern_ibuf->x * pattern_ibuf->y; j++) {
                        if (pattern_ibuf->rect_float) {

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

Reply via email to