[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [58875] branches/soc-2011-tomato/source/ blender/editors/space_clip/tracking_ops.c: Made corner sliding more convenient
Sergey Sharybin
sergey.vfx at gmail.com
Sat Aug 3 21:53:44 CEST 2013
Revision: 58875
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=58875
Author: nazgul
Date: 2013-08-03 19:53:44 +0000 (Sat, 03 Aug 2013)
Log Message:
-----------
Made corner sliding more convenient
Now it's possible to slide corner roughly, then
press Shift to switch to accurate positioning.
Before this change corner used to jump when one
presses shift, which wasn't too much convenient.
Modified Paths:
--------------
branches/soc-2011-tomato/source/blender/editors/space_clip/tracking_ops.c
Modified: branches/soc-2011-tomato/source/blender/editors/space_clip/tracking_ops.c
===================================================================
--- branches/soc-2011-tomato/source/blender/editors/space_clip/tracking_ops.c 2013-08-03 19:53:38 UTC (rev 58874)
+++ branches/soc-2011-tomato/source/blender/editors/space_clip/tracking_ops.c 2013-08-03 19:53:44 UTC (rev 58875)
@@ -4596,8 +4596,9 @@
MovieTrackingPlaneTrack *plane_track;
MovieTrackingPlaneMarker *plane_marker;
int width, height;
- int mval[2];
float *corner;
+ int previous_mval[2];
+ float previous_corner[2];
float old_corner[2];
bool accurate;
} SlidePlaneMarkerData;
@@ -4693,11 +4694,12 @@
customdata->width = width;
customdata->height = height;
- customdata->mval[0] = event->mval[0];
- customdata->mval[1] = event->mval[1];
+ customdata->previous_mval[0] = event->mval[0];
+ customdata->previous_mval[1] = event->mval[1];
customdata->corner = plane_marker->corners[corner];
+ copy_v2_v2(customdata->previous_corner, customdata->corner);
copy_v2_v2(customdata->old_corner, customdata->corner);
}
@@ -4763,8 +4765,8 @@
/* fall-through */
case MOUSEMOVE:
- mdelta[0] = event->mval[0] - data->mval[0];
- mdelta[1] = event->mval[1] - data->mval[1];
+ mdelta[0] = event->mval[0] - data->previous_mval[0];
+ mdelta[1] = event->mval[1] - data->previous_mval[1];
dx = mdelta[0] / data->width / sc->zoom;
dy = mdelta[1] / data->height / sc->zoom;
@@ -4775,9 +4777,13 @@
}
/* TODO(sergey): Add concave check here. */
- data->corner[0] = data->old_corner[0] + dx;
- data->corner[1] = data->old_corner[1] + dy;
+ data->corner[0] = data->previous_corner[0] + dx;
+ data->corner[1] = data->previous_corner[1] + dy;
+ data->previous_mval[0] = event->mval[0];
+ data->previous_mval[1] = event->mval[1];
+ copy_v2_v2(data->previous_corner, data->corner);
+
DAG_id_tag_update(&sc->clip->id, 0);
WM_event_add_notifier(C, NC_MOVIECLIP | NA_EDITED, NULL);
More information about the Bf-blender-cvs
mailing list