Blender
V3.3
|
#include "bmesh.h"
Go to the source code of this file.
Classes | |
struct | BMeshFromMeshParams |
struct | BMeshToMeshParams |
Functions | |
void | BM_mesh_cd_flag_ensure (BMesh *bm, struct Mesh *mesh, char cd_flag) |
void | BM_mesh_cd_flag_apply (BMesh *bm, char cd_flag) |
char | BM_mesh_cd_flag_from_bmesh (BMesh *bm) |
void | BM_mesh_bm_from_me (BMesh *bm, const struct Mesh *me, const struct BMeshFromMeshParams *params) ATTR_NONNULL(1 |
Mesh -> BMesh. More... | |
void | BM_mesh_bm_to_me (struct Main *bmain, BMesh *bm, struct Mesh *me, const struct BMeshToMeshParams *params) ATTR_NONNULL(2 |
void void | BM_mesh_bm_to_me_for_eval (BMesh *bm, struct Mesh *me, const struct CustomData_MeshMasks *cd_mask_extra) ATTR_NONNULL(1 |
void BM_mesh_bm_from_me | ( | BMesh * | bm, |
const struct Mesh * | me, | ||
const struct BMeshFromMeshParams * | params | ||
) |
bm | The mesh to write into, while this is typically a newly created BMesh, merging into existing data is supported. Note the custom-data layout isn't used. If more comprehensive merging is needed we should move this into a separate function since this should be kept fast for edit-mode switching and storing undo steps. |
void BM_mesh_bm_to_me | ( | struct Main * | bmain, |
BMesh * | bm, | ||
struct Mesh * | me, | ||
const struct BMeshToMeshParams * | params | ||
) |
bmain | May be NULL in case calc_object_remap parameter option is not set. |
void void BM_mesh_bm_to_me_for_eval | ( | BMesh * | bm, |
struct Mesh * | me, | ||
const struct CustomData_MeshMasks * | cd_mask_extra | ||
) |
A version of BM_mesh_bm_to_me intended for getting the mesh to pass to the modifier stack for evaluation, instead of mode switching (where we make sure all data is kept and do expensive lookups to maintain shape keys).
Key differences:
cddm_from_bmesh_ex
in 2.7x, removed MFace
support. Definition at line 117 of file bmesh_mesh_convert.cc.
References BLI_assert, bm, BM_data_layer_add(), BM_data_layer_free(), CD_BWEIGHT, CD_CREASE, CustomData_has_layer(), BMesh::edata, ME_CDFLAG_EDGE_BWEIGHT, ME_CDFLAG_EDGE_CREASE, ME_CDFLAG_VERT_BWEIGHT, ME_CDFLAG_VERT_CREASE, BMesh::pdata, CustomData::pool, CustomData::totlayer, and BMesh::vdata.
Referenced by BM_mesh_bm_from_me(), BM_mesh_cd_flag_ensure(), and BM_mesh_copy_init_customdata_from_mesh_array().
Definition at line 108 of file bmesh_mesh_convert.cc.
References bm, BM_mesh_cd_flag_apply(), BM_mesh_cd_flag_from_bmesh(), Mesh::cd_flag, and mesh.
Referenced by createTransEdge(), createTransMeshVertCData(), edgetag_ensure_cd_flag(), and v3d_editvertex_buts().
char BM_mesh_cd_flag_from_bmesh | ( | BMesh * | bm | ) |
Definition at line 169 of file bmesh_mesh_convert.cc.
References bm, CD_BWEIGHT, CD_CREASE, CustomData_has_layer(), BMesh::edata, ME_CDFLAG_EDGE_BWEIGHT, ME_CDFLAG_EDGE_CREASE, ME_CDFLAG_VERT_BWEIGHT, ME_CDFLAG_VERT_CREASE, and BMesh::vdata.
Referenced by BM_mesh_bm_from_me(), BM_mesh_bm_to_me(), BM_mesh_bm_to_me_for_eval(), BM_mesh_cd_flag_ensure(), and BM_mesh_copy_init_customdata_from_mesh_array().