Changeset View
Changeset View
Standalone View
Standalone View
source/blender/editors/transform/transform_input.c
| Show First 20 Lines • Show All 403 Lines • ▼ Show 20 Lines | |||||
| void setInputPostFct(MouseInput *mi, void (*post)(struct TransInfo *t, float values[3])) | void setInputPostFct(MouseInput *mi, void (*post)(struct TransInfo *t, float values[3])) | ||||
| { | { | ||||
| mi->post = post; | mi->post = post; | ||||
| } | } | ||||
| void applyMouseInput(TransInfo *t, MouseInput *mi, const int mval[2], float output[3]) | void applyMouseInput(TransInfo *t, MouseInput *mi, const int mval[2], float output[3]) | ||||
| { | { | ||||
| if (t->modifiers & MOD_EDIT_SNAP_SOURCE) { | |||||
| return; | |||||
| } | |||||
| double mval_db[2]; | double mval_db[2]; | ||||
| if (mi->use_virtual_mval) { | if (mi->use_virtual_mval) { | ||||
| /* update accumulator */ | /* update accumulator */ | ||||
| double mval_delta[2]; | double mval_delta[2]; | ||||
| mval_delta[0] = (mval[0] - mi->imval[0]) - mi->virtual_mval.prev[0]; | mval_delta[0] = (mval[0] - mi->imval[0]) - mi->virtual_mval.prev[0]; | ||||
| mval_delta[1] = (mval[1] - mi->imval[1]) - mi->virtual_mval.prev[1]; | mval_delta[1] = (mval[1] - mi->imval[1]) - mi->virtual_mval.prev[1]; | ||||
| ▲ Show 20 Lines • Show All 69 Lines • ▼ Show 20 Lines | void transform_input_update(TransInfo *t, const float fac) | ||||
| if (t->mode == TFM_EDGE_SLIDE) { | if (t->mode == TFM_EDGE_SLIDE) { | ||||
| transform_mode_edge_slide_reproject_input(t); | transform_mode_edge_slide_reproject_input(t); | ||||
| } | } | ||||
| else if (t->mode == TFM_VERT_SLIDE) { | else if (t->mode == TFM_VERT_SLIDE) { | ||||
| transform_mode_vert_slide_reproject_input(t); | transform_mode_vert_slide_reproject_input(t); | ||||
| } | } | ||||
| } | } | ||||
| void transform_input_reset(MouseInput *mi, const int mval[2]) | |||||
| { | |||||
| copy_v2_v2_int(mi->imval, mval); | |||||
| if (ELEM(mi->apply, InputAngle, InputAngleSpring)) { | |||||
| struct InputAngle_Data *data = mi->data; | |||||
| data->mval_prev[0] = mi->imval[0]; | |||||
| data->mval_prev[1] = mi->imval[1]; | |||||
| data->angle = 0.0f; | |||||
| } | |||||
| } | |||||
| /** \} */ | /** \} */ | ||||