Changeset View
Changeset View
Standalone View
Standalone View
source/blender/editors/space_image/image_ops.c
| Context not available. | |||||
| // zoom = vpd->sima->zoom * zfac; | // zoom = vpd->sima->zoom * zfac; | ||||
| factor = (vpd->sima->zoom * zfac) / vpd->zoom; | factor = (vpd->sima->zoom * zfac) / vpd->zoom; | ||||
| } | } | ||||
| else { | else if (viewzoom == USER_ZOOM_SCALE) { | ||||
| /* for now do the same things for scale and dolly */ | |||||
| float delta = x - vpd->origx + y - vpd->origy; | float delta = x - vpd->origx + y - vpd->origy; | ||||
| if (zoom_invert) { | if (zoom_invert) { | ||||
| Context not available. | |||||
| factor = 1.0f + delta / 300.0f; | factor = 1.0f + delta / 300.0f; | ||||
| } | } | ||||
| else { /* USER_ZOOM_DOLLY */ | |||||
| float len_new = 5; | |||||
| float len_old = 5; | |||||
| rcti *winrct = &vpd->ar->winrct; | |||||
| if (U.uiflag & USER_ZOOM_HORIZ) { | |||||
| len_new += (winrct->xmax - x); | |||||
| len_old += (winrct->xmax - vpd->origx); | |||||
| } | |||||
| else { | |||||
| len_new += (winrct->ymax - y); | |||||
| len_old += (winrct->ymax - vpd->origy); | |||||
| } | |||||
| if (zoom_invert) { | |||||
| SWAP(float, len_new, len_old); | |||||
| } | |||||
| factor = 2.0f * ((len_old / max_ff(len_new, 1.0f)) - 1.0f) + 1.0f; | |||||
| } | |||||
| RNA_float_set(op->ptr, "factor", factor); | RNA_float_set(op->ptr, "factor", factor); | ||||
| sima_zoom_set(vpd->sima, vpd->ar, vpd->zoom * factor, vpd->location); | sima_zoom_set(vpd->sima, vpd->ar, vpd->zoom * factor, vpd->location); | ||||
| Context not available. | |||||