Commit: 546b900194f0f0464d126e1e18ea4fc7c9b1c1ff Author: Germano Cavalcante Date: Mon Aug 31 10:14:40 2020 -0300 Branches: master https://developer.blender.org/rB546b900194f0f0464d126e1e18ea4fc7c9b1c1ff
Cleanup/Refactor: Split the snap to increments code Now we have a better distinction of what is snap to grid and what is snap to increments. The code also allows the implementation of mixed snap for these modes. =================================================================== M source/blender/editors/transform/transform.h M source/blender/editors/transform/transform_constraints.c M source/blender/editors/transform/transform_mode.c M source/blender/editors/transform/transform_mode_baketime.c M source/blender/editors/transform/transform_mode_bbone_resize.c M source/blender/editors/transform/transform_mode_bend.c M source/blender/editors/transform/transform_mode_boneenvelope.c M source/blender/editors/transform/transform_mode_boneroll.c M source/blender/editors/transform/transform_mode_curveshrinkfatten.c M source/blender/editors/transform/transform_mode_edge_bevelweight.c M source/blender/editors/transform/transform_mode_edge_crease.c M source/blender/editors/transform/transform_mode_edge_rotate_normal.c M source/blender/editors/transform/transform_mode_edge_seq_slide.c M source/blender/editors/transform/transform_mode_edge_slide.c M source/blender/editors/transform/transform_mode_gpopacity.c M source/blender/editors/transform/transform_mode_gpshrinkfatten.c M source/blender/editors/transform/transform_mode_maskshrinkfatten.c M source/blender/editors/transform/transform_mode_push_pull.c M source/blender/editors/transform/transform_mode_resize.c M source/blender/editors/transform/transform_mode_rotate.c M source/blender/editors/transform/transform_mode_shear.c M source/blender/editors/transform/transform_mode_shrink_fatten.c M source/blender/editors/transform/transform_mode_skin_resize.c M source/blender/editors/transform/transform_mode_tilt.c M source/blender/editors/transform/transform_mode_tosphere.c M source/blender/editors/transform/transform_mode_trackball.c M source/blender/editors/transform/transform_mode_translate.c M source/blender/editors/transform/transform_mode_vert_slide.c M source/blender/editors/transform/transform_snap.c M source/blender/editors/transform/transform_snap.h =================================================================== diff --git a/source/blender/editors/transform/transform.h b/source/blender/editors/transform/transform.h index 1917d9463f4..6356144d77a 100644 --- a/source/blender/editors/transform/transform.h +++ b/source/blender/editors/transform/transform.h @@ -79,7 +79,6 @@ typedef struct TransSnap { bool project; bool snap_self; bool peel; - bool snap_spatial_grid; bool use_backface_culling; char status; /* Snapped Element Type (currently for objects only). */ diff --git a/source/blender/editors/transform/transform_constraints.c b/source/blender/editors/transform/transform_constraints.c index 4e5eaf4bf51..8a132f89b1c 100644 --- a/source/blender/editors/transform/transform_constraints.c +++ b/source/blender/editors/transform/transform_constraints.c @@ -167,7 +167,7 @@ static void postConstraintChecks(TransInfo *t, float vec[3]) { mul_m3_v3(t->spacemtx_inv, vec); - snapGridIncrement(t, vec); + transform_snap_increment(t, vec); if (t->flag & T_NULL_ONE) { if (!(t->con.mode & CON_AXIS0)) { diff --git a/source/blender/editors/transform/transform_mode.c b/source/blender/editors/transform/transform_mode.c index 495c21bc755..edc0781e18e 100644 --- a/source/blender/editors/transform/transform_mode.c +++ b/source/blender/editors/transform/transform_mode.c @@ -1014,7 +1014,7 @@ void ElementResize(TransInfo *t, TransDataContainer *tc, TransData *td, float ma /* scale stroke thickness */ if (td->val) { - snapGridIncrement(t, t->values_final); + transform_snap_increment(t, t->values_final); applyNumInput(&t->num, t->values_final); float ratio = t->values_final[0]; diff --git a/source/blender/editors/transform/transform_mode_baketime.c b/source/blender/editors/transform/transform_mode_baketime.c index 4e7fc3578ce..235b04b1858 100644 --- a/source/blender/editors/transform/transform_mode_baketime.c +++ b/source/blender/editors/transform/transform_mode_baketime.c @@ -67,7 +67,7 @@ static void applyBakeTime(TransInfo *t, const int mval[2]) time = (float)(t->center2d[0] - mval[0]) * fac; } - snapGridIncrement(t, &time); + transform_snap_increment(t, &time); applyNumInput(&t->num, &time); diff --git a/source/blender/editors/transform/transform_mode_bbone_resize.c b/source/blender/editors/transform/transform_mode_bbone_resize.c index 80a5b307a91..d067c9df418 100644 --- a/source/blender/editors/transform/transform_mode_bbone_resize.c +++ b/source/blender/editors/transform/transform_mode_bbone_resize.c @@ -124,7 +124,7 @@ static void applyBoneSize(TransInfo *t, const int UNUSED(mval[2])) copy_v3_fl(t->values_final, ratio); - snapGridIncrement(t, t->values_final); + transform_snap_increment(t, t->values_final); if (applyNumInput(&t->num, t->values_final)) { constraintNumInput(t, t->values_final); diff --git a/source/blender/editors/transform/transform_mode_bend.c b/source/blender/editors/transform/transform_mode_bend.c index 3b51626b170..86de40448b7 100644 --- a/source/blender/editors/transform/transform_mode_bend.c +++ b/source/blender/editors/transform/transform_mode_bend.c @@ -104,7 +104,7 @@ static void Bend(TransInfo *t, const int UNUSED(mval[2])) const float radius_snap = 0.1f; const float snap_hack = (t->snap[1] * data->warp_init_dist) / radius_snap; values.scale *= snap_hack; - snapGridIncrement(t, values.vector); + transform_snap_increment(t, values.vector); values.scale /= snap_hack; } #endif diff --git a/source/blender/editors/transform/transform_mode_boneenvelope.c b/source/blender/editors/transform/transform_mode_boneenvelope.c index b7a34769f5a..7f5a8fedeef 100644 --- a/source/blender/editors/transform/transform_mode_boneenvelope.c +++ b/source/blender/editors/transform/transform_mode_boneenvelope.c @@ -53,7 +53,7 @@ static void applyBoneEnvelope(TransInfo *t, const int UNUSED(mval[2])) ratio = t->values[0]; - snapGridIncrement(t, &ratio); + transform_snap_increment(t, &ratio); applyNumInput(&t->num, &ratio); diff --git a/source/blender/editors/transform/transform_mode_boneroll.c b/source/blender/editors/transform/transform_mode_boneroll.c index 1503519c519..8805d54e1f8 100644 --- a/source/blender/editors/transform/transform_mode_boneroll.c +++ b/source/blender/editors/transform/transform_mode_boneroll.c @@ -54,7 +54,7 @@ static void applyBoneRoll(TransInfo *t, const int UNUSED(mval[2])) final = t->values[0]; - snapGridIncrement(t, &final); + transform_snap_increment(t, &final); applyNumInput(&t->num, &final); diff --git a/source/blender/editors/transform/transform_mode_curveshrinkfatten.c b/source/blender/editors/transform/transform_mode_curveshrinkfatten.c index 84e4e950804..fd65b019fe0 100644 --- a/source/blender/editors/transform/transform_mode_curveshrinkfatten.c +++ b/source/blender/editors/transform/transform_mode_curveshrinkfatten.c @@ -53,7 +53,7 @@ static void applyCurveShrinkFatten(TransInfo *t, const int UNUSED(mval[2])) ratio = t->values[0]; - snapGridIncrement(t, &ratio); + transform_snap_increment(t, &ratio); applyNumInput(&t->num, &ratio); diff --git a/source/blender/editors/transform/transform_mode_edge_bevelweight.c b/source/blender/editors/transform/transform_mode_edge_bevelweight.c index 399cec2d62c..4d6e25dbe34 100644 --- a/source/blender/editors/transform/transform_mode_edge_bevelweight.c +++ b/source/blender/editors/transform/transform_mode_edge_bevelweight.c @@ -55,7 +55,7 @@ static void applyBevelWeight(TransInfo *t, const int UNUSED(mval[2])) CLAMP_MAX(weight, 1.0f); - snapGridIncrement(t, &weight); + transform_snap_increment(t, &weight); applyNumInput(&t->num, &weight); diff --git a/source/blender/editors/transform/transform_mode_edge_crease.c b/source/blender/editors/transform/transform_mode_edge_crease.c index 53c948c742b..a1822d99ff9 100644 --- a/source/blender/editors/transform/transform_mode_edge_crease.c +++ b/source/blender/editors/transform/transform_mode_edge_crease.c @@ -55,7 +55,7 @@ static void applyCrease(TransInfo *t, const int UNUSED(mval[2])) CLAMP_MAX(crease, 1.0f); - snapGridIncrement(t, &crease); + transform_snap_increment(t, &crease); applyNumInput(&t->num, &crease); diff --git a/source/blender/editors/transform/transform_mode_edge_rotate_normal.c b/source/blender/editors/transform/transform_mode_edge_rotate_normal.c index fde0d5b187e..5b929c39915 100644 --- a/source/blender/editors/transform/transform_mode_edge_rotate_normal.c +++ b/source/blender/editors/transform/transform_mode_edge_rotate_normal.c @@ -99,7 +99,7 @@ static void applyNormalRotation(TransInfo *t, const int UNUSED(mval[2])) float angle = t->values[0]; copy_v3_v3(axis, axis_final); - snapGridIncrement(t, &angle); + transform_snap_increment(t, &angle); applySnapping(t, &angle); diff --git a/source/blender/editors/transform/transform_mode_edge_seq_slide.c b/source/blender/editors/transform/transform_mode_edge_seq_slide.c index c1cb4325c09..141f9acdeb4 100644 --- a/source/blender/editors/transform/transform_mode_edge_seq_slide.c +++ b/source/blender/editors/transform/transform_mode_edge_seq_slide.c @@ -102,7 +102,7 @@ static void applySeqSlide(TransInfo *t, const int mval[2]) copy_v3_v3(t->values_final, tvec); } else { - // snapGridIncrement(t, t->values); + // transform_snap_increment(t, t->values); applyNumInput(&t->num, t->values); copy_v3_v3(t->values_final, t->values); } diff --git a/source/blender/editors/transform/transform_mode_edge_slide.c b/source/blender/editors/transform/transform_mode_edge_slide.c index fe97a9fba87..7d0e555e362 100644 --- a/source/blender/editors/transform/transform_mode_edge_slide.c +++ b/source/blender/editors/transform/transform_mode_edge_slide.c @@ -1463,7 +1463,9 @@ static void applyEdgeSlide(TransInfo *t, const int UNUSED(mval[2])) final = t->values[0]; applySnapping(t, &final); - snapGridIncrement(t, &final); + if (!validSnap(t)) { + transform_snap_increment(t, &final); + } /* only do this so out of range values are not displayed */ if (is_constrained) { diff --git a/source/blender/editors/transform/transform_mode_gpopacity.c b/source/blender/editors/transform/transform_mode_gpopacity.c index 4712fb7ba01..11c63be156c 100644 --- a/source/blender/editors/transform/transform_mode_gpopacity.c +++ b/source/blender/editors/transform/transform_mode_gpopacity.c @@ -53,7 +53,7 @@ static void applyGPOpacity(TransInfo *t, const int UNUSED(mval[2])) ratio = t->values[0]; - snapGridIncrement(t, &ratio); + transform_snap_increment(t, &ratio); applyNumInput(&t->num, &ratio); diff --git a/source/blender/editors/transform/transform_mode_gpshrinkfatten.c b/source/blender/editors/transform/transform_mode_gpshrinkfatten.c index ab9a0aa79ed..c025dbcaccb 100644 --- a/source/blender/editors/transform/transform_mode_gpshrinkfatten.c +++ b/source/blender/editors/transform/transform_mode_gpshrinkfatten.c @@ -53,7 +53,7 @@ static void applyGPShrinkFatten(TransInfo *t, const int UNUSED(mval[2])) ratio = t->values[0]; - snapGridIncrement(t, &ratio); + transform_snap_increment(t, &ratio); applyNumInput(&t->num, &ratio); diff --git a/source/blender/editors/transform/transform_mode_maskshrinkfatten.c b/source/blender/editors/transform/transform_mode_maskshrinkfatten.c index 68f3abda85b..3ac35ae7780 100644 --- a/source/blender/editors/transform/transform_mode_maskshrinkfatten.c +++ b/source/blender/editors/transform/transform_mode_maskshrinkfatten.c @@ -54,7 +54,7 @@ static void applyMaskShrinkFatten(TransInfo *t, const int UNUSED(mval[2])) ratio = t->values[0]; - snapGridIncrement(t, &ratio); + transform_snap_increment(t, &ratio); applyNumInput(&t->num, &ratio); diff --git a/source/blender/editors/transform/transform_mode_push_pull.c b/source/blender/editors/transform/transform_mode_push_pull.c index 4a2f979ec38..2b17f208e79 100644 --- a/source/blender/editors/transform/transform_mode_push_pull.c +++ b/source/blender/editors/transform/transform_mode_push_pull.c @@ -55,7 +55,7 @@ static void applyPushPull(TransInfo *t, const int UNUSED(mval[2])) distance = t->values[0]; - snapGridIncrement(t, @@ Diff output truncated at 10240 characters. @@ _______________________________________________ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs