[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [38489] branches/soc-2011-tomato/source/ blender: Camera tracking integration

Sergey Sharybin g.ulairi at gmail.com
Mon Jul 18 21:06:18 CEST 2011


Revision: 38489
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=38489
Author:   nazgul
Date:     2011-07-18 19:06:18 +0000 (Mon, 18 Jul 2011)
Log Message:
-----------
Camera tracking integration
===========================

- Enable disabled markers when sliding from preview.
- Refresh space clip when marker is moving from preview.

Modified Paths:
--------------
    branches/soc-2011-tomato/source/blender/blenkernel/intern/movieclip.c
    branches/soc-2011-tomato/source/blender/editors/interface/interface_handlers.c
    branches/soc-2011-tomato/source/blender/makesdna/DNA_movieclip_types.h

Modified: branches/soc-2011-tomato/source/blender/blenkernel/intern/movieclip.c
===================================================================
--- branches/soc-2011-tomato/source/blender/blenkernel/intern/movieclip.c	2011-07-18 18:57:00 UTC (rev 38488)
+++ branches/soc-2011-tomato/source/blender/blenkernel/intern/movieclip.c	2011-07-18 19:06:18 UTC (rev 38489)
@@ -481,14 +481,15 @@
 						scopes->track_preview= tmpibuf;
 					else
 						IMB_freeImBuf(tmpibuf);
-
-					scopes->marker_pos= marker->pos;
-					scopes->slide_scale[0]= track->pat_max[0]-track->pat_min[0];
-					scopes->slide_scale[1]= track->pat_max[1]-track->pat_min[1];
 				}
 
 				IMB_freeImBuf(ibuf);
 			}
+
+			scopes->marker_pos= marker->pos;
+			scopes->slide_scale[0]= track->pat_max[0]-track->pat_min[0];
+			scopes->slide_scale[1]= track->pat_max[1]-track->pat_min[1];
+			scopes->marker_flag= &marker->flag;
 		}
 	}
 

Modified: branches/soc-2011-tomato/source/blender/editors/interface/interface_handlers.c
===================================================================
--- branches/soc-2011-tomato/source/blender/editors/interface/interface_handlers.c	2011-07-18 18:57:00 UTC (rev 38488)
+++ branches/soc-2011-tomato/source/blender/editors/interface/interface_handlers.c	2011-07-18 19:06:18 UTC (rev 38489)
@@ -4057,7 +4057,7 @@
 	return WM_UI_HANDLER_CONTINUE;
 }
 
-static int ui_numedit_but_TRACKPREVIEW(uiBut *but, uiHandleButtonData *data, int mx, int my)
+static int ui_numedit_but_TRACKPREVIEW(bContext *C, uiBut *but, uiHandleButtonData *data, int mx, int my)
 {
 	MovieClipScopes *scopes = (MovieClipScopes *)but->poin;
 	/* rcti rect; */
@@ -4072,8 +4072,11 @@
 		scopes->track_preview_height = (but->y2 - but->y1) + (data->dragstarty - my);
 	} else {
 		if(scopes->marker_pos) {
+			(*scopes->marker_flag)&= ~MARKER_DISABLED;
 			scopes->marker_pos[0]+= -dx*scopes->slide_scale[0] / (but->block->maxx-but->block->minx);
 			scopes->marker_pos[1]+= -dy*scopes->slide_scale[1] / (but->block->maxy-but->block->miny);
+
+			WM_event_add_notifier(C, NC_MOVIECLIP|NA_EDITED, NULL);
 		}
 
 		scopes->ok= 0;
@@ -4102,7 +4105,7 @@
 			button_activate_state(C, but, BUTTON_STATE_NUM_EDITING);
 
 			/* also do drag the first time */
-			if(ui_numedit_but_TRACKPREVIEW(but, data, mx, my))
+			if(ui_numedit_but_TRACKPREVIEW(C, but, data, mx, my))
 				ui_numedit_apply(C, block, but, data);
 
 			return WM_UI_HANDLER_BREAK;
@@ -4116,7 +4119,7 @@
 		}
 		else if(event->type == MOUSEMOVE) {
 			if(mx!=data->draglastx || my!=data->draglasty) {
-				if(ui_numedit_but_TRACKPREVIEW(but, data, mx, my))
+				if(ui_numedit_but_TRACKPREVIEW(C, but, data, mx, my))
 					ui_numedit_apply(C, block, but, data);
 			}
 		}

Modified: branches/soc-2011-tomato/source/blender/makesdna/DNA_movieclip_types.h
===================================================================
--- branches/soc-2011-tomato/source/blender/makesdna/DNA_movieclip_types.h	2011-07-18 18:57:00 UTC (rev 38488)
+++ branches/soc-2011-tomato/source/blender/makesdna/DNA_movieclip_types.h	2011-07-18 19:06:18 UTC (rev 38489)
@@ -78,6 +78,7 @@
 	short track_disabled;			/* active track is disabled, special notifier should be drawn */
 	char pad[6];
 	float *marker_pos;				/* original marker position. used for sliding from preview */
+	int *marker_flag;				/* original marker flags. used for sliding from preview */
 	float slide_scale[2];			/* scale used for sliding from previewe area */
 } MovieClipScopes;
 




More information about the Bf-blender-cvs mailing list