|
Blender
V2.93
|
#include "DNA_mesh_types.h"#include "DNA_meshdata_types.h"#include "MEM_guardedalloc.h"#include "BLI_alloca.h"#include "BLI_linklist_stack.h"#include "BLI_math.h"#include "BLI_memarena.h"#include "BKE_context.h"#include "BKE_crazyspace.h"#include "BKE_editmesh.h"#include "BKE_mesh.h"#include "BKE_modifier.h"#include "BKE_scene.h"#include "ED_mesh.h"#include "DEG_depsgraph_query.h"#include "transform.h"#include "transform_orientations.h"#include "transform_snap.h"#include "transform_convert.h"Go to the source code of this file.
Classes | |
| struct | TransCustomDataMergeGroup |
| struct | TransCustomDataLayer |
Macros | |
| #define | USE_FACE_SUBSTITUTE |
Functions | |
Island Creation | |
| void | transform_convert_mesh_islands_calc (struct BMEditMesh *em, const bool calc_single_islands, const bool calc_island_center, const bool calc_island_axismtx, struct TransIslandData *r_island_data) |
| void | transform_convert_mesh_islanddata_free (struct TransIslandData *island_data) |
Connectivity Distance for Proportional Editing | |
| static bool | bmesh_test_dist_add (BMVert *v0, BMVert *v1, BMVert *v2, float *dists, int *index, const float mtx[3][3]) |
| static bool | bmesh_test_loose_edge (BMEdge *edge) |
| void | transform_convert_mesh_connectivity_distance (struct BMesh *bm, const float mtx[3][3], float *dists, int *index) |
Crazy Space | |
| void | transform_convert_mesh_crazyspace_detect (TransInfo *t, struct TransDataContainer *tc, struct BMEditMesh *em, struct TransMeshDataCrazySpace *r_crazyspace_data) |
| void | transform_convert_mesh_crazyspace_transdata_set (const float mtx[3][3], const float smtx[3][3], const float defmat[3][3], const float quat[4], struct TransData *r_td) |
| void | transform_convert_mesh_crazyspace_free (struct TransMeshDataCrazySpace *r_crazyspace_data) |
Edit Mesh Verts Transform Creation | |
| static void | transdata_center_get (const struct TransIslandData *island_data, const int island_index, const float iloc[3], float r_center[3]) |
| static void | VertsToTransData (TransInfo *t, TransData *td, TransDataExtension *tx, BMEditMesh *em, BMVert *eve, float *bweight, const struct TransIslandData *island_data, const int island_index) |
| void | createTransEditVerts (TransInfo *t) |
Recalc Mesh Data | |
| static void | mesh_apply_to_mirror (TransInfo *t) |
| void | recalcData_mesh (TransInfo *t) |
Special After Transform Mesh | |
| void | special_aftertrans_update__mesh (bContext *UNUSED(C), TransInfo *t) |
TransDataMirror Creation | |
| #define | TRANSFORM_MAXDIST_MIRROR 0.00002f |
| static bool | is_in_quadrant_v3 (const float co[3], const int quadrant[3], const float epsilon) |
| void | transform_convert_mesh_mirrordata_calc (struct BMEditMesh *em, const bool use_select, const bool use_topology, const bool mirror_axis[3], struct TransMirrorData *r_mirror_data) |
| void | transform_convert_mesh_mirrordata_free (struct TransMirrorData *mirror_data) |
| #define FACE_SUBSTITUTE_INDEX INT_MIN |
Definition at line 1111 of file transform_convert_mesh.c.
| #define TRANSFORM_MAXDIST_MIRROR 0.00002f |
Definition at line 498 of file transform_convert_mesh.c.
| #define USE_FACE_SUBSTITUTE |
Definition at line 51 of file transform_convert_mesh.c.
|
static |
Definition at line 258 of file transform_convert_mesh.c.
References BLI_assert, BM_elem_flag_test, BM_ELEM_HIDDEN, BM_elem_index_get, BM_ELEM_SELECT, BMVert::co, geodesic_distance_propagate_across_triangle(), i1, len_v3(), mul_m3_v3(), mul_v3_m3v3(), NULL, sub_v3_v3v3(), v1, and v2.
Referenced by transform_convert_mesh_connectivity_distance().
|
static |
Definition at line 314 of file transform_convert_mesh.c.
References BM_elem_flag_test, BM_ELEM_HIDDEN, BM_FACES_OF_EDGE, BM_ITER_ELEM, BMEdge::l, and NULL.
Referenced by transform_convert_mesh_connectivity_distance().
| void createTransEditVerts | ( | TransInfo * | t | ) |
Quick check if we can transform.
Definition at line 814 of file transform_convert_mesh.c.
References Freestyle::a, BKE_editmesh_from_object(), BKE_mesh_from_object(), BLI_assert, BMEditMesh::bm, bm, BM_ELEM_CD_GET_VOID_P, BM_elem_flag_test, BM_ELEM_HIDDEN, BM_ELEM_SELECT, BM_ELEM_TAG, BM_ITER_MESH, BM_ITER_MESH_INDEX, BM_mesh_cd_flag_ensure(), BM_vert_at_index(), BM_VERTS_OF_MESH, CD_BWEIGHT, BMVert::co, copy_m3_m4(), copy_v3_v3(), CustomData_get_offset(), TransMeshDataCrazySpace::defmats, TransData::dist, Mesh::editflag, ELEM, fabsf, MirrorDataVert::flag, FOREACH_TRANS_DATA_CONTAINER, MirrorDataVert::index, TransIslandData::island_vert_map, TransDataMirror::loc_src, ME_CDFLAG_VERT_BWEIGHT, ME_EDIT_MIRROR_TOPO, MEM_callocN, MEM_freeN, MEM_mallocN, TransMirrorData::mirror_elem_len, NULL, PSEUDOINVERSE_EPSILON, pseudoinverse_m3_m3(), TransMeshDataCrazySpace::quats, SCE_SELECT_VERTEX, SCE_SNAP_ROTATE, BMEditMesh::selectmode, t, T_PROP_CONNECTED, T_PROP_EDIT, T_PROP_EDIT_ALL, TD_MIRROR_EDGE_X, TD_MIRROR_EDGE_Y, TD_MIRROR_EDGE_Z, TD_NOTCONNECTED, TD_SELECTED, TFM_BWEIGHT, TFM_SHRINKFATTEN, TFM_TRANSLATION, BMesh::totvert, BMesh::totvertsel, transdata_center_get(), transform_convert_mesh_connectivity_distance(), transform_convert_mesh_crazyspace_detect(), transform_convert_mesh_crazyspace_free(), transform_convert_mesh_crazyspace_transdata_set(), transform_convert_mesh_islanddata_free(), transform_convert_mesh_islands_calc(), transform_convert_mesh_mirrordata_calc(), transform_convert_mesh_mirrordata_free(), TRANSFORM_MAXDIST_MIRROR, usingSnappingNormal(), V3D_AROUND_LOCAL_ORIGINS, BMesh::vdata, TransMirrorData::vert_map, and VertsToTransData().
Referenced by createTransData().
|
static |
Definition at line 500 of file transform_convert_mesh.c.
References blender::robust_pred::epsilon.
Referenced by transform_convert_mesh_mirrordata_calc().
|
static |
Definition at line 1600 of file transform_convert_mesh.c.
References copy_v3_v3(), TransCustomDataLayer::data_len, FOREACH_TRANS_DATA_CONTAINER, TransDataMirror::loc_src, t, TD_MIRROR_EDGE_X, TD_MIRROR_EDGE_Y, TD_MIRROR_EDGE_Z, TD_MIRROR_X, TD_MIRROR_Y, and TD_MIRROR_Z.
Referenced by recalcData_mesh().
|
static |
Definition at line 1535 of file transform_convert_mesh.c.
References TransCustomDataLayer::data, FOREACH_TRANS_DATA_CONTAINER, TransCustomDataLayer::merge_group, mesh_customdatacorrect_apply_vert(), t, and TransCustomDataLayer::use_merge_group.
Referenced by recalcData_mesh(), and special_aftertrans_update__mesh().
|
static |
Definition at line 1394 of file transform_convert_mesh.c.
References BLI_array_alloca, BLI_ghash_lookup(), bm, TransCustomDataLayer::bm, BM_elem_index_get, BM_face_calc_center_median(), BM_face_interp_multires_ex(), BM_ITER_ELEM_INDEX, BM_iter_init(), BM_loop_interp_from_face(), BM_LOOPS_OF_VERT, BM_vert_loop_groups_data_layer_merge(), BM_vert_loop_groups_data_layer_merge_weights(), TransCustomDataMergeGroup::cd_loop_groups, TransCustomDataLayer::cd_loop_mdisp_offset, BMVert::co, BMIter::count, TransCustomDataLayer::customdatalayer_map, TransCustomDataLayer::customdatalayer_map_len, dist_signed_squared_to_corner_v3v3v3(), eps, BMLoop::f, FACE_SUBSTITUTE_INDEX, float(), CCL_NAMESPACE_BEGIN::isfinite(), l, len_squared_v3v3(), TransCustomDataLayer::merge_group, mesh_customdatacorrect_face_substitute_get(), BMLoop::next, BMVert::no, NULL, TransCustomDataLayer::origfaces, BMLoop::prev, project_plane_normalized_v3_v3v3(), trans_vert_orig_co_get(), UNLIKELY, UNPACK3, TransCustomDataLayer::use_merge_group, BMLoop::v, and v.
Referenced by mesh_customdatacorrect_apply().
Definition at line 1174 of file transform_convert_mesh.c.
References BLI_assert, BM_elem_index_get, FACE_SUBSTITUTE_INDEX, and BMFace::no.
Referenced by mesh_customdatacorrect_apply_vert().
|
static |
Definition at line 1147 of file transform_convert_mesh.c.
References BLI_assert, bm, TransCustomDataLayer::bm, BM_elem_index_set, BM_face_copy(), BM_FACE_FIRST_LOOP, BM_loop_interp_from_face(), TransCustomDataLayer::bm_origfaces, FACE_SUBSTITUTE_INDEX, is_zero_v3(), mesh_customdatacorrect_find_best_face_substitute(), BMLoop::next, and BMFace::no.
Referenced by mesh_customdatacorrect_init_vert().
Search for a neighboring face with area and preferably without selected vertex. Used to replace area-less faces in custom-data correction.
Definition at line 1117 of file transform_convert_mesh.c.
References BM_elem_flag_test, BM_ELEM_SELECT, BM_ITER_ELEM, BM_LOOPS_OF_FACE, BMLoop::f, is_zero_v3(), l, BMLoop::next, BMFace::no, NULL, BMLoop::radial_next, and BMLoop::v.
Referenced by mesh_customdatacorrect_face_substitute_set().
|
static |
Definition at line 1082 of file transform_convert_mesh.c.
References TransCustomDataLayer::arena, BLI_ghash_free(), BLI_memarena_free(), TransCustomDataLayer::bm, BM_mesh_free(), TransCustomDataLayer::bm_origfaces, bmesh_edit_end(), BMO_OPTYPE_FLAG_UNTAN_MULTIRES, TransCustomDataLayer::customdatalayer_map, TransCustomData::data, MEM_freeN, TransCustomDataLayer::merge_group, NULL, TransCustomDataLayer::origfaces, and TransCustomDataLayer::origverts.
Referenced by mesh_customdatacorrect_init_container().
| void mesh_customdatacorrect_init | ( | TransInfo * | t | ) |
Definition at line 1347 of file transform_convert_mesh.c.
References ELEM, FOREACH_TRANS_DATA_CONTAINER, mesh_customdatacorrect_init_container(), t, TFM_ALIGN, TFM_BEND, TFM_EDGE_SLIDE, TFM_PUSHPULL, TFM_RESIZE, TFM_ROTATION, TFM_SHEAR, TFM_SHRINKFATTEN, TFM_TOSPHERE, TFM_TRACKBALL, TFM_TRANSLATION, TFM_VERT_SLIDE, TransCustomDataLayer::use_merge_group, UVCALC_TRANSFORM_CORRECT, UVCALC_TRANSFORM_CORRECT_KEEP_CONNECTED, and UVCALC_TRANSFORM_CORRECT_SLIDE.
Referenced by transform_mode_init().
|
static |
Definition at line 1291 of file transform_convert_mesh.c.
References TransCustomDataLayer::arena, BKE_editmesh_from_object(), BLI_memarena_new(), BLI_MEMARENA_STD_BUFSIZE, BMEditMesh::bm, bm, TransCustomDataLayer::bm, TransCustomDataLayer::cd_loop_mdisp_offset, CD_MDISPS, TransDataContainer::custom, CustomData_has_layer(), CustomData_has_math(), TransCustomData::data, TransDataContainer::data, TransDataContainer::data_len, TransDataContainer::data_mirror, TransDataContainer::data_mirror_len, TransCustomData::free_cb, BMesh::ldata, MEM_callocN, mesh_customdatacorrect_free_cb(), mesh_customdatacorrect_init_container_generic(), mesh_customdatacorrect_init_container_merge_group(), mesh_customdatacorrect_init_vert(), NULL, TransDataContainer::obedit, BMesh::shapenr, TransCustomDataContainer::type, and TransCustomDataLayer::use_merge_group.
Referenced by mesh_customdatacorrect_init().
|
static |
Definition at line 1243 of file transform_convert_mesh.c.
References BLI_ghash_ptr_new(), bm, TransCustomDataLayer::bm, BM_LOOP, bm_mesh_allocsize_default, BM_mesh_copy_init_customdata_all_layers(), BM_mesh_create(), TransCustomDataLayer::bm_origfaces, bmesh_edit_begin(), BMO_OPTYPE_FLAG_UNTAN_MULTIRES, TransCustomDataLayer::cd_loop_mdisp_offset, CD_MDISPS, CustomData_get_offset(), BMesh::ldata, NULL, and TransCustomDataLayer::origfaces.
Referenced by mesh_customdatacorrect_init_container().
|
static |
Definition at line 1264 of file transform_convert_mesh.c.
References TransCustomDataLayer::arena, BLI_assert, BLI_ghash_ptr_new_ex(), BLI_memarena_alloc(), bm, TransCustomDataLayer::bm, CustomData_has_math(), CustomData_layer_has_math(), TransCustomDataLayer::customdatalayer_map, TransCustomDataLayer::customdatalayer_map_len, TransCustomDataLayer::data, TransDataContainer::data_len, TransCustomDataLayer::data_len, TransDataContainer::data_mirror_len, BMesh::ldata, MEM_mallocN, TransCustomDataLayer::merge_group, TransCustomDataLayer::origverts, and CustomData::totlayer.
Referenced by mesh_customdatacorrect_init_container().
|
static |
Definition at line 1182 of file transform_convert_mesh.c.
References angle_v3v3v3(), TransCustomDataLayer::arena, BLI_array_alloca, BLI_ghash_ensure_p(), BLI_ghash_insert(), BLI_memarena_alloc(), bm, TransCustomDataLayer::bm, BM_face_copy(), BM_iter_init(), BM_loop_find_next_nodouble(), BM_loop_find_prev_nodouble(), BM_LOOPS_OF_VERT, TransCustomDataLayer::bm_origfaces, BM_vert_loop_groups_data_layer_create(), TransCustomDataMergeGroup::cd_loop_groups, BMVert::co, BMIter::count, TransCustomDataLayer::customdatalayer_map, TransCustomDataLayer::customdatalayer_map_len, TransCustomDataLayer::data, BMLoop::f, is_zero_v3(), l, TransCustomDataLayer::merge_group, mesh_customdatacorrect_face_substitute_set(), BMLoop::next, BMFace::no, NULL, TransCustomDataLayer::origfaces, TransCustomDataLayer::origverts, TransCustomDataLayer::use_merge_group, BMLoop::v, and v.
Referenced by mesh_customdatacorrect_init_container().
|
static |
Definition at line 1565 of file transform_convert_mesh.c.
References BLI_assert, BLI_ghashIterator_getKey(), BLI_ghashIterator_getValue(), bm, TransCustomDataLayer::bm, BM_elem_attrs_copy(), BM_FACE_FIRST_LOOP, TransCustomDataLayer::bm_origfaces, TransCustomDataLayer::data, FOREACH_TRANS_DATA_CONTAINER, GHASH_ITER, BMFace::len, BMLoop::next, TransCustomDataLayer::origfaces, and t.
Referenced by recalcData_mesh().
| void recalcData_mesh | ( | TransInfo * | t | ) |
Definition at line 1637 of file transform_convert_mesh.c.
References applyProject(), BKE_editmesh_from_object(), BKE_editmesh_looptri_calc(), clipMirrorModifier(), CTX_NO_MIRROR, DEG_id_tag_update(), EDBM_mesh_normals_update(), FOREACH_TRANS_DATA_CONTAINER, mesh_apply_to_mirror(), mesh_customdatacorrect_apply(), mesh_customdatacorrect_restore(), t, T_NO_MIRROR, and TRANS_CANCEL.
Referenced by recalcData().
Definition at line 1669 of file transform_convert_mesh.c.
References BKE_editmesh_from_object(), BMEditMesh::bm, bm, BM_elem_flag_enable, BM_ELEM_SELECT, BM_ELEM_TAG, BM_mesh_elem_hflag_disable_all(), BM_VERT, ED_mesh_mirror_spatial_table_end(), EDBM_automerge(), EDBM_automerge_and_split(), EDBM_selectmode_flush_ex(), ELEM, FOREACH_TRANS_DATA_CONTAINER, mesh_customdatacorrect_apply(), SCE_SELECT_EDGE, SCE_SELECT_FACE, BMEditMesh::selectmode, t, T_AUTOMERGE, T_AUTOSPLIT, TFM_EDGE_SLIDE, TFM_VERT_SLIDE, BMesh::totfacesel, and TRANS_CANCEL.
|
static |
If we're sliding the vert, return its original location, if not, the current location is good.
Definition at line 1388 of file transform_convert_mesh.c.
References BLI_ghash_lookup(), BMVert::co, TransCustomDataLayer::merge_group, TransCustomDataLayer::origverts, and v.
Referenced by mesh_customdatacorrect_apply_vert().
|
static |
Definition at line 744 of file transform_convert_mesh.c.
References TransIslandData::center, and copy_v3_v3().
Referenced by createTransEditVerts(), and VertsToTransData().
| void transform_convert_mesh_connectivity_distance | ( | struct BMesh * | bm, |
| const float | mtx[3][3], | ||
| float * | dists, | ||
| int * | index | ||
| ) |
| mtx | Measure distance in this space. |
| dists | Store the closest connected distance to selected vertices. |
| index | Optionally store the original index we're measuring the distance to (can be NULL). |
Definition at line 337 of file transform_convert_mesh.c.
References BLI_assert, BLI_LINKSTACK_DECLARE, BLI_LINKSTACK_FREE, BLI_LINKSTACK_INIT, BLI_LINKSTACK_POP, BLI_LINKSTACK_PUSH, BLI_LINKSTACK_SIZE, BLI_LINKSTACK_SWAP, bm, BM_edge_other_vert(), BM_EDGES_OF_MESH, BM_EDGES_OF_VERT, BM_elem_flag_disable, BM_elem_flag_enable, BM_elem_flag_set, BM_elem_flag_test, BM_ELEM_HIDDEN, BM_elem_index_get, BM_elem_index_set, BM_ELEM_SELECT, BM_ELEM_TAG, BM_ELEM_TAG_ALT, BM_ITER_ELEM, BM_ITER_MESH, BM_iter_mesh_count_flag(), BM_ITER_MESH_INDEX, BM_LOOPS_OF_EDGE, BM_VERT, BM_VERTS_OF_MESH, bmesh_test_dist_add(), bmesh_test_loose_edge(), e, ELEM, BMesh::elem_index_dirty, BMLoop::f, i1, l, LinkNode::next, BMLoop::next, NULL, blender::compositor::queue, SWAP, v, v1, and v2.
Referenced by createTransEditVerts(), and createTransMeshSkin().
| void transform_convert_mesh_crazyspace_detect | ( | TransInfo * | t, |
| struct TransDataContainer * | tc, | ||
| struct BMEditMesh * | em, | ||
| struct TransMeshDataCrazySpace * | r_crazyspace_data | ||
| ) |
Definition at line 641 of file transform_convert_mesh.c.
References BKE_crazyspace_get_first_deform_matrices_editbmesh(), BKE_crazyspace_get_mapped_editverts(), BKE_crazyspace_set_quats_editmesh(), BKE_editmesh_from_object(), BKE_modifiers_get_cage_index(), BKE_modifiers_is_correctable_deformed(), BKE_scene_graph_evaluated_ensure(), BMEditMesh::bm, CTX_data_main(), TransMeshDataCrazySpace::defmats, DEG_get_evaluated_id(), float(), Object::id, MEM_freeN, MEM_mallocN, NULL, TransDataContainer::obedit, TransMeshDataCrazySpace::quats, t, T_PROP_EDIT, T_PROP_EDIT_ALL, and BMesh::totvert.
Referenced by createTransEditVerts(), and createTransMeshSkin().
| void transform_convert_mesh_crazyspace_free | ( | struct TransMeshDataCrazySpace * | r_crazyspace_data | ) |
Definition at line 728 of file transform_convert_mesh.c.
References TransMeshDataCrazySpace::defmats, MEM_freeN, and TransMeshDataCrazySpace::quats.
Referenced by createTransEditVerts(), and createTransMeshSkin().
| void transform_convert_mesh_crazyspace_transdata_set | ( | const float | mtx[3][3], |
| const float | smtx[3][3], | ||
| const float | defmat[3][3], | ||
| const float | quat[4], | ||
| struct TransData * | r_td | ||
| ) |
Definition at line 692 of file transform_convert_mesh.c.
References copy_m3_m3(), invert_m3_m3(), TransData::mtx, mul_m3_m3m3(), mul_m3_series, quat_to_mat3(), and TransData::smtx.
Referenced by createTransEditVerts(), and createTransMeshSkin().
| void transform_convert_mesh_islanddata_free | ( | struct TransIslandData * | island_data | ) |
Definition at line 238 of file transform_convert_mesh.c.
References TransIslandData::axismtx, TransIslandData::center, TransIslandData::island_vert_map, and MEM_freeN.
Referenced by createTransEditVerts(), and createTransMeshSkin().
| void transform_convert_mesh_islands_calc | ( | struct BMEditMesh * | em, |
| const bool | calc_single_islands, | ||
| const bool | calc_island_center, | ||
| const bool | calc_island_axismtx, | ||
| struct TransIslandData * | r_island_data | ||
| ) |
Definition at line 57 of file transform_convert_mesh.c.
References add_v3_v3(), axis_dominant_v3_to_m3(), BLI_assert, BMEditMesh::bm, bm, BM_EDGE, BM_editselection_center(), BM_editselection_normal(), BM_editselection_plane(), BM_elem_flag_test, BM_elem_index_get, BM_ELEM_SELECT, BM_FACE, BM_ITER_ELEM, BM_ITER_MESH_INDEX, BM_mesh_calc_edge_groups(), BM_mesh_calc_face_groups(), BM_mesh_elem_index_ensure(), BM_mesh_elem_table_ensure(), BM_VERT, BM_VERTS_OF_EDGE, BM_VERTS_OF_FACE, BM_VERTS_OF_MESH, BMVert::co, copy_v3_v3(), copy_vn_i(), createSpaceNormalTangent(), data, BMEditSelection::ele, BMesh::etable, BMesh::ftable, BMEditSelection::htype, invert_m3(), is_zero_v3(), itype, MEM_freeN, MEM_mallocN, MEM_reallocN, mul_v3_v3fl(), BMVert::no, normalize_v3(), NULL, SCE_SELECT_EDGE, SCE_SELECT_VERTEX, BMEditMesh::selectmode, BMesh::totedgesel, BMesh::totfacesel, BMesh::totvert, unit_m3(), v, and zero_v3().
Referenced by createTransEditVerts(), and createTransMeshSkin().
| void transform_convert_mesh_mirrordata_calc | ( | struct BMEditMesh * | em, |
| const bool | use_select, | ||
| const bool | use_topology, | ||
| const bool | mirror_axis[3], | ||
| struct TransMirrorData * | r_mirror_data | ||
| ) |
Definition at line 514 of file transform_convert_mesh.c.
References Freestyle::a, add_v3_v3(), BMEditMesh::bm, bm, BM_elem_flag_test, BM_ELEM_HIDDEN, BM_ELEM_SELECT, BM_ITER_MESH_INDEX, BM_VERTS_OF_MESH, BMVert::co, EDBM_verts_mirror_cache_begin_ex(), MirrorDataVert::flag, MirrorDataVert::index, is_in_quadrant_v3(), MEM_callocN, MEM_freeN, MEM_mallocN, MEM_SAFE_FREE, TransMirrorData::mirror_elem_len, NULL, TD_MIRROR_X, BMesh::totvert, TRANSFORM_MAXDIST_MIRROR, and TransMirrorData::vert_map.
Referenced by createTransEditVerts(), and createTransMeshSkin().
| void transform_convert_mesh_mirrordata_free | ( | struct TransMirrorData * | mirror_data | ) |
Definition at line 626 of file transform_convert_mesh.c.
References MEM_freeN, and TransMirrorData::vert_map.
Referenced by createTransEditVerts(), and createTransMeshSkin().
|
static |
Definition at line 758 of file transform_convert_mesh.c.
References TransIslandData::axismtx, TransData::axismtx, BLI_assert, BM_elem_flag_test, BM_ELEM_HIDDEN, BM_ELEM_SELECT, BM_vert_calc_normal_ex(), BM_vert_calc_shell_factor_ex(), BMVert::co, copy_m3_m3(), copy_v3_v3(), createSpaceNormal(), TransData::ext, TransDataExtension::isize, TransData::ival, BMVert::no, NULL, SCE_SELECT_FACE, BMEditMesh::selectmode, t, TFM_BWEIGHT, TFM_SHRINKFATTEN, transdata_center_get(), V3D_AROUND_LOCAL_ORIGINS, and TransData::val.
Referenced by createTransEditVerts().