diff options
author | Campbell Barton <ideasman42@gmail.com> | 2014-02-22 09:19:02 +0400 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2014-02-22 09:30:48 +0400 |
commit | 739ae1d80956759767e137fe17286dc360788a1b (patch) | |
tree | 64736e18dccebcc24cc4f96b530eeca1f1f3f775 /source/blender/editors/space_clip/clip_ops.c | |
parent | 3a44e975a9c96521b722d631207b87d0210e1202 (diff) |
NDOF: fix for view3d ignoring lens values when panning
image, mce, view2d and view3d now have matching pan speed.
Diffstat (limited to 'source/blender/editors/space_clip/clip_ops.c')
-rw-r--r-- | source/blender/editors/space_clip/clip_ops.c | 19 |
1 files changed, 4 insertions, 15 deletions
diff --git a/source/blender/editors/space_clip/clip_ops.c b/source/blender/editors/space_clip/clip_ops.c index 6767f92d338..7ee94fe92fc 100644 --- a/source/blender/editors/space_clip/clip_ops.c +++ b/source/blender/editors/space_clip/clip_ops.c @@ -1335,24 +1335,13 @@ static int clip_view_ndof_invoke(bContext *C, wmOperator *UNUSED(op), const wmEv ARegion *ar = CTX_wm_region(C); float pan_vec[3]; - wmNDOFMotionData *ndof = (wmNDOFMotionData *) event->customdata; - - float dt = ndof->dt; - - /* tune these until it feels right */ - const float pan_sensitivity = 300.0f; /* screen pixels per second */ - - /* "mouse zoom" factor = 1 + (dx + dy) / 300 - * what about "ndof zoom" factor? should behave like this: - * at rest -> factor = 1 - * move forward -> factor > 1 - * move backward -> factor < 1 - */ + const wmNDOFMotionData *ndof = event->customdata; + const float speed = NDOF_PIXELS_PER_SECOND; WM_event_ndof_pan_get(ndof, pan_vec, true); - mul_v2_fl(pan_vec, (pan_sensitivity * dt) / sc->zoom); - pan_vec[2] *= -dt; + mul_v2_fl(pan_vec, (speed * ndof->dt) / sc->zoom); + pan_vec[2] *= -ndof->dt; sclip_zoom_set_factor(C, 1.0f + pan_vec[2], NULL); sc->xof += pan_vec[0]; |