Blender
V3.3
|
#include "BLI_math.h"
#include "DNA_mesh_types.h"
#include "DNA_meshdata_types.h"
#include "DNA_object_types.h"
#include "BKE_deform.h"
#include "BKE_lib_id.h"
#include "BKE_lib_query.h"
#include "BKE_mesh.h"
#include "BKE_mesh_mirror.h"
#include "BKE_modifier.h"
#include "bmesh.h"
#include "bmesh_tools.h"
#include "MEM_guardedalloc.h"
#include "MOD_modifiertypes.h"
Go to the source code of this file.
Functions | |
Mesh * | BKE_mesh_mirror_bisect_on_mirror_plane_for_modifier (MirrorModifierData *mmd, const Mesh *mesh, int axis, const float plane_co[3], float plane_no[3]) |
void | BKE_mesh_mirror_apply_mirror_on_axis (struct Main *bmain, Mesh *mesh, const int axis, const float dist) |
Mesh * | BKE_mesh_mirror_apply_mirror_on_axis_for_modifier (MirrorModifierData *mmd, Object *ob, const Mesh *mesh, const int axis, const bool use_correct_order_on_merge) |
void BKE_mesh_mirror_apply_mirror_on_axis | ( | struct Main * | bmain, |
Mesh * | mesh, | ||
const int | axis, | ||
const float | dist | ||
) |
Definition at line 85 of file blenkernel/intern/mesh_mirror.c.
References BKE_mesh_to_bmesh_ex(), bm, BM_mesh_bm_to_me(), BM_mesh_free(), BMO_FLAG_DEFAULTS, BMO_FLAG_RESPECT_HIDE, BMO_op_callf(), CD_MASK_SHAPEKEY, and mesh.
Referenced by sculpt_symmetrize_exec().
Mesh* BKE_mesh_mirror_apply_mirror_on_axis_for_modifier | ( | MirrorModifierData * | mmd, |
Object * | ob, | ||
const Mesh * | mesh, | ||
const int | axis, | ||
const bool | use_correct_order_on_merge | ||
) |
Definition at line 119 of file blenkernel/intern/mesh_mirror.c.
References Freestyle::a, BKE_defvert_flip(), BKE_defvert_flip_merged(), BKE_id_free(), BKE_lnor_space_custom_normal_to_data(), BKE_lnor_spacearr_free(), BKE_mesh_merge_verts(), BKE_mesh_mirror_bisect_on_mirror_plane_for_modifier(), BKE_mesh_new_nomain_from_template(), BKE_mesh_normals_loop_split(), BKE_mesh_poly_normals_ensure(), BKE_mesh_vertex_normals_ensure(), BKE_object_defgroup_flip_map(), BKE_object_supports_vertex_groups(), CD_CUSTOMLOOPNORMAL, CD_MDEFORMVERT, CD_MEDGE, CD_MLOOPUV, CD_MPOLY, CD_MVERT, CD_SHAPEKEY, ceilf, MVert::co, copy_v3_v3(), KDL::cos(), CustomData_copy_data(), CustomData_get_layer(), CustomData_get_layer_n(), CustomData_has_layer(), CustomData_number_of_layers(), Object::data, e, MLoop::e, Mesh::edata, MirrorModifierData::flag, float(), fmodf, invert_m4_m4(), is_zero_v2(), Mesh::ldata, len_squared_v3(), len_squared_v3v3(), LIKELY, MPoly::loopstart, MLoopNorSpaceArray::lspacearr, max_fff(), ME_AUTOSMOOTH, Mesh::medge, MEM_calloc_arrayN, MEM_freeN, MEM_malloc_arrayN, mesh, MESH_MERGE_VERTS_DUMP_IF_MAPPED, mid_v3_v3v3(), MirrorModifierData::mirror_ob, Mesh::mloop, MOD_MIR_BISECT_AXIS_X, MOD_MIR_BISECT_AXIS_Y, MOD_MIR_BISECT_AXIS_Z, MOD_MIR_MIRROR_U, MOD_MIR_MIRROR_UDIM, MOD_MIR_MIRROR_V, MOD_MIR_NO_MERGE, MOD_MIR_VGROUP, Mesh::mpoly, mul_m4_m4m4(), mul_m4_series, mul_m4_v3(), mul_v3_fl(), mul_v3_v3(), Mesh::mvert, negate_v3_v3(), NULL, OB_MESH, Object::obmat, Mesh::pdata, result, Mesh::smoothresh, MirrorModifierData::tolerance, Mesh::totedge, Mesh::totloop, MPoly::totloop, Mesh::totpoly, Mesh::totvert, transpose_m4(), Object::type, unit_m4(), UNLIKELY, UNPACK3, MLoopUV::uv, MirrorModifierData::uv_offset, MirrorModifierData::uv_offset_copy, v, MLoop::v, MEdge::v1, MEdge::v2, and Mesh::vdata.
Mesh* BKE_mesh_mirror_bisect_on_mirror_plane_for_modifier | ( | MirrorModifierData * | mmd, |
const Mesh * | mesh, | ||
int | axis, | ||
const float | plane_co[3], | ||
float | plane_no[3] | ||
) |
Definition at line 28 of file blenkernel/intern/mesh_mirror.c.
References MirrorModifierData::bisect_threshold, BKE_mesh_from_bmesh_for_eval_nomain(), BKE_mesh_to_bmesh_ex(), bm, BM_ITER_MESH_MUTABLE, BM_mesh_bisect_plane(), BM_mesh_free(), BM_vert_kill(), BM_VERTS_OF_MESH, CD_MASK_ORIGINDEX, BMVert::co, copy_v3_v3(), MirrorModifierData::flag, mesh, MOD_MIR_BISECT_FLIP_AXIS_X, MOD_MIR_BISECT_FLIP_AXIS_Y, MOD_MIR_BISECT_FLIP_AXIS_Z, negate_v3(), NULL, plane_from_point_normal_v3(), plane_point_side_v3(), result, and v.
Referenced by BKE_mesh_mirror_apply_mirror_on_axis_for_modifier().