Blender V2.61 - r43446
|
Go to the source code of this file.
Classes | |
struct | DMGridData |
struct | DMGridAdjacency |
struct | DerivedMesh |
struct | DMVertexAttribs |
struct | EditMeshDerivedMesh |
Defines | |
#define | SUB_ELEMS_VERT 0 |
#define | SUB_ELEMS_EDGE 2 |
#define | SUB_ELEMS_FACE 4 |
Typedefs | |
typedef struct DMGridData | DMGridData |
typedef struct DMGridAdjacency | DMGridAdjacency |
typedef enum DerivedMeshType | DerivedMeshType |
typedef struct DerivedMesh | DerivedMesh |
typedef float | EdgeVertWeight [SUB_ELEMS_EDGE][SUB_ELEMS_EDGE] |
typedef float | FaceVertWeight [SUB_ELEMS_FACE][SUB_ELEMS_FACE] |
typedef struct DMVertexAttribs | DMVertexAttribs |
Enumerations | |
enum | DerivedMeshType { DM_TYPE_CDDM, DM_TYPE_EDITMESH, DM_TYPE_CCGDM } |
Functions | |
void | DM_init_funcs (DerivedMesh *dm) |
void | DM_init (DerivedMesh *dm, DerivedMeshType type, int numVerts, int numEdges, int numFaces) |
void | DM_from_template (DerivedMesh *dm, DerivedMesh *source, DerivedMeshType type, int numVerts, int numEdges, int numFaces) |
int | DM_release (DerivedMesh *dm) |
void | DM_to_mesh (DerivedMesh *dm, struct Mesh *me) |
void | DM_to_meshkey (DerivedMesh *dm, struct Mesh *me, struct KeyBlock *kb) |
void | DM_set_only_copy (DerivedMesh *dm, CustomDataMask mask) |
void | DM_add_vert_layer (struct DerivedMesh *dm, int type, int alloctype, void *layer) |
void | DM_add_edge_layer (struct DerivedMesh *dm, int type, int alloctype, void *layer) |
void | DM_add_face_layer (struct DerivedMesh *dm, int type, int alloctype, void *layer) |
void * | DM_get_vert_data (struct DerivedMesh *dm, int index, int type) |
void * | DM_get_edge_data (struct DerivedMesh *dm, int index, int type) |
void * | DM_get_face_data (struct DerivedMesh *dm, int index, int type) |
void * | DM_get_vert_data_layer (struct DerivedMesh *dm, int type) |
void * | DM_get_edge_data_layer (struct DerivedMesh *dm, int type) |
void * | DM_get_face_data_layer (struct DerivedMesh *dm, int type) |
void | DM_set_vert_data (struct DerivedMesh *dm, int index, int type, void *data) |
void | DM_set_edge_data (struct DerivedMesh *dm, int index, int type, void *data) |
void | DM_set_face_data (struct DerivedMesh *dm, int index, int type, void *data) |
void | DM_copy_vert_data (struct DerivedMesh *source, struct DerivedMesh *dest, int source_index, int dest_index, int count) |
void | DM_copy_edge_data (struct DerivedMesh *source, struct DerivedMesh *dest, int source_index, int dest_index, int count) |
void | DM_copy_face_data (struct DerivedMesh *source, struct DerivedMesh *dest, int source_index, int dest_index, int count) |
void | DM_free_vert_data (struct DerivedMesh *dm, int index, int count) |
void | DM_free_edge_data (struct DerivedMesh *dm, int index, int count) |
void | DM_free_face_data (struct DerivedMesh *dm, int index, int count) |
void | DM_interp_vert_data (struct DerivedMesh *source, struct DerivedMesh *dest, int *src_indices, float *weights, int count, int dest_index) |
void | DM_interp_edge_data (struct DerivedMesh *source, struct DerivedMesh *dest, int *src_indices, float *weights, EdgeVertWeight *vert_weights, int count, int dest_index) |
void | DM_interp_face_data (struct DerivedMesh *source, struct DerivedMesh *dest, int *src_indices, float *weights, FaceVertWeight *vert_weights, int count, int dest_index) |
void | DM_swap_face_data (struct DerivedMesh *dm, int index, const int *corner_indices) |
void | vDM_ColorBand_store (struct ColorBand *coba) |
float * | mesh_get_mapped_verts_nors (struct Scene *scene, struct Object *ob) |
DerivedMesh * | mesh_get_derived_final (struct Scene *scene, struct Object *ob, CustomDataMask dataMask) |
DerivedMesh * | mesh_get_derived_deform (struct Scene *scene, struct Object *ob, CustomDataMask dataMask) |
DerivedMesh * | mesh_create_derived_for_modifier (struct Scene *scene, struct Object *ob, struct ModifierData *md) |
DerivedMesh * | mesh_create_derived_render (struct Scene *scene, struct Object *ob, CustomDataMask dataMask) |
DerivedMesh * | mesh_create_derived_index_render (struct Scene *scene, struct Object *ob, CustomDataMask dataMask, int index) |
DerivedMesh * | mesh_create_derived (struct Mesh *me, struct Object *ob, float(*vertCos)[3]) |
DerivedMesh * | mesh_create_derived_view (struct Scene *scene, struct Object *ob, CustomDataMask dataMask) |
DerivedMesh * | mesh_create_derived_no_deform (struct Scene *scene, struct Object *ob, float(*vertCos)[3], CustomDataMask dataMask) |
DerivedMesh * | mesh_create_derived_no_deform_render (struct Scene *scene, struct Object *ob, float(*vertCos)[3], CustomDataMask dataMask) |
DerivedMesh * | mesh_create_derived_no_virtual (struct Scene *scene, struct Object *ob, float(*vertCos)[3], CustomDataMask dataMask) |
DerivedMesh * | mesh_create_derived_physics (struct Scene *scene, struct Object *ob, float(*vertCos)[3], CustomDataMask dataMask) |
DerivedMesh * | editmesh_get_derived (struct EditMesh *em, float(*vertexCos)[3]) |
DerivedMesh * | editmesh_get_derived_base (struct Object *, struct EditMesh *em) |
DerivedMesh * | editmesh_get_derived_cage (struct Scene *scene, struct Object *, struct EditMesh *em, CustomDataMask dataMask) |
DerivedMesh * | editmesh_get_derived_cage_and_final (struct Scene *scene, struct Object *, struct EditMesh *em, DerivedMesh **final_r, CustomDataMask dataMask) |
float(* | editmesh_get_vertex_cos (struct EditMesh *em, int *numVerts_r))[3] |
int | editmesh_modifier_is_enabled (struct Scene *scene, struct ModifierData *md, DerivedMesh *dm) |
void | makeDerivedMesh (struct Scene *scene, struct Object *ob, struct EditMesh *em, CustomDataMask dataMask) |
int | editmesh_get_first_deform_matrices (struct Scene *, struct Object *, struct EditMesh *em, float(**deformmats)[3][3], float(**deformcos)[3]) |
int | sculpt_get_deform_matrices (struct Scene *scene, struct Object *ob, float(**deformmats)[3][3], float(**deformcos)[3]) |
void | weight_to_rgb (float r_rgb[3], const float weight) |
void | DM_vertex_attributes_from_gpu (DerivedMesh *dm, struct GPUVertexAttribs *gattribs, DMVertexAttribs *attribs) |
void | DM_add_tangent_layer (DerivedMesh *dm) |
void | DM_calc_auto_bump_scale (DerivedMesh *dm) |
void | DM_set_object_boundbox (struct Object *ob, DerivedMesh *dm) |
Definition in file BKE_DerivedMesh.h.
#define SUB_ELEMS_EDGE 2 |
Definition at line 68 of file BKE_DerivedMesh.h.
#define SUB_ELEMS_FACE 4 |
Definition at line 69 of file BKE_DerivedMesh.h.
#define SUB_ELEMS_VERT 0 |
Definition at line 67 of file BKE_DerivedMesh.h.
typedef struct DerivedMesh DerivedMesh |
Definition at line 87 of file BKE_DerivedMesh.h.
typedef enum DerivedMeshType DerivedMeshType |
typedef struct DMGridAdjacency DMGridAdjacency |
typedef struct DMGridData DMGridData |
typedef struct DMVertexAttribs DMVertexAttribs |
typedef float EdgeVertWeight[SUB_ELEMS_EDGE][SUB_ELEMS_EDGE] |
Definition at line 461 of file BKE_DerivedMesh.h.
typedef float FaceVertWeight[SUB_ELEMS_FACE][SUB_ELEMS_FACE] |
Definition at line 474 of file BKE_DerivedMesh.h.
enum DerivedMeshType |
Definition at line 81 of file BKE_DerivedMesh.h.
void DM_add_edge_layer | ( | struct DerivedMesh * | dm, |
int | type, | ||
int | alloctype, | ||
void * | layer | ||
) |
Definition at line 313 of file DerivedMesh.c.
References CustomData_add_layer(), DerivedMesh::edgeData, and DerivedMesh::numEdgeData.
Referenced by ccgDM_get_edge_data_layer(), and mesh_calc_modifiers().
void DM_add_face_layer | ( | struct DerivedMesh * | dm, |
int | type, | ||
int | alloctype, | ||
void * | layer | ||
) |
Definition at line 318 of file DerivedMesh.c.
References CustomData_add_layer(), DerivedMesh::faceData, and DerivedMesh::numFaceData.
Referenced by ccgDM_get_face_data_layer(), DM_add_tangent_layer(), editmesh_calc_modifiers(), emDM_getFaceDataArray(), and mesh_calc_modifiers().
void DM_add_tangent_layer | ( | DerivedMesh * | dm | ) |
Definition at line 1740 of file DerivedMesh.c.
References BLI_memarena_free(), BLI_memarena_new(), BLI_MEMARENA_STD_BUFSIZE, BLI_memarena_use_calloc(), CD_CALLOC, CD_MTFACE, CD_NORMAL, CD_ORCO, CD_TANGENT, MVert::co, CustomData_get_layer_index(), DM_add_face_layer(), DM_get_face_data_layer(), DerivedMesh::faceData, find_vertex_tangent(), genTangSpaceDefault(), DerivedMesh::getFaceArray, DerivedMesh::getFaceDataArray, GetNormal(), GetNumFaces(), DerivedMesh::getNumFaces, DerivedMesh::getNumVerts, GetNumVertsOfFace(), GetPosition(), GetTextureCoordinate(), DerivedMesh::getVertArray, DerivedMesh::getVertDataArray, i, len(), SMikkTSpaceInterface::m_getNormal, SMikkTSpaceInterface::m_getNumFaces, SMikkTSpaceInterface::m_getNumVerticesOfFace, SMikkTSpaceInterface::m_getPosition, SMikkTSpaceInterface::m_getTexCoord, SMikkTSpaceContext::m_pInterface, SMikkTSpaceContext::m_pUserData, SMikkTSpaceInterface::m_setTSpaceBasic, map_to_sphere(), MEM_callocN(), MEM_freeN(), SGLSLMeshToTangent::mface, SGLSLMeshToTangent::mtface, SGLSLMeshToTangent::mvert, normal_quad_v3(), normal_tri_v3(), normalize_v3_v3(), NULL, SGLSLMeshToTangent::numFaces, SGLSLMeshToTangent::orco, SGLSLMeshToTangent::precomputedFaceNormals, SetTSpace(), sum_or_add_vertex_tangent(), SGLSLMeshToTangent::tangent, tangent_from_uv(), MTFace::uv, MFace::v1, MFace::v2, MFace::v3, and MFace::v4.
Referenced by BL_ConvertMesh(), DM_vertex_attributes_from_gpu(), do_multires_bake(), and init_render_mesh().
void DM_add_vert_layer | ( | struct DerivedMesh * | dm, |
int | type, | ||
int | alloctype, | ||
void * | layer | ||
) |
Definition at line 308 of file DerivedMesh.c.
References CustomData_add_layer(), DerivedMesh::numVertData, and DerivedMesh::vertData.
Referenced by add_orco_dm(), ccgDM_get_vert_data_layer(), distribute_threads_init_data(), do_hair_dynamics(), editmesh_get_derived(), get_dm(), and mesh_calc_modifiers().
void DM_calc_auto_bump_scale | ( | DerivedMesh * | dm | ) |
Definition at line 1885 of file DerivedMesh.c.
References DerivedMesh::auto_bump_scale, CD_MTFACE, MVert::co, copy_v2_v2(), cross_v3_v3v3(), dot_v2v2(), dot_v3v3(), equals_v2v2(), equals_v3v3(), fabsf, DerivedMesh::getFaceArray, DerivedMesh::getFaceDataArray, DerivedMesh::getNumFaces, DerivedMesh::getVertArray, i, indices, len_v3(), norm(), offs, sqrtf, sub_v2_v2v2(), sub_v3_v3v3(), MTFace::uv, MFace::v1, MFace::v2, MFace::v3, and MFace::v4.
Referenced by DM_vertex_attributes_from_gpu().
void DM_copy_edge_data | ( | struct DerivedMesh * | source, |
struct DerivedMesh * | dest, | ||
int | source_index, | ||
int | dest_index, | ||
int | count | ||
) |
Definition at line 384 of file DerivedMesh.c.
References CustomData_copy_data(), and DerivedMesh::edgeData.
Referenced by applyModifier(), arrayModifier_doArray(), CDDM_from_smoothmesh(), and doMirrorOnAxis().
void DM_copy_face_data | ( | struct DerivedMesh * | source, |
struct DerivedMesh * | dest, | ||
int | source_index, | ||
int | dest_index, | ||
int | count | ||
) |
Definition at line 391 of file DerivedMesh.c.
References CustomData_copy_data(), and DerivedMesh::faceData.
Referenced by applyModifier(), arrayModifier_doArray(), CDDM_from_smoothmesh(), doMirrorOnAxis(), explodeMesh(), and get_dface().
void DM_copy_vert_data | ( | struct DerivedMesh * | source, |
struct DerivedMesh * | dest, | ||
int | source_index, | ||
int | dest_index, | ||
int | count | ||
) |
Definition at line 377 of file DerivedMesh.c.
References CustomData_copy_data(), and DerivedMesh::vertData.
Referenced by applyModifier(), arrayModifier_doArray(), CDDM_from_smoothmesh(), cutEdges(), doMirrorOnAxis(), explodeMesh(), and getCCGDerivedMesh().
void DM_free_edge_data | ( | struct DerivedMesh * | dm, |
int | index, | ||
int | count | ||
) |
Definition at line 403 of file DerivedMesh.c.
References CustomData_free_elem(), and DerivedMesh::edgeData.
void DM_free_face_data | ( | struct DerivedMesh * | dm, |
int | index, | ||
int | count | ||
) |
Definition at line 408 of file DerivedMesh.c.
References CustomData_free_elem(), and DerivedMesh::faceData.
Referenced by arrayModifier_doArray().
void DM_free_vert_data | ( | struct DerivedMesh * | dm, |
int | index, | ||
int | count | ||
) |
Definition at line 398 of file DerivedMesh.c.
References CustomData_free_elem(), and DerivedMesh::vertData.
Referenced by arrayModifier_doArray().
void DM_from_template | ( | DerivedMesh * | dm, |
DerivedMesh * | source, | ||
DerivedMeshType | type, | ||
int | numVerts, | ||
int | numEdges, | ||
int | numFaces | ||
) |
Definition at line 190 of file DerivedMesh.c.
References CD_CALLOC, CD_MASK_DERIVEDMESH, CustomData_copy(), DM_init_funcs(), DerivedMesh::edgeData, DerivedMesh::faceData, DerivedMesh::needsFree, DerivedMesh::numEdgeData, DerivedMesh::numFaceData, DerivedMesh::numVertData, DerivedMesh::type, and DerivedMesh::vertData.
Referenced by CDDM_copy(), CDDM_from_template(), and getCCGDerivedMesh().
void* DM_get_edge_data | ( | struct DerivedMesh * | dm, |
int | index, | ||
int | type | ||
) |
Definition at line 328 of file DerivedMesh.c.
References CustomData_get(), and DerivedMesh::edgeData.
Referenced by cdDM_create(), DM_init_funcs(), and getCCGDerivedMesh().
void* DM_get_edge_data_layer | ( | struct DerivedMesh * | dm, |
int | type | ||
) |
Definition at line 346 of file DerivedMesh.c.
References CD_MEDGE, CustomData_get_layer(), DerivedMesh::edgeData, and DerivedMesh::getEdgeArray.
Referenced by ccgDM_get_edge_data_layer(), cdDM_create(), cdDM_drawMappedEdges(), cdDM_foreachMappedEdge(), DM_init_funcs(), and mesh_calc_modifiers().
void* DM_get_face_data | ( | struct DerivedMesh * | dm, |
int | index, | ||
int | type | ||
) |
Definition at line 333 of file DerivedMesh.c.
References CustomData_get(), and DerivedMesh::faceData.
Referenced by cdDM_create(), DM_init_funcs(), and getCCGDerivedMesh().
void* DM_get_face_data_layer | ( | struct DerivedMesh * | dm, |
int | type | ||
) |
Definition at line 354 of file DerivedMesh.c.
References CD_MFACE, CustomData_get_layer(), DerivedMesh::faceData, and DerivedMesh::getFaceArray.
Referenced by add_tface_color_layer(), ccgDM_drawFacesTex_common(), ccgDM_drawUVEdges(), ccgDM_get_face_data_layer(), cdDM_create(), cdDM_drawFacesTex_common(), cdDM_drawMappedFaces(), cdDM_drawUVEdges(), cdDM_foreachMappedFaceCenter(), DM_add_tangent_layer(), DM_init_funcs(), do_multires_bake(), draw_dm_faces_sel(), draw_mesh_fancy(), draw_mesh_textured_old(), emDM_getFaceDataArray(), gpu_buffer_color_type(), GPU_buffer_copy_uv(), GPU_buffer_copy_uvedge(), gpu_buffer_setup_type(), and mesh_calc_modifiers().
void* DM_get_vert_data | ( | struct DerivedMesh * | dm, |
int | index, | ||
int | type | ||
) |
Definition at line 323 of file DerivedMesh.c.
References CustomData_get(), and DerivedMesh::vertData.
Referenced by cdDM_create(), DM_init_funcs(), doMirrorOnAxis(), and getCCGDerivedMesh().
void* DM_get_vert_data_layer | ( | struct DerivedMesh * | dm, |
int | type | ||
) |
Definition at line 338 of file DerivedMesh.c.
References CD_MVERT, CustomData_get_layer(), DerivedMesh::getVertArray, and DerivedMesh::vertData.
Referenced by add_orco_dm(), ccgDM_get_vert_data_layer(), cdDM_create(), cdDM_foreachMappedVert(), DM_init_funcs(), do_hair_dynamics(), mesh_calc_modifiers(), psys_face_mat(), and psys_mat_hair_to_orco().
void DM_init | ( | DerivedMesh * | dm, |
DerivedMeshType | type, | ||
int | numVerts, | ||
int | numEdges, | ||
int | numFaces | ||
) |
Definition at line 176 of file DerivedMesh.c.
References DerivedMesh::auto_bump_scale, DM_init_funcs(), DerivedMesh::needsFree, DerivedMesh::numEdgeData, DerivedMesh::numFaceData, DerivedMesh::numVertData, and DerivedMesh::type.
Referenced by CDDM_from_mesh(), CDDM_new(), and editmesh_get_derived().
void DM_init_funcs | ( | DerivedMesh * | dm | ) |
Definition at line 156 of file DerivedMesh.c.
References DerivedMesh::bvhCache, bvhcache_init(), dm_dupEdgeArray(), dm_dupFaceArray(), dm_dupVertArray(), DM_get_edge_data(), DM_get_edge_data_layer(), DM_get_face_data(), DM_get_face_data_layer(), DM_get_vert_data(), DM_get_vert_data_layer(), dm_getEdgeArray(), dm_getFaceArray(), dm_getVertArray(), DerivedMesh::dupEdgeArray, DerivedMesh::dupFaceArray, DerivedMesh::dupVertArray, DerivedMesh::getEdgeArray, DerivedMesh::getEdgeData, DerivedMesh::getEdgeDataArray, DerivedMesh::getFaceArray, DerivedMesh::getFaceData, DerivedMesh::getFaceDataArray, DerivedMesh::getVertArray, DerivedMesh::getVertData, and DerivedMesh::getVertDataArray.
Referenced by DM_from_template(), and DM_init().
void DM_interp_edge_data | ( | struct DerivedMesh * | source, |
struct DerivedMesh * | dest, | ||
int * | src_indices, | ||
float * | weights, | ||
EdgeVertWeight * | vert_weights, | ||
int | count, | ||
int | dest_index | ||
) |
Definition at line 421 of file DerivedMesh.c.
References CustomData_interp(), and DerivedMesh::edgeData.
void DM_interp_face_data | ( | struct DerivedMesh * | source, |
struct DerivedMesh * | dest, | ||
int * | src_indices, | ||
float * | weights, | ||
FaceVertWeight * | vert_weights, | ||
int | count, | ||
int | dest_index | ||
) |
Definition at line 430 of file DerivedMesh.c.
References CustomData_interp(), and DerivedMesh::faceData.
Referenced by getCCGDerivedMesh().
void DM_interp_vert_data | ( | struct DerivedMesh * | source, |
struct DerivedMesh * | dest, | ||
int * | src_indices, | ||
float * | weights, | ||
int | count, | ||
int | dest_index | ||
) |
Definition at line 413 of file DerivedMesh.c.
References CustomData_interp(), NULL, and DerivedMesh::vertData.
Referenced by getCCGDerivedMesh().
int DM_release | ( | DerivedMesh * | dm | ) |
Definition at line 210 of file DerivedMesh.c.
References DerivedMesh::bvhCache, bvhcache_free(), CustomData_free(), CustomData_free_temporary(), DerivedMesh::edgeData, DerivedMesh::faceData, GPU_drawobject_free(), DerivedMesh::needsFree, DerivedMesh::numEdgeData, DerivedMesh::numFaceData, DerivedMesh::numVertData, and DerivedMesh::vertData.
Referenced by ccgDM_release(), cdDM_release(), and emDM_release().
void DM_set_edge_data | ( | struct DerivedMesh * | dm, |
int | index, | ||
int | type, | ||
void * | data | ||
) |
Definition at line 367 of file DerivedMesh.c.
References CustomData_set(), and DerivedMesh::edgeData.
void DM_set_face_data | ( | struct DerivedMesh * | dm, |
int | index, | ||
int | type, | ||
void * | data | ||
) |
Definition at line 372 of file DerivedMesh.c.
References CustomData_set(), and DerivedMesh::faceData.
void DM_set_object_boundbox | ( | struct Object * | ob, |
DerivedMesh * | dm | ||
) |
Definition at line 2131 of file DerivedMesh.c.
References Object::bb, boundbox_set_from_min_max(), DerivedMesh::getMinMax, INIT_MINMAX, max, MEM_callocN(), and min.
Referenced by editmesh_build_data(), makeDispListCurveTypes(), and mesh_build_data().
void DM_set_only_copy | ( | DerivedMesh * | dm, |
CustomDataMask | mask | ||
) |
Definition at line 301 of file DerivedMesh.c.
References CustomData_set_only_copy(), DerivedMesh::edgeData, DerivedMesh::faceData, and DerivedMesh::vertData.
Referenced by editmesh_calc_modifiers(), mesh_calc_modifiers(), multires_subdivide(), multiresModifier_base_apply(), and multiresModifier_update().
void DM_set_vert_data | ( | struct DerivedMesh * | dm, |
int | index, | ||
int | type, | ||
void * | data | ||
) |
Definition at line 362 of file DerivedMesh.c.
References CustomData_set(), and DerivedMesh::vertData.
Referenced by editmesh_get_derived().
void DM_swap_face_data | ( | struct DerivedMesh * | dm, |
int | index, | ||
const int * | corner_indices | ||
) |
Definition at line 439 of file DerivedMesh.c.
References CustomData_swap(), and DerivedMesh::faceData.
Referenced by applyModifier(), and doMirrorOnAxis().
void DM_to_mesh | ( | DerivedMesh * | dm, |
struct Mesh * | me | ||
) |
Definition at line 230 of file DerivedMesh.c.
References CD_ASSIGN, CD_DUPLICATE, CD_MASK_MESH, CD_MDISPS, CD_MEDGE, CD_MFACE, CD_MVERT, CustomData_add_layer(), CustomData_copy(), CustomData_free(), CustomData_get_layer(), CustomData_has_layer(), DerivedMesh::dupEdgeArray, DerivedMesh::dupFaceArray, DerivedMesh::dupVertArray, DerivedMesh::edgeData, DerivedMesh::faceData, Mesh::fdata, DerivedMesh::getNumEdges, DerivedMesh::getNumFaces, DerivedMesh::getNumVerts, Key::id, Mesh::key, mesh_update_customdata_pointers(), NULL, Mesh::totedge, Mesh::totface, Mesh::totvert, ID::us, and DerivedMesh::vertData.
Referenced by convert_exec(), modifier_apply_obdata(), NewBooleanMesh(), and nurbs_to_mesh().
void DM_to_meshkey | ( | DerivedMesh * | dm, |
struct Mesh * | me, | ||
struct KeyBlock * | kb | ||
) |
Definition at line 281 of file DerivedMesh.c.
References CD_MVERT, MVert::co, copy_v3_v3(), KeyBlock::data, Key::elemsize, DerivedMesh::getNumVerts, DerivedMesh::getVertDataArray, Mesh::key, MEM_callocN(), MEM_freeN(), KeyBlock::totelem, and Mesh::totvert.
Referenced by join_mesh_shapes_exec(), and modifier_apply_shape().
void DM_vertex_attributes_from_gpu | ( | DerivedMesh * | dm, |
struct GPUVertexAttribs * | gattribs, | ||
DMVertexAttribs * | attribs | ||
) |
Definition at line 2038 of file DerivedMesh.c.
References DMVertexAttribs::array, DerivedMesh::auto_bump_scale, CD_MCOL, CD_MTFACE, CD_ORCO, CD_TANGENT, CustomData_get_active_layer_index(), CustomData_get_layer_index(), CustomData_get_named_layer_index(), CustomDataLayer::data, DM_add_tangent_layer(), DM_calc_auto_bump_scale(), DM_TYPE_EDITMESH, DMVertexAttribs::emOffset, DerivedMesh::faceData, GPUVertexAttribs::glindex, DMVertexAttribs::glIndex, GPUVertexAttribs::gltexco, DMVertexAttribs::glTexco, GPUVertexAttribs::layer, CustomData::layers, DMVertexAttribs::mcol, GPUVertexAttribs::name, NULL, CustomDataLayer::offset, DMVertexAttribs::orco, DMVertexAttribs::tang, DMVertexAttribs::tface, GPUVertexAttribs::totlayer, DMVertexAttribs::totmcol, DMVertexAttribs::totorco, DMVertexAttribs::tottang, DMVertexAttribs::tottface, DerivedMesh::type, GPUVertexAttribs::type, and DerivedMesh::vertData.
Referenced by ccgDM_drawMappedFacesGLSL(), ccgDM_drawMappedFacesMat(), cdDM_drawMappedFacesGLSL(), cdDM_drawMappedFacesMat(), emDM_drawMappedFacesGLSL(), and emDM_drawMappedFacesMat().
DerivedMesh* editmesh_get_derived | ( | struct EditMesh * | em, |
float(*) | vertexCos[3] | ||
) |
Definition at line 1193 of file editderivedmesh.c.
References add_v3_v3(), BLI_countlist(), CD_CALLOC, CD_MDEFORMVERT, DerivedMesh::copyEdgeArray, DerivedMesh::copyFaceArray, DerivedMesh::copyVertArray, CustomData_em_get(), CustomData_has_layer(), EditVert::data, EditMeshDerivedMesh::dm, DM_add_vert_layer(), DM_init(), DM_set_vert_data(), DM_TYPE_EDITMESH, DerivedMesh::drawEdges, DerivedMesh::drawFacesGLSL, DerivedMesh::drawFacesTex, DerivedMesh::drawMappedEdges, DerivedMesh::drawMappedEdgesInterp, DerivedMesh::drawMappedFaces, DerivedMesh::drawMappedFacesGLSL, DerivedMesh::drawMappedFacesMat, DerivedMesh::drawMappedFacesTex, DerivedMesh::drawUVEdges, EditMesh::edges, EditMeshDerivedMesh::em, emDM_copyEdgeArray(), emDM_copyFaceArray(), emDM_copyVertArray(), emDM_drawEdges(), emDM_drawFacesGLSL(), emDM_drawFacesTex(), emDM_drawMappedEdges(), emDM_drawMappedEdgesInterp(), emDM_drawMappedFaces(), emDM_drawMappedFacesGLSL(), emDM_drawMappedFacesMat(), emDM_drawMappedFacesTex(), emDM_drawUVEdges(), emDM_foreachMappedEdge(), emDM_foreachMappedFaceCenter(), emDM_foreachMappedVert(), emDM_getEdge(), emDM_getFace(), emDM_getFaceDataArray(), emDM_getMinMax(), emDM_getNumEdges(), emDM_getNumFaces(), emDM_getNumVerts(), emDM_getVert(), emDM_getVertCos(), emDM_release(), EditMeshDerivedMesh::faceNos, EditMesh::faces, ListBase::first, DerivedMesh::foreachMappedEdge, DerivedMesh::foreachMappedFaceCenter, DerivedMesh::foreachMappedVert, DerivedMesh::getEdge, DerivedMesh::getFace, DerivedMesh::getFaceDataArray, DerivedMesh::getMinMax, DerivedMesh::getNumEdges, DerivedMesh::getNumFaces, DerivedMesh::getNumVerts, DerivedMesh::getVert, DerivedMesh::getVertCos, i, if(), EditVert::l, MEM_callocN(), MEM_mallocN(), EditFace::next, EditVert::next, normal_quad_v3(), normal_tri_v3(), normalize_v3(), normalize_v3_v3(), NULL, DerivedMesh::release, EditVert::tmp, EditFace::v1, EditFace::v2, EditFace::v3, EditFace::v4, EditMesh::vdata, EditMeshDerivedMesh::vertexCos, EditMeshDerivedMesh::vertexNos, and EditMesh::verts.
Referenced by editmesh_calc_modifiers(), editmesh_get_derived_base(), and editmesh_get_first_deform_matrices().
DerivedMesh* editmesh_get_derived_base | ( | struct Object * | , |
struct EditMesh * | em | ||
) |
Referenced by draw_mesh_object(), draw_object_mesh_instance(), and snapObject().
DerivedMesh* editmesh_get_derived_cage | ( | struct Scene * | scene, |
struct Object * | , | ||
struct EditMesh * | em, | ||
CustomDataMask | dataMask | ||
) |
Definition at line 1574 of file DerivedMesh.c.
References EditMesh::derivedCage, editmesh_build_data(), and EditMesh::lastDataMask.
Referenced by crazyspace_get_mapped_editverts(), draw_object_backbufsel(), face_duplilist(), mesh_foreachScreenEdge(), mesh_foreachScreenFace(), mesh_foreachScreenVert(), peelObjects(), and vertex_duplilist().
DerivedMesh* editmesh_get_derived_cage_and_final | ( | struct Scene * | scene, |
struct Object * | , | ||
struct EditMesh * | em, | ||
DerivedMesh ** | final_r, | ||
CustomDataMask | dataMask | ||
) |
Definition at line 1560 of file DerivedMesh.c.
References EditMesh::derivedCage, EditMesh::derivedFinal, editmesh_build_data(), and EditMesh::lastDataMask.
Referenced by draw_mesh_object(), draw_uvs(), and meshdeformModifier_do().
int editmesh_get_first_deform_matrices | ( | struct Scene * | , |
struct Object * | , | ||
struct EditMesh * | em, | ||
float(**) | deformmats[3][3], | ||
float(**) | deformcos[3] | ||
) |
Definition at line 270 of file crazyspace.c.
References ModifierTypeInfo::deformMatricesEM, editmesh_get_derived(), editmesh_get_vertex_cos(), editmesh_modifier_is_enabled(), eModifierTypeType_OnlyDeform, i, MEM_callocN(), modifier_isCorrectableDeformed(), modifiers_clearErrors(), modifiers_getCageIndex(), modifiers_getVirtualModifierList(), modifierType_getInfo(), mti, ModifierData::next, NULL, DerivedMesh::release, ModifierTypeInfo::type, and unit_m3().
Referenced by createTransEditVerts().
float(* editmesh_get_vertex_cos | ( | struct EditMesh * | em, |
int * | numVerts_r | ||
) | )[3] |
Definition at line 1166 of file DerivedMesh.c.
References BLI_countlist(), EditVert::co, copy_v3_v3(), cos(), i, MEM_mallocN(), and next.
Referenced by editmesh_calc_modifiers(), and editmesh_get_first_deform_matrices().
int editmesh_modifier_is_enabled | ( | struct Scene * | scene, |
struct ModifierData * | md, | ||
DerivedMesh * | dm | ||
) |
Definition at line 1180 of file DerivedMesh.c.
References eModifierMode_Editmode, eModifierMode_Realtime, eModifierTypeFlag_RequiresOriginalData, ModifierTypeInfo::flags, modifier_isEnabled(), modifier_setError(), modifierType_getInfo(), mti, and ModifierData::type.
Referenced by editmesh_calc_modifiers(), and editmesh_get_first_deform_matrices().
void makeDerivedMesh | ( | struct Scene * | scene, |
struct Object * | ob, | ||
struct EditMesh * | em, | ||
CustomDataMask | dataMask | ||
) |
Definition at line 1457 of file DerivedMesh.c.
References editmesh_build_data(), and mesh_build_data().
Referenced by crazyspace_get_mapped_editverts(), object_handle_update(), and vertex_parent_set_exec().
DerivedMesh* mesh_create_derived | ( | struct Mesh * | me, |
struct Object * | ob, | ||
float(*) | vertCos[3] | ||
) |
Definition at line 446 of file DerivedMesh.c.
References CDDM_apply_vert_coords(), CDDM_calc_normals(), CDDM_from_mesh(), and NULL.
Referenced by mesh_create_derived_for_modifier(), and sculpt_get_first_deform_matrices().
DerivedMesh* mesh_create_derived_for_modifier | ( | struct Scene * | scene, |
struct Object * | ob, | ||
struct ModifierData * | md | ||
) |
Definition at line 461 of file DerivedMesh.c.
References ModifierTypeInfo::applyModifier, Object::data, ModifierTypeInfo::deformVerts, eModifierMode_Realtime, eModifierTypeType_OnlyDeform, ModifierTypeInfo::isDisabled, MEM_freeN(), mesh_create_derived(), mesh_getVertexCos(), ModifierData::mode, modifierType_getInfo(), mti, NULL, DerivedMesh::release, ModifierData::scene, ModifierTypeInfo::type, and ModifierData::type.
Referenced by modifier_apply_obdata(), and modifier_apply_shape().
DerivedMesh* mesh_create_derived_index_render | ( | struct Scene * | scene, |
struct Object * | ob, | ||
CustomDataMask | dataMask, | ||
int | index | ||
) |
Definition at line 1499 of file DerivedMesh.c.
References mesh_calc_modifiers(), and NULL.
Referenced by initElbeemMesh().
DerivedMesh* mesh_create_derived_no_deform | ( | struct Scene * | scene, |
struct Object * | ob, | ||
float(*) | vertCos[3], | ||
CustomDataMask | dataMask | ||
) |
Definition at line 1517 of file DerivedMesh.c.
References mesh_calc_modifiers(), and NULL.
Referenced by mesh_deform_bind().
DerivedMesh* mesh_create_derived_no_deform_render | ( | struct Scene * | scene, |
struct Object * | ob, | ||
float(*) | vertCos[3], | ||
CustomDataMask | dataMask | ||
) |
Definition at line 1547 of file DerivedMesh.c.
References mesh_calc_modifiers(), and NULL.
DerivedMesh* mesh_create_derived_no_virtual | ( | struct Scene * | scene, |
struct Object * | ob, | ||
float(*) | vertCos[3], | ||
CustomDataMask | dataMask | ||
) |
Definition at line 1527 of file DerivedMesh.c.
References mesh_calc_modifiers(), and NULL.
Referenced by KX_NavMeshObject::BuildVertIndArrays(), createVertsTrisData(), and BL_ModifierDeformer::Update().
DerivedMesh* mesh_create_derived_physics | ( | struct Scene * | scene, |
struct Object * | ob, | ||
float(*) | vertCos[3], | ||
CustomDataMask | dataMask | ||
) |
Definition at line 1537 of file DerivedMesh.c.
References mesh_calc_modifiers(), and NULL.
Referenced by BL_ModifierDeformer::GetPhysicsMesh().
DerivedMesh* mesh_create_derived_render | ( | struct Scene * | scene, |
struct Object * | ob, | ||
CustomDataMask | dataMask | ||
) |
Definition at line 1490 of file DerivedMesh.c.
References mesh_calc_modifiers(), and NULL.
Referenced by dupli_render_particle_set(), init_render_mesh(), init_render_object_data(), object_handle_update(), pointdensity_cache_object(), pointdensity_cache_psys(), and project_paint_begin().
DerivedMesh* mesh_create_derived_view | ( | struct Scene * | scene, |
struct Object * | ob, | ||
CustomDataMask | dataMask | ||
) |
Definition at line 1508 of file DerivedMesh.c.
References mesh_calc_modifiers(), and NULL.
Referenced by meshdeform_bind_exec(), and NewBooleanMesh().
DerivedMesh* mesh_get_derived_deform | ( | struct Scene * | scene, |
struct Object * | ob, | ||
CustomDataMask | dataMask | ||
) |
Definition at line 1479 of file DerivedMesh.c.
References Object::derivedDeform, Object::lastDataMask, and mesh_build_data().
Referenced by brush_add(), connect_hair(), dm_deform_recalc(), draw_mesh_text(), face_duplilist(), get_multires_dm(), join_mesh_shapes_exec(), multires_apply_smat(), particle_intersect_dm(), vertex_duplilist(), and vgroup_fix().
DerivedMesh* mesh_get_derived_final | ( | struct Scene * | scene, |
struct Object * | ob, | ||
CustomDataMask | dataMask | ||
) |
Definition at line 1468 of file DerivedMesh.c.
References Object::derivedFinal, Object::lastDataMask, and mesh_build_data().
Referenced by add_verts_to_dgroups(), bbs_mesh_solid(), convert_exec(), draw_mesh_fancy(), draw_object_backbufsel(), draw_object_mesh_instance(), imapaint_pick_uv(), mesh_get_mapped_verts_nors(), mesh_to_curve(), multiresModifier_reshape(), NewBooleanMesh(), GeometryExporter::operator()(), particle_intersect_dm(), peelObjects(), project_paint_begin(), sculpt_undo_restore(), sculpt_update_mesh_elements(), snapObject(), and weight_sample_invoke().
Definition at line 1618 of file DerivedMesh.c.
References CD_MASK_BAREMESH, Object::data, DerivedMesh::foreachMappedVert, DerivedMesh::getVertCo, DerivedMesh::getVertNo, make_vertexcosnos__mapFunc(), MEM_callocN(), mesh_get_derived_final(), NULL, OB_MESH, DerivedMesh::release, Mesh::totvert, and Object::type.
Referenced by vpaint_stroke_test_start(), and wpaint_stroke_test_start().
int sculpt_get_deform_matrices | ( | struct Scene * | scene, |
struct Object * | ob, | ||
float(**) | deformmats[3][3], | ||
float(**) | deformcos[3] | ||
) |
void vDM_ColorBand_store | ( | struct ColorBand * | coba | ) |
Definition at line 715 of file DerivedMesh.c.
Referenced by init_userdef_do_versions().
void weight_to_rgb | ( | float | r_rgb[3], |
const float | weight | ||
) |
Definition at line 606 of file DerivedMesh.c.
References blend().
Referenced by draw_new_particle_system(), draw_uvs_stretch(), drawlattice__point(), dynamicPaint_Modifier_apply(), psys_cache_edit_paths(), and weightpaint_color().