activeSnap --> transform_snap_is_active activeSnap_SnappingIndividual --> transform_snap_project_individual_is_active activeSnap_SnappingAsGroup --> transform_snap_mixed_is_active applySnappingIndividual --> transform_snap_project_individual_apply applySnappingAsGroup --> transform_snap_mixed_apply Also rearrange functions to be close to where they are used. And use static when possible.