|
Blender
V2.93
|
CustomData interface, see also DNA_customdata_types.h. More...
Go to the source code of this file.
Classes | |
| struct | CDBlockBytes |
| struct | CustomDataTransferLayerMap |
Macros | |
| #define | ORIGINDEX_NONE -1 |
| #define | CD_TYPE_AS_MASK(_type) (CustomDataMask)((CustomDataMask)1 << (CustomDataMask)(_type)) |
Typedefs | |
| typedef uint64_t | CustomDataMask |
| typedef enum eCDAllocType | eCDAllocType |
| typedef void(* | cd_interp) (const void **sources, const float *weights, const float *sub_weights, int count, void *dest) |
| typedef void(* | cd_copy) (const void *source, void *dest, int count) |
| typedef bool(* | cd_validate) (void *item, const uint totitems, const bool do_fixes) |
| typedef void(* | cd_datatransfer_interp) (const struct CustomDataTransferLayerMap *laymap, void *dest, const void **sources, const float *weights, const int count, const float mix_factor) |
| typedef struct CustomDataTransferLayerMap | CustomDataTransferLayerMap |
Enumerations | |
| enum | eCDAllocType { CD_ASSIGN = 0 , CD_CALLOC = 1 , CD_DEFAULT = 2 , CD_REFERENCE = 3 , CD_DUPLICATE = 4 } |
| enum | { CD_FAKE = 1 << 8 , CD_FAKE_MDEFORMVERT = CD_FAKE | CD_MDEFORMVERT , CD_FAKE_SHAPEKEY , CD_FAKE_SEAM = CD_FAKE | 100 , CD_FAKE_CREASE = CD_FAKE | CD_CREASE , CD_FAKE_BWEIGHT = CD_FAKE | CD_BWEIGHT , CD_FAKE_UV , CD_FAKE_LNOR , CD_FAKE_SHARP = CD_FAKE | 200 } |
| enum | { ME_VERT = 1 << 0 , ME_EDGE = 1 << 1 , ME_POLY = 1 << 2 , ME_LOOP = 1 << 3 } |
| enum | { CDT_MIX_NOMIX = -1 , CDT_MIX_TRANSFER = 0 , CDT_MIX_REPLACE_ABOVE_THRESHOLD = 1 , CDT_MIX_REPLACE_BELOW_THRESHOLD = 2 , CDT_MIX_MIX = 16 , CDT_MIX_ADD = 17 , CDT_MIX_SUB = 18 , CDT_MIX_MUL = 19 } |
CustomData interface, see also DNA_customdata_types.h.
Definition in file BKE_customdata.h.
| #define CD_TYPE_AS_MASK | ( | _type | ) | (CustomDataMask)((CustomDataMask)1 << (CustomDataMask)(_type)) |
Definition at line 79 of file BKE_customdata.h.
| #define ORIGINDEX_NONE -1 |
Definition at line 59 of file BKE_customdata.h.
| typedef void(* cd_copy) (const void *source, void *dest, int count) |
Definition at line 85 of file BKE_customdata.h.
| typedef void(* cd_datatransfer_interp) (const struct CustomDataTransferLayerMap *laymap, void *dest, const void **sources, const float *weights, const int count, const float mix_factor) |
Definition at line 490 of file BKE_customdata.h.
| typedef void(* cd_interp) (const void **sources, const float *weights, const float *sub_weights, int count, void *dest) |
Definition at line 83 of file BKE_customdata.h.
| typedef bool(* cd_validate) (void *item, const uint totitems, const bool do_fixes) |
Definition at line 86 of file BKE_customdata.h.
| typedef uint64_t CustomDataMask |
Definition at line 42 of file BKE_customdata.h.
| typedef struct CustomDataTransferLayerMap CustomDataTransferLayerMap |
| typedef enum eCDAllocType eCDAllocType |
Add/copy/merge allocation types.
| anonymous enum |
How to filter out some elements (to leave untouched). Note those options are highly dependent on type of transferred data!
| Enumerator | |
|---|---|
| CDT_MIX_NOMIX | |
| CDT_MIX_TRANSFER | |
| CDT_MIX_REPLACE_ABOVE_THRESHOLD | |
| CDT_MIX_REPLACE_BELOW_THRESHOLD | |
| CDT_MIX_MIX | |
| CDT_MIX_ADD | |
| CDT_MIX_SUB | |
| CDT_MIX_MUL | |
Definition at line 533 of file BKE_customdata.h.
| anonymous enum |
Fake CD_LAYERS (those are actually 'real' data stored directly into elements' structs, or otherwise not (directly) accessible to usual CDLayer system).
| Enumerator | |
|---|---|
| CD_FAKE | |
| CD_FAKE_MDEFORMVERT | |
| CD_FAKE_SHAPEKEY | |
| CD_FAKE_SEAM | |
| CD_FAKE_CREASE | |
| CD_FAKE_BWEIGHT | |
| CD_FAKE_UV | |
| CD_FAKE_LNOR | |
| CD_FAKE_SHARP | |
Definition at line 500 of file BKE_customdata.h.
| anonymous enum |
| Enumerator | |
|---|---|
| ME_VERT | |
| ME_EDGE | |
| ME_POLY | |
| ME_LOOP | |
Definition at line 523 of file BKE_customdata.h.
| enum eCDAllocType |
Add/copy/merge allocation types.
Definition at line 66 of file BKE_customdata.h.
| void* CustomData_add_layer | ( | struct CustomData * | data, |
| int | type, | ||
| eCDAllocType | alloctype, | ||
| void * | layer, | ||
| int | totelem | ||
| ) |
Definition at line 2620 of file customdata.c.
References customData_add_layer__internal(), CustomData_update_typemap(), data, CustomDataLayer::data, LayerTypeInfo::defaultname, layerType_getInfo(), NULL, and type.
Referenced by add_orco_mesh(), BKE_mesh_calc_edges(), BKE_mesh_calc_edges_legacy(), BKE_mesh_calc_edges_tessface(), BKE_mesh_calc_normals_split_ex(), BKE_mesh_convert_mfaces_to_mpolys_ex(), BKE_mesh_ensure_facemap_customdata(), BKE_mesh_ensure_normals_for_display(), BKE_mesh_ensure_skin_customdata(), BKE_mesh_from_metaball(), BKE_mesh_from_nurbs_displist(), BKE_mesh_from_pointcloud(), BKE_mesh_nomain_to_mesh(), BKE_mesh_remap_calc_loops_from_mesh(), BKE_mesh_remap_calc_polys_from_mesh(), BKE_mesh_remesh_reproject_paint_mask(), BKE_mesh_tessface_calc_ex(), BKE_object_defgroup_data_create(), BKE_remesh_reproject_sculpt_face_sets(), BKE_sculpt_color_layer_create_if_needed(), BKE_sculpt_face_sets_ensure_from_base_mesh_visibility(), BKE_sculpt_mask_layers_ensure(), BM_data_layer_add(), BM_mesh_bm_from_me(), BM_mesh_bm_to_me(), BM_mesh_bm_to_me_for_eval(), CDDM_copy(), copy_ccg_data(), customdata_version_242(), data_transfer_dtdata_type_postprocess(), data_transfer_dtdata_type_preprocess(), data_transfer_layersmapping_cdlayers(), data_transfer_layersmapping_cdlayers_multisrc_to_dst(), data_transfer_layersmapping_vgroups(), data_transfer_layersmapping_vgroups_multisrc_to_dst(), deformVerts(), DM_add_edge_layer(), DM_add_loop_layer(), DM_add_poly_layer(), DM_add_tessface_layer(), DM_add_vert_layer(), DM_DupPolys(), dm_getEdgeArray(), dm_getLoopArray(), dm_getPolyArray(), dm_getTessFaceArray(), dm_getVertArray(), dynamicPaint_Modifier_apply(), ED_mesh_join_objects_exec(), ED_object_facemap_face_add(), ED_object_modifier_convert(), editbmesh_calc_modifier_final_normals(), editbmesh_calc_modifiers(), Freestyle::BlenderStrokeRenderer::GenerateStrokeMesh(), hair_create_input_mesh(), hair_init_data(), mesh_add_edges(), mesh_add_loops(), mesh_add_polys(), mesh_add_verts(), mesh_calc_modifier_final_normals(), mesh_calc_modifiers(), mesh_customdata_custom_splitnormals_add_exec(), mesh_ensure_cdlayers_primary(), mesh_set_custom_normals(), MOD_deform_mesh_eval_get(), MOD_solidify_extrude_modifyMesh(), modifier_skin_armature_create(), modifyMesh(), multires_create_grids_in_unsubdivided_base_mesh(), multires_ensure_external_read(), multires_subdivide_create_tangent_displacement_linear_grids(), multiresModifier_disp_run(), multiresModifier_subdivide_to_level(), normalEditModifier_do(), psys_thread_context_init_distribute(), SCULPT_dynamic_topology_disable_ex(), skin_set_orig_indices(), and blender::bke::BuiltinCustomDataLayerProvider::try_create().
| void* CustomData_add_layer_named | ( | struct CustomData * | data, |
| int | type, | ||
| eCDAllocType | alloctype, | ||
| void * | layer, | ||
| int | totelem, | ||
| const char * | name | ||
| ) |
Definition at line 2637 of file customdata.c.
References customData_add_layer__internal(), CustomData_update_typemap(), data, CustomDataLayer::data, NULL, and type.
Referenced by blender::io::alembic::add_customdata_cb(), add_shapekey_layers(), BKE_editmesh_loop_tangent_calc(), BKE_id_attribute_new(), BKE_mesh_add_loop_tangent_named_layer_for_uv(), BKE_mesh_calc_loop_tangent_ex(), BKE_mesh_from_nurbs_displist(), BKE_mesh_new_nomain_from_curve_displist(), BKE_pointcloud_add_default(), BKE_pointcloud_new_nomain(), BKE_remesh_reproject_vertex_paint(), BM_data_layer_add_named(), BM_mesh_bm_from_me(), BM_mesh_copy_init_customdata_all_layers(), CustomData_from_bmeshpoly(), CustomData_to_bmeshpoly(), data_transfer_layersmapping_cdlayers(), data_transfer_layersmapping_cdlayers_multisrc_to_dst(), dynamicPaint_Modifier_apply(), ED_mesh_color_add(), ED_mesh_color_ensure(), ED_mesh_sculpt_color_add(), ED_mesh_sculpt_color_ensure(), ED_mesh_uv_texture_add(), Freestyle::BlenderStrokeRenderer::GenerateStrokeMesh(), hair_init_data(), multires_unsubdivide_add_original_index_datalayers(), pointcloud_init_data(), blender::bke::CustomDataAttributeProvider::try_create(), and uvprojectModifier_do().
| void CustomData_blend_read | ( | struct BlendDataReader * | reader, |
| struct CustomData * | data, | ||
| int | count | ||
| ) |
Definition at line 5180 of file customdata.c.
References blend_read_mdisps(), blend_read_paint_mask(), BLO_read_data_address, CD_FLAG_EXTERNAL, CD_FLAG_IN_MEMORY, CD_FLAG_NOFREE, CD_GRID_PAINT_MASK, CD_MDISPS, CD_PROP_BOOL, CLOG_WARN, count, CustomData_reset(), CustomData_update_typemap(), CustomData_verify_versions(), data, CustomDataLayer::data, CustomDataLayer::flag, layerType_getInfo(), layerType_getName(), LOG, MEM_calloc_arrayN, NULL, LayerTypeInfo::set_default, LayerTypeInfo::size, CustomDataLayer::type, and UNLIKELY.
Referenced by hair_blend_read_data(), mesh_blend_read_data(), and pointcloud_blend_read_data().
| void CustomData_blend_write | ( | BlendWriter * | writer, |
| CustomData * | data, | ||
| CustomDataLayer * | layers, | ||
| int | count, | ||
| CustomDataMask | cddata_mask, | ||
| ID * | id | ||
| ) |
| layers | The layers argument assigned by CustomData_blend_write_prepare. |
Definition at line 5073 of file customdata.c.
References BKE_defvert_blend_write(), BLO_write_is_undo(), BLO_write_raw(), BLO_write_struct, BLO_write_struct_array_at_address, BLO_write_struct_array_by_name(), CD_FACEMAP, CD_FLAG_EXTERNAL, CD_GRID_PAINT_MASK, CD_MDEFORMVERT, CD_MDISPS, CD_PAINT_MASK, CD_PROP_BOOL, CD_SCULPT_FACE_SETS, count, CustomData_external_write(), CustomData_file_write_info(), data, CustomDataLayer::data, CustomDataLayer::flag, CustomDataLayer::type, write_grid_paint_mask(), and write_mdisps().
Referenced by hair_blend_write(), mesh_blend_write(), and pointcloud_blend_write().
| void CustomData_blend_write_prepare | ( | CustomData * | data, |
| CustomDataLayer ** | r_write_layers, | ||
| CustomDataLayer * | write_layers_buff, | ||
| size_t | write_layers_size | ||
| ) |
Prepare given custom data for file writing.
| data | the customdata to tweak for .blend file writing (modified in place). |
| r_write_layers | contains a reduced set of layers to be written to file, use it with writestruct_at_address() (caller must free it if != write_layers_buff). |
| write_layers_buff | an optional buffer for r_write_layers (to avoid allocating it). |
| write_layers_size | the size of pre-allocated write_layer_buff. |
Definition at line 4237 of file customdata.c.
References BLI_assert, CD_FLAG_NOCOPY, CD_TEMP_CHUNK_SIZE, data, CustomDataLayer::flag, MEM_malloc_arrayN, MEM_reallocN, and UNLIKELY.
Referenced by hair_blend_write(), mesh_blend_write(), and pointcloud_blend_write().
| void CustomData_bmesh_copy_data | ( | const struct CustomData * | source, |
| struct CustomData * | dest, | ||
| void * | src_block, | ||
| void ** | dest_block | ||
| ) |
| void CustomData_bmesh_copy_data_exclude_by_type | ( | const struct CustomData * | source, |
| struct CustomData * | dest, | ||
| void * | src_block, | ||
| void ** | dest_block, | ||
| const CustomDataMask | mask_exclude | ||
| ) |
Referenced by bm_edge_attrs_copy(), bm_face_attrs_copy(), bm_loop_attrs_copy(), and bm_vert_attrs_copy().
| void CustomData_bmesh_do_versions_update_active_layers | ( | struct CustomData * | fdata, |
| struct CustomData * | ldata | ||
| ) |
Definition at line 3449 of file customdata.c.
References CD_MCOL, CD_MLOOPCOL, CD_MLOOPUV, CD_MTFACE, CustomData_get_active_layer(), CustomData_get_clone_layer(), CustomData_get_render_layer(), CustomData_get_stencil_layer(), CustomData_has_layer(), CustomData_set_layer_active(), CustomData_set_layer_clone(), CustomData_set_layer_render(), and CustomData_set_layer_stencil().
Referenced by BKE_mesh_do_versions_convert_mfaces_to_mpolys().
| void CustomData_bmesh_free_block | ( | struct CustomData * | data, |
| void ** | block | ||
| ) |
Definition at line 3606 of file customdata.c.
References BLI_mempool_free(), CD_FLAG_NOFREE, data, LayerTypeInfo::free, layerType_getInfo(), NULL, POINTER_OFFSET, and LayerTypeInfo::size.
Referenced by bm_interp_face_free(), bm_kill_only_edge(), bm_kill_only_face(), bm_kill_only_loop(), bm_kill_only_vert(), BM_mesh_data_free(), CustomData_bmesh_alloc_block(), CustomData_bmesh_merge(), and update_data_blocks().
| void CustomData_bmesh_free_block_data | ( | CustomData * | data, |
| void * | block | ||
| ) |
Same as CustomData_bmesh_free_block but zero the memory rather than freeing.
Definition at line 3633 of file customdata.c.
References CD_FLAG_NOFREE, data, LayerTypeInfo::free, layerType_getInfo(), NULL, POINTER_OFFSET, and LayerTypeInfo::size.
Referenced by bm_data_interp_from_elem(), bm_loop_create(), and bmo_inset_region_exec().
| void CustomData_bmesh_free_block_data_exclude_by_type | ( | CustomData * | data, |
| void * | block, | ||
| const CustomDataMask | mask_exclude | ||
| ) |
A selective version of CustomData_bmesh_free_block_data.
Definition at line 3669 of file customdata.c.
References CD_FLAG_NOFREE, CD_TYPE_AS_MASK, data, LayerTypeInfo::free, layerType_getInfo(), NULL, POINTER_OFFSET, and LayerTypeInfo::size.
Referenced by bm_edge_attrs_copy(), bm_face_attrs_copy(), bm_loop_attrs_copy(), and bm_vert_attrs_copy().
| void* CustomData_bmesh_get | ( | const struct CustomData * | data, |
| void * | block, | ||
| int | type | ||
| ) |
Referenced by BKE_mesh_ensure_skin_customdata(), BM_elem_float_data_get(), BM_elem_float_data_set(), bm_extrude_disable_skin_root(), BM_vert_create(), BPy_BMEdge_CreatePyObject(), bpy_bmedge_dealloc(), BPy_BMFace_CreatePyObject(), bpy_bmface_dealloc(), BPy_BMLoop_CreatePyObject(), bpy_bmloop_dealloc(), BPy_BMVert_CreatePyObject(), bpy_bmvert_dealloc(), contarget_get_mesh_mat(), createTransMeshSkin(), edgetag_set_cb(), edgetag_test_cb(), HC_relaxation_iteration_uv(), laplacian_relaxation_iteration_uv(), lineart_identify_feature_line(), mesh_skin_transdata_create(), output_frames(), partialvis_update_bmesh_verts(), similar_edge_select_exec(), similar_face_select_exec(), skin_loose_mark_clear_exec(), skin_radii_equalize_exec(), stitch_calculate_edge_normal(), stitch_calculate_island_snapping(), stitch_check_edges_stitchable(), stitch_check_uvs_stitchable(), stitch_island_calculate_edge_rotation(), stitch_process_data(), stitch_propagate_uv_final_position(), uv_sculpt_stroke_apply(), and uv_sculpt_stroke_init().
| void* CustomData_bmesh_get_layer_n | ( | const struct CustomData * | data, |
| void * | block, | ||
| int | n | ||
| ) |
Referenced by EDBM_verts_mirror_cache_clear(), and EDBM_verts_mirror_get().
| void* CustomData_bmesh_get_n | ( | const struct CustomData * | data, |
| void * | block, | ||
| int | type, | ||
| int | n | ||
| ) |
| bool CustomData_bmesh_has_free | ( | const struct CustomData * | data | ) |
Definition at line 3856 of file customdata.c.
References CD_FLAG_NOFREE, data, LayerTypeInfo::free, and layerType_getInfo().
Referenced by BM_mesh_data_free().
| void CustomData_bmesh_init_pool | ( | struct CustomData * | data, |
| int | totelem, | ||
| const char | htype | ||
| ) |
Definition at line 3482 of file customdata.c.
References BLI_assert, BLI_mempool_create(), BLI_MEMPOOL_NOP, BM_EDGE, BM_FACE, BM_LOOP, bm_mesh_chunksize_default, BM_VERT, data, NULL, BMAllocTemplate::totedge, BMAllocTemplate::totface, BMAllocTemplate::totloop, and BMAllocTemplate::totvert.
Referenced by BM_mesh_bm_from_me(), BM_mesh_copy_init_customdata(), BM_mesh_copy_init_customdata_all_layers(), BM_mesh_copy_init_customdata_from_mesh(), CustomData_bmesh_merge(), and update_data_blocks().
| void CustomData_bmesh_interp | ( | struct CustomData * | data, |
| const void ** | src_blocks, | ||
| const float * | weights, | ||
| const float * | sub_weights, | ||
| int | count, | ||
| void * | dst_block | ||
| ) |
Definition at line 4048 of file customdata.c.
References copy_vn_fl(), count, CustomData_bmesh_interp_n(), data, ELEM, LayerTypeInfo::interp, layerType_getInfo(), MEM_freeN, MEM_malloc_arrayN, MEM_mallocN, NULL, CustomDataLayer::offset, POINTER_OFFSET, SOURCE_BUF_SIZE, and CustomDataLayer::type.
Referenced by BM_data_interp_face_vert_edge(), bm_data_interp_from_elem(), BM_face_interp_from_face_ex(), BM_face_split_edgenet(), bm_grid_fill_array(), BM_loop_interp_from_face(), bm_loop_interp_from_grid_boundary_2(), bm_loop_interp_from_grid_boundary_4(), BM_vert_collapse_faces(), and BM_vert_interp_from_face().
| void CustomData_bmesh_interp_n | ( | CustomData * | data, |
| const void ** | src_blocks_ofs, | ||
| const float * | weights, | ||
| const float * | sub_weights, | ||
| int | count, | ||
| void * | dst_block_ofs, | ||
| int | n | ||
| ) |
Definition at line 4031 of file customdata.c.
References BLI_assert, count, data, LayerTypeInfo::interp, layerType_getInfo(), NULL, and CustomDataLayer::type.
Referenced by bm_edge_collapse_loop_customdata(), bm_vert_loop_groups_data_layer_merge__single(), bm_vert_loop_groups_data_layer_merge_weights__single(), and CustomData_bmesh_interp().
| bool CustomData_bmesh_merge | ( | const struct CustomData * | source, |
| struct CustomData * | dest, | ||
| CustomDataMask | mask, | ||
| eCDAllocType | alloctype, | ||
| struct BMesh * | bm, | ||
| const char | htype | ||
| ) |
Referenced by BM_mesh_bm_from_me().
| void CustomData_bmesh_set | ( | const struct CustomData * | data, |
| void * | block, | ||
| int | type, | ||
| const void * | source | ||
| ) |
| void CustomData_bmesh_set_default | ( | struct CustomData * | data, |
| void ** | block | ||
| ) |
Definition at line 3703 of file customdata.c.
References CustomData_bmesh_alloc_block(), CustomData_bmesh_set_default_n(), data, and NULL.
Referenced by BM_edge_create(), BM_face_create(), bm_loop_create(), BM_vert_create(), pbvh_bmesh_vert_create(), and update_data_blocks().
| void CustomData_bmesh_set_layer_n | ( | struct CustomData * | data, |
| void * | block, | ||
| int | n, | ||
| const void * | source | ||
| ) |
Definition at line 4010 of file customdata.c.
References LayerTypeInfo::copy, CustomData_bmesh_get_layer_n(), data, layerType_getInfo(), and LayerTypeInfo::size.
| void CustomData_bmesh_set_n | ( | struct CustomData * | data, |
| void * | block, | ||
| int | type, | ||
| int | n, | ||
| const void * | source | ||
| ) |
Definition at line 3993 of file customdata.c.
References LayerTypeInfo::copy, CustomData_bmesh_get_n(), data, layerType_getInfo(), LayerTypeInfo::size, and type.
Referenced by BM_data_layer_copy().
| void CustomData_bmesh_update_active_layers | ( | struct CustomData * | fdata, |
| struct CustomData * | ldata | ||
| ) |
Definition at line 3411 of file customdata.c.
References CD_MCOL, CD_MLOOPCOL, CD_MLOOPUV, CD_MTFACE, CustomData_get_active_layer(), CustomData_get_clone_layer(), CustomData_get_render_layer(), CustomData_get_stencil_layer(), CustomData_has_layer(), CustomData_set_layer_active(), CustomData_set_layer_clone(), CustomData_set_layer_render(), and CustomData_set_layer_stencil().
Referenced by CustomData_from_bmeshpoly(), and mesh_update_linked_customdata().
| void CustomData_clear_layer_flag | ( | struct CustomData * | data, |
| int | type, | ||
| int | flag | ||
| ) |
Definition at line 2484 of file customdata.c.
Referenced by modifyMesh(), and triangulate_mesh().
| void CustomData_copy | ( | const struct CustomData * | source, |
| struct CustomData * | dest, | ||
| CustomDataMask | mask, | ||
| eCDAllocType | alloctype, | ||
| int | totelem | ||
| ) |
Definition at line 2193 of file customdata.c.
References CustomData_merge(), CustomData_reset(), CustomData::external, mask(), and MEM_dupallocN.
Referenced by BKE_hair_new_for_eval(), BKE_mesh_new_nomain_from_template_ex(), BKE_mesh_nomain_to_mesh(), BKE_pointcloud_new_for_eval(), BM_mesh_bm_from_me(), BM_mesh_bm_to_me(), BM_mesh_copy_init_customdata(), BM_mesh_copy_init_customdata_from_mesh(), DM_DupPolys(), DM_from_template_ex(), hair_copy_data(), loop_interpolation_init(), mesh_add_edges(), mesh_add_loops(), mesh_add_polys(), mesh_add_verts(), mesh_copy_data(), pointcloud_copy_data(), SCULPT_dynamic_topology_disable_ex(), sculpt_undo_geometry_restore_data(), sculpt_undo_geometry_store_data(), and vertex_interpolation_init().
| void CustomData_copy_data | ( | const struct CustomData * | source, |
| struct CustomData * | dest, | ||
| int | source_index, | ||
| int | dest_index, | ||
| int | count | ||
| ) |
Referenced by arrayModifier_doArray(), BKE_mesh_mirror_apply_mirror_on_axis_for_modifier(), BKE_mesh_strip_loose_edges(), BKE_mesh_strip_loose_faces(), BKE_mesh_strip_loose_polysloops(), CDDM_copy(), copy_masked_edges_to_new_mesh(), copy_masked_polys_to_new_mesh(), copy_masked_vertices_to_new_mesh(), customdata_weld(), cutEdges(), DM_copy_vert_data(), explodeMesh(), get_dface(), loop_interpolation_from_corner(), mesh_add_edges(), mesh_add_loops(), mesh_add_polys(), mesh_add_verts(), mesh_merge_transform(), MOD_solidify_extrude_modifyMesh(), modifyMesh(), set_ccgdm_all_geometry(), split_faces_split_new_edges(), split_faces_split_new_verts(), subdiv_copy_edge_data(), subdiv_copy_poly_data(), subdiv_mesh_vertex_of_loose_edge_interpolate(), subdiv_vertex_data_copy(), subdivide_base(), vertex_interpolation_from_corner(), and weldModifier_doWeld().
| void CustomData_copy_data_layer | ( | const CustomData * | source, |
| CustomData * | dest, | ||
| int | src_layer_index, | ||
| int | dst_layer_index, | ||
| int | src_index, | ||
| int | dst_index, | ||
| int | count | ||
| ) |
Definition at line 2892 of file customdata.c.
References CLOG_WARN, LayerTypeInfo::copy, count, CustomDataLayer::data, CustomData::layers, layerType_getInfo(), layerType_getName(), LOG, NULL, POINTER_OFFSET, LayerTypeInfo::size, and CustomDataLayer::type.
Referenced by CustomData_copy_data(), CustomData_copy_data_named(), and CustomData_copy_layer_type_data().
| void CustomData_copy_data_named | ( | const struct CustomData * | source, |
| struct CustomData * | dest, | ||
| int | source_index, | ||
| int | dest_index, | ||
| int | count | ||
| ) |
Referenced by join_mesh_single().
| void CustomData_copy_elements | ( | int | type, |
| void * | src_data_ofs, | ||
| void * | dst_data_ofs, | ||
| int | count | ||
| ) |
Definition at line 2880 of file customdata.c.
References LayerTypeInfo::copy, count, layerType_getInfo(), LayerTypeInfo::size, and type.
Referenced by bm_vert_loop_groups_data_layer_merge__single(), and bm_vert_loop_groups_data_layer_merge_weights__single().
| void CustomData_copy_layer_type_data | ( | const struct CustomData * | source, |
| struct CustomData * | destination, | ||
| int | type, | ||
| int | source_index, | ||
| int | destination_index, | ||
| int | count | ||
| ) |
Referenced by copy_ccg_data(), and customdata_weld().
| void CustomData_data_add | ( | int | type, |
| void * | data1, | ||
| const void * | data2 | ||
| ) |
Definition at line 3967 of file customdata.c.
References LayerTypeInfo::add, data1, data2, layerType_getInfo(), and type.
Referenced by bmo_average_vert_facedata_exec(), bmo_collapsecon_do_layer(), bmo_pointmerge_facedata_exec(), and customdata_weld().
| void CustomData_data_copy_value | ( | int | type, |
| const void * | source, | ||
| void * | dest | ||
| ) |
Definition at line 3893 of file customdata.c.
References CDT_MIX_NOMIX, LayerTypeInfo::copyvalue, layerType_getInfo(), LayerTypeInfo::size, and type.
Referenced by bm_loop_customdata_merge(), bmo_average_vert_facedata_exec(), and bmo_collapsecon_do_layer().
| void CustomData_data_dominmax | ( | int | type, |
| const void * | data, | ||
| void * | min, | ||
| void * | max | ||
| ) |
Definition at line 3949 of file customdata.c.
References data, LayerTypeInfo::dominmax, layerType_getInfo(), max, min, and type.
Referenced by bmo_average_vert_facedata_exec(), and bmo_collapsecon_do_layer().
| bool CustomData_data_equals | ( | int | type, |
| const void * | data1, | ||
| const void * | data2 | ||
| ) |
Definition at line 3929 of file customdata.c.
References data1, data2, LayerTypeInfo::equal, layerType_getInfo(), LayerTypeInfo::size, and type.
Referenced by bm_edge_collapse_loop_customdata(), BM_edge_is_contiguous_loop_cd(), bm_loop_customdata_merge(), bm_loop_walk_data(), bmw_UVEdgeWalker_step(), and contig_ldata_across_loops().
| void CustomData_data_initminmax | ( | int | type, |
| void * | min, | ||
| void * | max | ||
| ) |
Definition at line 3940 of file customdata.c.
References LayerTypeInfo::initminmax, layerType_getInfo(), max, min, and type.
Referenced by bmo_average_vert_facedata_exec(), and bmo_collapsecon_do_layer().
| void CustomData_data_mix_value | ( | int | type, |
| const void * | source, | ||
| void * | dest, | ||
| const int | mixmode, | ||
| const float | mixfactor | ||
| ) |
Definition at line 3911 of file customdata.c.
References LayerTypeInfo::copyvalue, layerType_getInfo(), LayerTypeInfo::size, and type.
Referenced by bm_loop_customdata_merge(), customdata_data_transfer_interp_generic(), and customdata_data_transfer_interp_normal_normals().
| void CustomData_data_multiply | ( | int | type, |
| void * | data, | ||
| float | fac | ||
| ) |
Definition at line 3958 of file customdata.c.
References data, layerType_getInfo(), LayerTypeInfo::multiply, and type.
Referenced by bmo_average_vert_facedata_exec(), bmo_collapsecon_do_layer(), bmo_pointmerge_facedata_exec(), and customdata_weld().
| void CustomData_data_transfer | ( | const struct MeshPairRemap * | me_remap, |
| const CustomDataTransferLayerMap * | laymap | ||
| ) |
Referenced by BKE_object_data_transfer_ex().
| void* CustomData_duplicate_referenced_layer | ( | struct CustomData * | data, |
| const int | type, | ||
| const int | totelem | ||
| ) |
Definition at line 2788 of file customdata.c.
References customData_duplicate_referenced_layer_index(), CustomData_get_active_layer_index(), data, and type.
Referenced by BKE_mesh_transform(), BKE_mesh_translate(), BKE_mesh_vert_coords_apply(), BKE_mesh_vert_coords_apply_with_mat4(), BKE_mesh_vert_normals_apply(), data_transfer_layersmapping_cdlayers(), data_transfer_layersmapping_vgroups(), mesh_calc_hq_normal(), MOD_solidify_extrude_modifyMesh(), modifyMesh(), normalEditModifier_do(), blender::bke::BuiltinCustomDataLayerProvider::try_get_for_write(), and blender::bke::VertexGroupsAttributeProvider::try_get_for_write().
| void* CustomData_duplicate_referenced_layer_n | ( | struct CustomData * | data, |
| const int | type, | ||
| const int | n, | ||
| const int | totelem | ||
| ) |
Definition at line 2796 of file customdata.c.
References customData_duplicate_referenced_layer_index(), CustomData_get_layer_index_n(), data, and type.
Referenced by data_transfer_layersmapping_cdlayers(), and data_transfer_layersmapping_cdlayers_multisrc_to_dst().
| void* CustomData_duplicate_referenced_layer_named | ( | struct CustomData * | data, |
| const int | type, | ||
| const char * | name, | ||
| const int | totelem | ||
| ) |
Definition at line 2807 of file customdata.c.
References customData_duplicate_referenced_layer_index(), CustomData_get_named_layer_index(), data, and type.
Referenced by hair_evaluate_modifiers(), modifyMesh(), blender::bke::CustomDataAttributeProvider::try_get_for_write(), blender::bke::NamedLegacyCustomDataProvider::try_get_for_write(), and uvprojectModifier_do().
| void CustomData_duplicate_referenced_layers | ( | CustomData * | data, |
| int | totelem | ||
| ) |
Definition at line 2818 of file customdata.c.
References customData_duplicate_referenced_layer_index(), data, and CustomDataLayer::data.
Referenced by BKE_mesh_split_faces().
| void CustomData_external_add | ( | struct CustomData * | data, |
| struct ID * | id, | ||
| int | type, | ||
| int | totelem, | ||
| const char * | filename | ||
| ) |
Referenced by bm_corners_to_loops_ex(), and multires_external_save_exec().
| void CustomData_external_read | ( | struct CustomData * | data, |
| struct ID * | id, | ||
| CustomDataMask | mask, | ||
| int | totelem | ||
| ) |
Definition at line 4523 of file customdata.c.
References CD_FLAG_EXTERNAL, CD_FLAG_IN_MEMORY, CD_TYPE_AS_MASK, cdf_create(), cdf_free(), cdf_layer_find(), cdf_read_close(), cdf_read_layer(), cdf_read_open(), CDF_TYPE_MESH, CLOG_ERROR, customdata_external_filename(), data, CustomDataLayer::data, FILE_MAX, CustomDataLayer::flag, layerType_getInfo(), layerType_getName(), LOG, mask(), CustomDataLayer::name, LayerTypeInfo::read, CustomDataLayer::type, and update().
Referenced by BKE_mesh_convert_mfaces_to_mpolys_ex(), CustomData_external_remove(), CustomData_external_write(), multires_ensure_external_read(), and multires_topology_changed().
| void CustomData_external_reload | ( | struct CustomData * | data, |
| struct ID * | id, | ||
| CustomDataMask | mask, | ||
| int | totelem | ||
| ) |
Referenced by multires_force_external_reload().
| void CustomData_external_remove | ( | struct CustomData * | data, |
| struct ID * | id, | ||
| int | type, | ||
| int | totelem | ||
| ) |
Definition at line 4724 of file customdata.c.
References CD_FLAG_EXTERNAL, CD_FLAG_IN_MEMORY, CD_TYPE_AS_MASK, CustomData_external_read(), CustomData_get_active_layer_index(), data, CustomDataLayer::flag, type, and CustomDataLayer::type.
Referenced by multires_customdata_delete(), and multires_external_pack_exec().
| bool CustomData_external_test | ( | struct CustomData * | data, |
| int | type | ||
| ) |
Definition at line 4748 of file customdata.c.
References CD_FLAG_EXTERNAL, CustomData_get_active_layer_index(), data, CustomDataLayer::flag, and type.
Referenced by bm_corners_to_loops_ex(), multires_ensure_external_read(), multires_external_pack_exec(), multires_external_save_exec(), and multires_external_save_invoke().
| void CustomData_external_write | ( | struct CustomData * | data, |
| struct ID * | id, | ||
| CustomDataMask | mask, | ||
| int | totelem, | ||
| int | free | ||
| ) |
Definition at line 4596 of file customdata.c.
References CD_FLAG_EXTERNAL, CD_FLAG_IN_MEMORY, CD_TYPE_AS_MASK, cdf_create(), cdf_free(), cdf_layer_add(), cdf_layer_find(), CDF_TYPE_MESH, cdf_write_close(), cdf_write_layer(), cdf_write_open(), CLOG_ERROR, customdata_external_filename(), CustomData_external_read(), data, CustomDataLayer::data, FILE_MAX, LayerTypeInfo::filesize, CustomDataLayer::flag, free(), LayerTypeInfo::free, layerType_getInfo(), LOG, mask(), CustomDataLayer::name, LayerTypeInfo::size, CustomDataLayer::type, update(), and LayerTypeInfo::write.
Referenced by CustomData_blend_write(), and multires_external_save_exec().
| void CustomData_file_write_info | ( | int | type, |
| const char ** | r_struct_name, | ||
| int * | r_struct_num | ||
| ) |
Definition at line 4210 of file customdata.c.
References layerType_getInfo(), LayerTypeInfo::structname, LayerTypeInfo::structnum, and type.
Referenced by BKE_mesh_runtime_debug_print_cdlayers(), CustomData_blend_write(), CustomData_layers__print(), dm_debug_info_layers(), and mesh_runtime_debug_info_layers().
| void CustomData_free | ( | struct CustomData * | data, |
| int | totelem | ||
| ) |
Frees data associated with a CustomData object (doesn't free the object itself, though).
Definition at line 2239 of file customdata.c.
References CustomData_external_free(), customData_free_layer__internal(), CustomData_reset(), data, and MEM_freeN.
Referenced by BKE_keyblock_mesh_calc_normals(), BKE_mesh_calc_edges(), BKE_mesh_calc_edges_tessface(), BKE_mesh_convert_mfaces_to_mpolys_ex(), BKE_mesh_nomain_to_mesh(), BKE_mesh_tessface_calc_ex(), BKE_pointcloud_new_for_eval(), BM_mesh_bm_to_me(), BM_mesh_data_free(), DM_DupPolys(), DM_release(), ED_mesh_join_objects_exec(), extract_tan_ex(), hair_free_data(), loop_interpolation_end(), mesh_add_edges(), mesh_add_loops(), mesh_add_polys(), mesh_add_verts(), mesh_clear_geometry(), mesh_tessface_clear_intern(), pointcloud_free_data(), SCULPT_dynamic_topology_disable_ex(), sculpt_undo_geometry_free_data(), sculpt_undo_geometry_restore_data(), and vertex_interpolation_end().
| void CustomData_free_elem | ( | struct CustomData * | data, |
| int | index, | ||
| int | count | ||
| ) |
Definition at line 3004 of file customdata.c.
References CD_FLAG_NOFREE, count, data, LayerTypeInfo::free, layerType_getInfo(), POINTER_OFFSET, and LayerTypeInfo::size.
Referenced by BKE_mesh_strip_loose_edges(), BKE_mesh_strip_loose_faces(), BKE_mesh_strip_loose_polysloops(), loop_interpolation_from_corner(), mesh_remove_edges(), mesh_remove_loops(), mesh_remove_polys(), and mesh_remove_verts().
| bool CustomData_free_layer | ( | struct CustomData * | data, |
| int | type, | ||
| int | totelem, | ||
| int | index | ||
| ) |
Definition at line 2655 of file customdata.c.
References CustomDataLayer::active, CustomDataLayer::active_clone, CustomDataLayer::active_mask, CustomDataLayer::active_rnd, BLI_assert, customData_free_layer__internal(), CustomData_get_layer_index(), CustomData_get_layer_index__notypemap(), CUSTOMDATA_GROW, customData_resize(), customData_update_offsets(), data, type, and CustomDataLayer::type.
Referenced by BKE_id_attribute_remove(), BKE_mesh_from_pointcloud(), BKE_object_facemap_clear(), BM_data_layer_free_n(), copy_ccg_data(), CustomData_free_layer_active(), CustomData_free_layers(), data_transfer_layersmapping_cdlayers(), data_transfer_layersmapping_cdlayers_multisrc_to_dst(), delete_customdata_layer(), mesh_validate_customdata(), multires_unsubdivide_free_original_datalayers(), blender::bke::BuiltinCustomDataLayerProvider::try_delete(), blender::bke::CustomDataAttributeProvider::try_delete(), and blender::bke::NamedLegacyCustomDataProvider::try_delete().
| bool CustomData_free_layer_active | ( | struct CustomData * | data, |
| int | type, | ||
| int | totelem | ||
| ) |
Definition at line 2707 of file customdata.c.
References CustomData_free_layer(), CustomData_get_active_layer_index(), data, and type.
Referenced by BKE_object_defgroup_remove_all_ex(), blo_do_versions_250(), BM_data_layer_free(), getCCGDerivedMesh(), modifier_skin_customdata_delete(), multires_customdata_delete(), and object_defgroup_remove_common().
| void CustomData_free_layers | ( | struct CustomData * | data, |
| int | type, | ||
| int | totelem | ||
| ) |
Definition at line 2716 of file customdata.c.
References CustomData_free_layer(), CustomData_get_layer_index(), data, and type.
Referenced by BKE_mesh_clear_facemap_customdata(), BKE_mesh_split_faces(), blo_do_versions_260(), blo_do_versions_280(), editbmesh_calc_modifier_final_normals(), geometry_extract_apply(), mesh_calc_modifier_final_normals(), mesh_customdata_clear_exec__internal(), modifyMesh(), multires_create_grids_in_unsubdivided_base_mesh(), normalEditModifier_do(), and paint_mask_slice_exec().
| void CustomData_free_temporary | ( | struct CustomData * | data, |
| int | totelem | ||
| ) |
Definition at line 2839 of file customdata.c.
References CD_FLAG_TEMPORARY, customData_free_layer__internal(), CUSTOMDATA_GROW, customData_resize(), customData_update_offsets(), data, and CustomDataLayer::flag.
Referenced by DM_release().
| void CustomData_free_typemask | ( | struct CustomData * | data, |
| int | totelem, | ||
| CustomDataMask | mask | ||
| ) |
Definition at line 2253 of file customdata.c.
References CD_TYPE_AS_MASK, CustomData_external_free(), customData_free_layer__internal(), CustomData_reset(), data, mask(), MEM_freeN, and CustomDataLayer::type.
Referenced by BKE_mesh_nomain_to_mesh().
| void CustomData_from_bmesh_block | ( | const struct CustomData * | source, |
| struct CustomData * | dest, | ||
| void * | src_block, | ||
| int | dest_index | ||
| ) |
Referenced by BM_mesh_bm_to_me(), and BM_mesh_bm_to_me_for_eval().
| void CustomData_from_bmeshpoly | ( | struct CustomData * | fdata, |
| struct CustomData * | ldata, | ||
| int | total | ||
| ) |
Definition at line 3338 of file customdata.c.
References BLI_assert, CD_CALLOC, CD_MCOL, CD_MLOOPCOL, CD_MLOOPUV, CD_MTFACE, CD_NORMAL, CD_ORIGSPACE, CD_ORIGSPACE_MLOOP, CD_PREVIEW_MCOL, CD_PREVIEW_MLOOPCOL, CD_TANGENT, CD_TESSLOOPNORMAL, CustomData_add_layer_named(), CustomData_bmesh_update_active_layers(), CustomData_from_bmeshpoly_test(), CustomData::layers, CustomDataLayer::name, NULL, CustomData::totlayer, and CustomDataLayer::type.
Referenced by BKE_mesh_tessface_calc_ex(), and mesh_ensure_tessellation_customdata().
| bool CustomData_from_bmeshpoly_test | ( | CustomData * | fdata, |
| CustomData * | ldata, | ||
| bool | fallback | ||
| ) |
Debug check, used to assert when we expect layers to be in/out of sync.
| fallback | Use when there are no layers to handle, since callers may expect success or failure. |
Definition at line 3377 of file customdata.c.
References CD_MCOL, CD_MLOOPCOL, CD_MLOOPUV, CD_MTFACE, CD_NORMAL, CD_ORIGSPACE, CD_ORIGSPACE_MLOOP, CD_PREVIEW_MCOL, CD_PREVIEW_MLOOPCOL, CD_TANGENT, CD_TESSLOOPNORMAL, and LAYER_CMP.
Referenced by CustomData_from_bmeshpoly().
| void* CustomData_get | ( | const struct CustomData * | data, |
| int | index, | ||
| int | type | ||
| ) |
| int CustomData_get_active_layer | ( | const struct CustomData * | data, |
| int | type | ||
| ) |
Referenced by BKE_mesh_calc_loop_tangent_step_0(), bpy_bmlayercollection_active_get(), bpy_bmlayercollection_verify(), data_transfer_layersmapping_cdlayers(), ED_mesh_color_add(), ED_mesh_color_remove_active(), ED_mesh_sculpt_color_add(), ED_mesh_sculpt_color_remove_active(), ED_mesh_uv_loop_reset(), ED_mesh_uv_texture_add(), ED_mesh_uv_texture_remove_active(), extract_tan_ex(), extract_uv_init(), extract_vcol_init(), blender::io::alembic::get_uv_sample(), loop_to_vertex_colors_exec(), mesh_cd_calc_active_mloopcol_layer(), mesh_cd_calc_active_uv_layer(), mesh_cd_calc_active_vcol_layer(), overlay_edit_uv_cache_populate(), particle_batch_cache_ensure_pos_and_seg(), particle_batch_cache_ensure_procedural_strand_data(), vertex_to_loop_colors_exec(), and blender::io::alembic::write_custom_data().
| int CustomData_get_active_layer_index | ( | const struct CustomData * | data, |
| int | type | ||
| ) |
| int CustomData_get_clone_layer | ( | const struct CustomData * | data, |
| int | type | ||
| ) |
Referenced by BKE_mesh_validate_all_customdata(), and proj_paint_layer_clone_init().
| int CustomData_get_clone_layer_index | ( | const struct CustomData * | data, |
| int | type | ||
| ) |
| void* CustomData_get_layer | ( | const struct CustomData * | data, |
| int | type | ||
| ) |
Referenced by add_orco_mesh(), bake_object_check(), bake_targets_init_vertex_colors(), bake_targets_output_vertex_colors(), bake_targets_populate_pixels_vertex_colors(), base_skin(), BKE_hair_update_customdata_pointers(), BKE_keyblock_mesh_calc_normals(), BKE_mesh_calc_edges_tessface(), BKE_mesh_calc_loop_tangent_single(), BKE_mesh_calc_loop_tangents(), BKE_mesh_calc_normals_split_ex(), BKE_mesh_convert_mfaces_to_mpolys_ex(), BKE_mesh_ensure_normals_for_display(), BKE_mesh_foreach_mapped_edge(), BKE_mesh_foreach_mapped_face_center(), BKE_mesh_foreach_mapped_loop(), BKE_mesh_foreach_mapped_subdiv_face_center(), BKE_mesh_foreach_mapped_vert(), BKE_mesh_loops_to_tessdata(), BKE_mesh_mirror_apply_mirror_on_axis_for_modifier(), BKE_mesh_nomain_to_mesh(), BKE_mesh_polygon_flip(), BKE_mesh_polygon_flip_ex(), BKE_mesh_polygons_flip(), BKE_mesh_remap_calc_loops_from_mesh(), BKE_mesh_remap_calc_polys_from_mesh(), BKE_mesh_remesh_reproject_paint_mask(), BKE_mesh_tangent_loops_to_tessdata(), BKE_mesh_tessface_calc_ex(), BKE_mesh_update_customdata_pointers(), BKE_object_as_kdtree(), BKE_object_data_transfer_ex(), BKE_remesh_reproject_sculpt_face_sets(), BKE_remesh_reproject_vertex_paint(), BKE_sculpt_ensure_orig_mesh_data(), BKE_sculpt_face_sets_ensure_from_base_mesh_visibility(), BKE_sculpt_mask_layers_ensure(), BKE_sculpt_multires_active(), BKE_sculpt_sync_face_sets_visibility_to_base_mesh(), BKE_sculpt_sync_face_sets_visibility_to_grids(), BKE_shrinkwrap_init_tree(), BKE_subdiv_ccg_mask_init_from_paint(), blo_do_versions_280(), BM_mesh_bm_to_me_for_eval(), C_BVHTree_FromObject(), CDDM_copy(), cdDM_from_mesh_ex(), cloth_from_object(), contarget_get_mesh_mat(), context_init_grid_pointers(), GeometryExporter::create_normals(), createFacepa(), data_transfer_dtdata_type_postprocess(), data_transfer_dtdata_type_preprocess(), data_transfer_layersmapping_cdlayers(), data_transfer_layersmapping_generate(), data_transfer_layersmapping_vgroups(), deformVerts(), deformVerts_do(), displacement_init_data(), displaceModifier_do(), DM_calc_loop_tangents(), DM_get_edge_data_layer(), DM_get_loop_data_layer(), DM_get_poly_data_layer(), DM_get_tessface_data_layer(), DM_get_vert_data_layer(), dm_getEdgeArray(), dm_getLoopArray(), dm_getPolyArray(), dm_getTessFaceArray(), dm_getVertArray(), DRW_mesh_batch_cache_create_requested(), dynamicPaint_Modifier_apply(), ED_draw_object_facemap(), ED_mesh_pick_face_vert(), ED_mesh_sculpt_color_add(), ED_object_facemap_face_add(), ED_object_facemap_face_remove(), ED_operator_uvmap_mesh(), ED_sculpt_face_sets_find_next_available_id(), ED_sculpt_face_sets_initialize_none_to_id(), ensure_displacement_grids(), ensure_mask_grids(), blender::bke::BuiltinCustomDataLayerProvider::exists(), extract_edituv_stretch_angle_init(), extract_fdots_uv_init(), extract_orco_init(), extract_sculpt_data_init(), extract_tan_ex(), extract_vcol_init(), extract_weights_init(), final_skin(), get_levels_from_disps(), blender::io::alembic::get_loop_normals(), blender::ed::spreadsheet::GeometryDataSource::get_selected_element_indices(), give_parvert(), harmonic_coordinates_bind(), imapaint_pick_uv(), Freestyle::BlenderFileLoader::insertShapeNode(), lattice_deform_coords_impl(), loop_to_vertex_colors_exec(), make_duplis_faces(), make_duplis_verts(), mask_init_data(), mesh_calc_modifiers(), mesh_calc_tri_tessface(), mesh_edituv_stretch_area_finish(), mesh_ensure_cdlayers_primary(), mesh_init_origspace(), mesh_join_offset_face_sets_ID(), mesh_merge_transform(), mesh_render_data_create(), mesh_render_data_update_normals(), mesh_runtime_debug_info_layers(), mesh_set_custom_normals(), MOD_solidify_extrude_modifyMesh(), modifier_skin_armature_create(), modifyMesh(), multires_apply_smat(), multires_apply_uniform_scale(), multires_del_higher(), multires_ensure_external_read(), multires_modifier_update_hidden(), multires_modifier_update_mdisps(), multires_output_hidden_to_ccgdm(), multires_set_tot_mdisps(), multires_subdivide_create_object_space_linear_grids(), multires_topology_changed(), multiresModifier_del_levels(), multiresModifier_disp_run(), multiresModifier_set_levels_from_disps(), normalEditModifier_do(), object_fmap_remap_object_mode(), object_fmap_remove_object_mode(), paint_mask_slice_exec(), paintface_flush_flags(), paintvert_flush_flags(), partialvis_update_mesh(), pbvh_has_face_sets(), pbvh_has_mask(), pbvh_update_draw_buffer_cb(), pbvh_vertex_iter_init(), pointdensity_cache_vertex_weight(), polygons_check_flip(), proj_paint_face_lookup_init(), proj_paint_layer_clone_init(), project_paint_begin(), project_paint_clone_face_skip(), project_paint_prepare_all_faces(), psys_calc_dmcache(), psys_face_mat(), psys_map_index_on_dm(), psys_mat_hair_to_orco(), psys_particle_dm_face_lookup(), psys_particle_on_dm(), psys_thread_context_init_distribute(), RE_bake_pixels_populate(), SCULPT_dynamic_topology_disable_ex(), sculpt_gesture_trim_end(), sculpt_undo_face_sets_push(), sculpt_undo_restore_face_sets(), sculpt_update_object(), set_ccgdm_all_geometry(), subdiv_mesh_ctx_cache_custom_data_layers(), subdivide_base(), triangulate_mesh(), blender::bke::BuiltinCustomDataLayerProvider::try_create(), blender::bke::BuiltinCustomDataLayerProvider::try_get_for_read(), blender::bke::NormalAttributeProvider::try_get_for_read(), blender::bke::BuiltinCustomDataLayerProvider::try_get_for_write(), vertex_paint_use_fast_update_check(), vertex_to_loop_colors_exec(), weightvg_do_mask(), and weldModifier_doWeld().
| int CustomData_get_layer_index | ( | const struct CustomData * | data, |
| int | type | ||
| ) |
Referenced by bc_CustomData_get_layer_name(), bevel_set_weighted_normal_face_strength(), BKE_editmesh_loop_tangent_calc(), BKE_mesh_calc_loop_tangent_ex(), BKE_mesh_calc_loop_tangent_step_0(), bpy_bmlayercollection_items(), bpy_bmlayercollection_keys(), bpy_bmlayercollection_values(), copy_ccg_data(), delete_customdata_layer(), do_multires_bake(), edbm_mod_weighted_strength_exec(), EDBM_verts_mirror_cache_begin_ex(), SCULPT_dyntopo_node_layers_add(), and blender::bke::BuiltinCustomDataLayerProvider::try_delete().
| int CustomData_get_layer_index_n | ( | const struct CustomData * | data, |
| int | type, | ||
| int | n | ||
| ) |
Definition at line 2308 of file customdata.c.
References BLI_assert, CustomData_get_layer_index(), data, and type.
Referenced by add_shapekey_layers(), BKE_editmesh_loop_tangent_calc(), BKE_mesh_calc_loop_tangent_ex(), BM_data_layer_free_n(), BM_mesh_bm_from_me(), bpy_bmlayeritem_get(), GeometryExporter::create_mesh_primitive_list(), GeometryExporter::createTexcoordsSource(), CustomData_duplicate_referenced_layer_n(), CustomData_get_layer_n(), CustomData_get_layer_name(), CustomData_get_n_offset(), CustomData_set_layer_n(), CustomData_set_layer_name(), ED_mesh_color_remove_index(), ED_mesh_sculpt_color_remove_index(), ED_mesh_uv_texture_remove_index(), and shapekey_layers_to_keyblocks().
| void* CustomData_get_layer_n | ( | const struct CustomData * | data, |
| int | type, | ||
| int | n | ||
| ) |
Referenced by arrayModifier_doArray(), BKE_mesh_loops_to_tessdata(), BKE_mesh_mirror_apply_mirror_on_axis_for_modifier(), BKE_remesh_reproject_vertex_paint(), BKE_subdiv_eval_refine_from_mesh(), GeometryExporter::createTexcoordsSource(), GeometryExporter::createVertexColorSource(), data_transfer_layersmapping_cdlayers(), data_transfer_layersmapping_cdlayers_multisrc_to_dst(), ED_mesh_uv_loop_reset_ex(), extract_tan_ex(), extract_uv_init(), extract_vcol_init(), blender::io::alembic::get_uv_sample(), loop_to_vertex_colors_exec(), make_duplis_faces(), modifyMesh(), particle_batch_cache_ensure_pos_and_seg(), particle_batch_cache_ensure_procedural_strand_data(), precalc_uv_layer(), proj_paint_layer_clone_init(), project_paint_begin(), psys_get_dupli_texture(), RE_bake_pixels_populate(), remap_uvs_15(), remap_uvs_19_21_22(), remap_uvs_23(), remap_uvs_3_6_9_12(), remap_uvs_5_10(), remap_uvs_7_11_13_14(), set_subsurf_legacy_uv(), shapekey_layers_to_keyblocks(), subdiv_mesh_ctx_cache_uv_layers(), vertex_to_loop_colors_exec(), and blender::io::alembic::write_custom_data().
| const char* CustomData_get_layer_name | ( | const struct CustomData * | data, |
| int | type, | ||
| int | n | ||
| ) |
Referenced by BKE_mesh_calc_loop_tangent_step_0(), BKE_remesh_reproject_vertex_paint(), data_transfer_layersmapping_cdlayers(), data_transfer_layersmapping_cdlayers_multisrc_to_dst(), dt_layers_select_src_itemf(), extract_tan_ex(), extract_uv_init(), extract_vcol_init(), blender::io::alembic::get_uv_sample(), particle_batch_cache_ensure_pos_and_seg(), particle_batch_cache_ensure_procedural_strand_data(), and blender::io::alembic::write_custom_data().
| void* CustomData_get_layer_named | ( | const struct CustomData * | data, |
| int | type, | ||
| const char * | name | ||
| ) |
Definition at line 3217 of file customdata.c.
References CustomData_get_named_layer_index(), data, NULL, and type.
Referenced by blender::io::alembic::add_customdata_cb(), BKE_hair_update_customdata_pointers(), BKE_mesh_calc_loop_tangent_ex(), BKE_mesh_calc_loop_tangent_single(), BKE_mesh_tangent_loops_to_tessdata(), BKE_pointcloud_update_customdata_pointers(), dynamicPaint_createUVSurface(), dynamicPaint_Modifier_apply(), dynamicPaint_setInitialColor(), explodeMesh(), extract_tan_ex(), get_particle_uv(), imapaint_pick_uv(), MOD_get_texture_coords(), modifyMesh(), multires_unsubdivide_extract_grids(), multires_unsubdivide_prepare_original_bmesh_for_extract(), pointdensity_cache_vertex_color(), project_paint_clone_face_skip(), and project_paint_prepare_all_faces().
| void* CustomData_get_n | ( | const struct CustomData * | data, |
| int | type, | ||
| int | index, | ||
| int | n | ||
| ) |
Referenced by BKE_mesh_loops_to_mface_corners(), and bm_corners_to_loops_ex().
| int CustomData_get_n_offset | ( | const struct CustomData * | data, |
| int | type, | ||
| int | n | ||
| ) |
Referenced by bev_merge_edge_uvs(), bev_merge_uvs(), bevel_set_weighted_normal_face_strength(), BKE_editmesh_loop_tangent_calc(), bm_edge_delimit_cdata(), BM_mesh_bm_to_me(), BM_mesh_decimate_dissolve_ex(), bmo_subd_init_shape_info(), ED_mesh_uv_loop_reset_ex(), edbm_mod_weighted_strength_exec(), EDBM_verts_mirror_cache_begin_ex(), extract_uv_init(), extract_vcol_init(), make_duplis_faces(), multires_unsubdivide_extract_grids(), and SCULPT_dyntopo_node_layers_add().
| int CustomData_get_named_layer | ( | const struct CustomData * | data, |
| int | type, | ||
| const char * | name | ||
| ) |
Definition at line 2365 of file customdata.c.
References BLI_assert, CustomData_get_named_layer_index(), customdata_typemap_is_valid(), data, and type.
Referenced by bake(), bpy_bmlayercollection_subscript_str(), data_transfer_layersmapping_cdlayers(), data_transfer_layersmapping_cdlayers_multisrc_to_dst(), ED_mesh_color_remove_named(), ED_mesh_sculpt_color_remove_named(), ED_mesh_uv_texture_remove_named(), mesh_cd_calc_used_gpu_layers(), and RE_bake_pixels_populate().
| int CustomData_get_named_layer_index | ( | const struct CustomData * | data, |
| int | type, | ||
| const char * | name | ||
| ) |
Referenced by bevel_set_weighted_normal_face_strength(), BKE_editmesh_loop_tangent_calc(), BKE_id_attribute_new(), BKE_id_attribute_remove(), BKE_mesh_add_loop_tangent_named_layer_for_uv(), BKE_mesh_calc_loop_tangent_ex(), BKE_mesh_from_pointcloud(), bpy_bmlayercollection_contains(), dynamicPaint_outputLayerExists(), edbm_mod_weighted_strength_exec(), EDBM_verts_mirror_cache_begin_ex(), extract_vcol_init(), multires_unsubdivide_extract_grids(), multires_unsubdivide_free_original_datalayers(), particle_batch_cache_ensure_procedural_strand_data(), and SCULPT_dyntopo_node_layers_add().
| int CustomData_get_offset | ( | const struct CustomData * | data, |
| int | type | ||
| ) |
Referenced by armature_deform_coords_impl(), bevel_harden_normals(), BKE_object_defgroup_clear(), BKE_pbvh_bmesh_update_topology(), BKE_view_layer_filter_edit_mesh_has_uvs(), BM_custom_loop_normals_from_vector_layer(), BM_custom_loop_normals_to_vector_layer(), BM_edge_split(), BM_face_interp_multires(), BM_face_multires_bounds_smooth(), BM_face_normal_flip(), BM_face_split(), BM_face_triangulate(), BM_faces_join(), BM_faces_join_pair(), BM_lnorspace_err(), BM_lnorspace_rebuild(), BM_lnorspacearr_store(), BM_log_all_added(), BM_log_before_all_removed(), bm_log_vert_values_swap(), bm_log_verts_restore(), bm_log_verts_unmake(), BM_loop_interp_multires(), BM_loop_normal_editdata_array_init(), BM_mesh_bm_from_me(), BM_mesh_bm_to_me(), BM_mesh_bm_to_me_for_eval(), BM_mesh_calc_uvs_cube(), BM_mesh_remap(), BM_mesh_wireframe(), bm_to_mesh_vertex_map(), BM_uv_element_map_create(), BM_uv_vert_map_create(), BMD_mesh_bm_create(), bmo_create_circle_exec(), bmo_create_cone_exec(), bmo_create_cube_exec(), bmo_create_grid_exec(), bmo_create_icosphere_exec(), bmo_create_monkey_exec(), bmo_create_uvsphere_exec(), bmo_poke_exec(), bmo_reverse_colors_exec(), bmo_reverse_faces_exec(), bmo_reverse_uvs_exec(), bmo_rotate_colors_exec(), bmo_rotate_uvs_exec(), bmo_subd_init_shape_info(), bmo_transform_exec(), construct_param_handle(), construct_param_handle_multi(), construct_param_handle_subsurfed(), correct_uv_aspect(), createTransEdge(), createTransEditVerts(), createTransUVs(), curve_deform_coords_impl(), cylinder_project_exec(), deformVerts_do(), do_lasso_select_mesh_uv(), ED_mesh_active_dvert_get_em(), ED_uvedit_ensure_uvs(), ED_uvedit_median_multi(), ED_uvedit_minmax_multi(), ED_uvedit_nearest_uv(), ED_uvedit_pack_islands_multi(), ED_uvedit_select_all(), ED_uvedit_selected_edges(), ED_uvedit_selected_faces(), ED_uvedit_selected_verts(), ED_vgroup_mirror(), ED_vgroup_parray_alloc(), ED_vgroup_vert_active_mirror(), edbm_average_normals_exec(), edbm_decimate_exec(), EDBM_select_pick(), edbm_select_ungrouped_exec(), edbm_select_ungrouped_poll(), edbm_set_normals_from_faces_exec(), extract_edituv_data_init(), extract_edituv_stretch_angle_init(), extract_fdots_edituv_data_init(), extract_fdots_uv_init(), extract_sculpt_data_init(), extract_skin_roots_init(), extract_weights_init(), face_map_assign_exec(), face_map_remove_from_exec(), fmap_select(), geometry_extract_tag_face_set(), geometry_extract_tag_masked_faces(), get_vert_def_nr(), get_weights_array(), GPU_pbvh_bmesh_buffers_update(), lattice_deform_coords_impl(), mesh_customdatacorrect_init_container_generic(), mesh_edituv_stretch_area_finish(), mesh_render_data_create(), mesh_render_data_update_normals(), normals_split(), object_defgroup_remove_edit_mode(), object_fmap_remap_edit_mode(), object_fmap_remove_edit_mode(), overlay_edit_mesh_add_ob_to_pass(), pbvh_has_mask(), pbvh_vertex_iter_init(), return_editmesh_vgroup(), sculpt_face_sets_init_face_set_boundary_test(), sculpt_face_sets_init_loop(), SCULPT_vertex_mask_get(), select_linked_delimit_begin(), similar_face_select_exec(), similar_vert_select_exec(), skin_root_mark_exec(), slice_paint_mask(), smart_project_exec(), sphere_project_exec(), stitch_init(), stitch_propagate_uv_final_position(), uv_box_select_exec(), uv_circle_select_exec(), uv_find_nearest_edge(), uv_find_nearest_face_ex(), uv_find_nearest_loop_from_edge(), uv_find_nearest_loop_from_vert(), uv_find_nearest_vert(), uv_from_view_exec(), uv_hide_exec(), uv_map_clip_correct_multi(), uv_map_mirror(), uv_mark_seam_exec(), uv_mouse_select_multi(), uv_pin_exec(), uv_remove_doubles_to_selected(), uv_remove_doubles_to_unselected(), uv_reveal_exec(), uv_rip_object(), uv_seams_from_islands_exec(), uv_select_all_perform(), uv_select_edgeloop(), uv_select_edgering(), uv_select_flush_from_tag_face(), uv_select_flush_from_tag_loop(), uv_select_linked_multi(), uv_select_more_less(), uv_select_overlap(), uv_select_pinned_exec(), uv_select_split_exec(), uv_set_connectivity_distance(), uv_shortest_path_pick_exec(), uv_shortest_path_pick_invoke(), uv_shortest_path_select_exec(), uv_snap_uvs_offset(), uv_snap_uvs_to_adjacent_unselected(), uv_snap_uvs_to_cursor(), uv_snap_uvs_to_pixels(), uv_weld_align(), uvedit_center(), uvedit_have_selection(), uvedit_select_is_any_selected(), uvedit_translate(), uvedit_unwrap_cube_project(), v3d_editvertex_buts(), vgroup_assign_verts(), vgroup_copy_active_to_sel(), vgroup_copy_active_to_sel_single(), vgroup_do_remap(), vgroup_normalize_active_vertex(), and vgroup_select_verts().
| int CustomData_get_render_layer | ( | const struct CustomData * | data, |
| int | type | ||
| ) |
| int CustomData_get_render_layer_index | ( | const struct CustomData * | data, |
| int | type | ||
| ) |
| int CustomData_get_stencil_layer | ( | const struct CustomData * | data, |
| int | type | ||
| ) |
| int CustomData_get_stencil_layer_index | ( | const struct CustomData * | data, |
| int | type | ||
| ) |
| bool CustomData_has_interp | ( | const struct CustomData * | data | ) |
Definition at line 3869 of file customdata.c.
References CustomData_layer_has_interp(), and data.
Referenced by bm_grid_fill_array(), and BM_mesh_decimate_collapse().
| bool CustomData_has_layer | ( | const struct CustomData * | data, |
| int | type | ||
| ) |
Referenced by arrayModifier_doArray(), BKE_editmesh_lnorspace_update(), BKE_mesh_calc_normals_split_ex(), BKE_mesh_clear_facemap_customdata(), BKE_mesh_ensure_facemap_customdata(), BKE_mesh_ensure_skin_customdata(), BKE_mesh_has_custom_loop_normals(), BKE_mesh_loops_to_tessdata(), BKE_mesh_mirror_apply_mirror_on_axis_for_modifier(), BKE_mesh_nomain_to_mesh(), BKE_mesh_remesh_reproject_paint_mask(), BKE_mesh_tessface_calc_ex(), BKE_modifier_deform_verts(), BKE_modifier_deform_vertsEM(), BKE_modifier_modify_mesh(), BKE_remesh_reproject_sculpt_face_sets(), BKE_sculpt_color_layer_create_if_needed(), BKE_sculpt_face_sets_ensure_from_base_mesh_visibility(), BKE_sculpt_mask_layers_ensure(), BKE_subdiv_displacement_attach_from_multires(), bm_corners_to_loops_ex(), BM_custom_loop_normals_from_vector_layer(), BM_custom_loop_normals_to_vector_layer(), BM_lnorspacearr_store(), BM_loop_normal_editdata_array_init(), BM_mesh_bm_from_me(), BM_mesh_bm_to_me_for_eval(), BM_mesh_cd_flag_apply(), BM_mesh_cd_flag_from_bmesh(), bmesh_edit_begin(), bmesh_edit_end(), bmo_extrude_edge_only_exec(), bmo_extrude_face_region_exec(), bmo_extrude_vert_indiv_exec(), bpy_bmesh_dealloc(), bpy_bmlayercollection_new(), cdDM_from_mesh_ex(), contarget_get_mesh_mat(), copy_ccg_data(), GeometryExporter::create_normals(), createTransMeshSkin(), displaceModifier_do(), dm_debug_info_layers(), DM_DupPolys(), dynamicPaint_createUVSurface(), ED_mesh_sculpt_color_add(), ED_mesh_sculpt_color_ensure(), ED_mesh_uv_loop_reset_ex(), ED_uvedit_ensure_uvs(), edbm_flip_normals_exec(), EDBM_uv_check(), EDBM_vert_color_check(), edgetag_ensure_cd_flag(), editbmesh_calc_modifier_final_normals(), editbmesh_calc_modifiers(), GeometryExporter::export_key_mesh(), face_map_assign_exec(), face_map_remove_from_exec(), flip_custom_normals_init_data(), fmap_select(), blender::io::alembic::get_loop_normals(), give_parvert(), Freestyle::BlenderFileLoader::insertShapeNode(), lineart_geometry_object_load(), math_layer_info_init(), mesh_add_edges(), mesh_add_loops(), mesh_add_polys(), mesh_add_verts(), mesh_calc_modifier_final_normals(), mesh_calc_modifiers(), mesh_customdata_clear_exec__internal(), mesh_customdata_mask_clear_poll(), mesh_customdata_skin_state(), mesh_customdatacorrect_init_container(), mesh_runtime_debug_info_layers(), MOD_get_texture_coords(), modifyMesh(), multires_ccg_settings_init(), multires_create_grids_in_unsubdivided_base_mesh(), multires_customdata_delete(), multires_modifier_update_mdisps(), multires_subdivide_create_tangent_displacement_linear_grids(), multiresModifier_disp_run(), multiresModifier_subdivide_to_level(), object_fmap_remap_object_mode(), object_fmap_remove_object_mode(), GeometryExporter::operator()(), paint_sample_color(), particle_batch_cache_ensure_pos_and_seg(), particle_batch_cache_ensure_procedural_strand_data(), pointdensity_cache_vertex_color(), proj_paint_state_mesh_eval_init(), psys_thread_context_init_distribute(), SCULPT_dynamic_topology_disable_ex(), sculpt_update_object(), select_linked_delimit_validate(), shape_itemf(), shape_propagate(), similar_edge_select_exec(), similar_face_select_exec(), skin_armature_create_exec(), skin_loose_mark_clear_exec(), skin_radii_equalize_exec(), blender::bke::NormalAttributeProvider::try_get_for_read(), uvedit_unwrap(), uvprojectModifier_do(), vgroup_assign_verts(), workbench_color_type_get(), and blender::io::alembic::write_custom_data().
| bool CustomData_has_math | ( | const struct CustomData * | data | ) |
Checks if any of the customdata layers has math.
Definition at line 3843 of file customdata.c.
References CustomData_layer_has_math(), and data.
Referenced by BM_face_split_edgenet(), BM_mesh_decimate_collapse(), bmo_collapse_uvs_exec(), bmo_inset_region_exec(), mesh_customdatacorrect_init_container(), and mesh_customdatacorrect_init_container_merge_group().
| bool CustomData_has_referenced | ( | const struct CustomData * | data | ) |
Checks if any of the customdata layers is referenced.
Definition at line 3881 of file customdata.c.
References CD_FLAG_NOFREE, and data.
Referenced by BKE_mesh_nomain_to_mesh().
| void CustomData_interp | ( | const struct CustomData * | source, |
| struct CustomData * | dest, | ||
| const int * | src_indices, | ||
| const float * | weights, | ||
| const float * | sub_weights, | ||
| int | count, | ||
| int | dest_index | ||
| ) |
Referenced by customdata_weld(), DM_interp_vert_data(), loop_interpolation_from_corner(), loop_interpolation_init(), set_ccgdm_all_geometry(), subdiv_interpolate_loop_data(), subdiv_mesh_vertex_of_loose_edge_interpolate(), subdiv_vertex_data_interpolate(), vertex_interpolation_from_corner(), and vertex_interpolation_init().
| bool CustomData_is_referenced_layer | ( | struct CustomData * | data, |
| int | type | ||
| ) |
Definition at line 2826 of file customdata.c.
References CD_FLAG_NOFREE, CustomData_get_active_layer_index(), data, CustomDataLayer::flag, and type.
Referenced by BKE_mesh_calc_normals_mapping_simple().
| bool CustomData_layer_has_interp | ( | const struct CustomData * | data, |
| int | layer_n | ||
| ) |
Definition at line 3832 of file customdata.c.
References data, LayerTypeInfo::interp, and layerType_getInfo().
Referenced by CustomData_has_interp(), and customdata_weld().
| bool CustomData_layer_has_math | ( | const struct CustomData * | data, |
| int | layer_n | ||
| ) |
Checks if the layer at physical offset layer_n (in data->layers) support math the below operations.
Definition at line 3820 of file customdata.c.
References LayerTypeInfo::add, data, LayerTypeInfo::dominmax, LayerTypeInfo::equal, LayerTypeInfo::initminmax, layerType_getInfo(), and LayerTypeInfo::multiply.
Referenced by bm_edge_collapse_loop_customdata(), bm_loop_customdata_merge(), bmo_average_vert_facedata_exec(), bmo_collapse_uvs_exec(), bmo_pointmerge_facedata_exec(), contig_ldata_across_edge(), CustomData_has_math(), customdata_weld(), and mesh_customdatacorrect_init_container_merge_group().
| bool CustomData_layer_validate | ( | CustomDataLayer * | layer, |
| const uint | totitems, | ||
| const bool | do_fixes | ||
| ) |
Validate and fix data of layer, if possible (needs relevant callback in layer's type to be defined).
Definition at line 4460 of file customdata.c.
References CustomDataLayer::data, layerType_getInfo(), NULL, CustomDataLayer::type, and LayerTypeInfo::validate.
Referenced by mesh_validate_customdata().
| void CustomData_layers__print | ( | struct CustomData * | data | ) |
Definition at line 4471 of file customdata.c.
References CustomData_file_write_info(), CustomData_layertype_name(), CustomData_sizeof(), data, CustomDataLayer::data, MEM_allocN_len, size(), and CustomDataLayer::type.
| bool CustomData_layertype_is_dynamic | ( | int | type | ) |
Has dynamically allocated members. This is useful to know if operations such as #memcmp are valid when comparing data from two layers.
Definition at line 4303 of file customdata.c.
References LayerTypeInfo::free, layerType_getInfo(), NULL, and type.
Referenced by um_arraystore_cd_compact().
| bool CustomData_layertype_is_singleton | ( | int | type | ) |
Can only ever be one of these.
Definition at line 4292 of file customdata.c.
References LayerTypeInfo::defaultname, layerType_getInfo(), NULL, and type.
Referenced by bpy_bmlayercollection_is_singleton_get(), bpy_bmlayercollection_new(), data_transfer_layersmapping_cdlayers(), mesh_customdata_clear_exec__internal(), and mesh_validate_customdata().
| int CustomData_layertype_layers_max | ( | const int | type | ) |
Definition at line 4313 of file customdata.c.
References LayerTypeInfo::defaultname, LayerTypeInfo::layers_max, layerType_getInfo(), NULL, and type.
Referenced by CustomData_merge().
| const char* CustomData_layertype_name | ( | int | type | ) |
Definition at line 4284 of file customdata.c.
References layerType_getName(), and type.
Referenced by BKE_mesh_runtime_debug_print_cdlayers(), CustomData_layers__print(), dm_debug_info_layers(), and mesh_runtime_debug_info_layers().
| void customData_mask_layers__print | ( | const struct CustomData_MeshMasks * | mask | ) |
| bool CustomData_merge | ( | const struct CustomData * | source, |
| struct CustomData * | dest, | ||
| CustomDataMask | mask, | ||
| eCDAllocType | alloctype, | ||
| int | totelem | ||
| ) |
Definition at line 2098 of file customdata.c.
References CustomDataLayer::active, CustomDataLayer::active_clone, CustomDataLayer::active_mask, CustomDataLayer::active_rnd, CD_ASSIGN, CD_DUPLICATE, CD_FLAG_EXTERNAL, CD_FLAG_IN_MEMORY, CD_FLAG_NOCOPY, CD_FLAG_NOFREE, CD_REFERENCE, CD_TYPE_AS_MASK, customData_add_layer__internal(), CustomData_get_named_layer_index(), CustomData_layertype_layers_max(), CustomData_update_typemap(), data, CustomDataLayer::data, CustomDataLayer::flag, CustomData::layers, mask(), CustomDataLayer::name, NULL, CustomData::totlayer, type, CustomDataLayer::type, and CustomDataLayer::uid.
Referenced by BKE_mesh_from_pointcloud(), BKE_pointcloud_from_mesh(), BM_mesh_bm_to_me_for_eval(), cdDM_from_mesh_ex(), CustomData_bmesh_merge(), CustomData_copy(), and join_mesh_single().
| bool CustomData_MeshMasks_are_matching | ( | const CustomData_MeshMasks * | mask_ref, |
| const CustomData_MeshMasks * | mask_required | ||
| ) |
Return True if all layers set in mask_required are also set in mask_ref
Definition at line 87 of file customdata.c.
References CustomData_MeshMasks::emask, CustomData_MeshMasks::fmask, CustomData_MeshMasks::lmask, CustomData_MeshMasks::pmask, and CustomData_MeshMasks::vmask.
Referenced by BKE_object_data_transfer_ex(), editbmesh_get_eval_cage(), editbmesh_get_eval_cage_and_final(), mesh_get_eval_deform(), and mesh_get_eval_final().
| void CustomData_MeshMasks_update | ( | CustomData_MeshMasks * | mask_dst, |
| const CustomData_MeshMasks * | mask_src | ||
| ) |
Update mask_dst with layers defined in mask_src (equivalent to a bitwise OR).
Definition at line 76 of file customdata.c.
References CustomData_MeshMasks::emask, CustomData_MeshMasks::fmask, CustomData_MeshMasks::lmask, CustomData_MeshMasks::pmask, and CustomData_MeshMasks::vmask.
Referenced by BKE_modifier_calc_data_masks(), BKE_object_handle_data_update(), BM_mesh_bm_from_me(), BM_mesh_bm_to_me(), BM_mesh_bm_to_me_for_eval(), duplibase_for_convert(), ED_view3d_screen_datamask(), editbmesh_calc_modifiers(), mesh_calc_modifiers(), mesh_copy_data(), mesh_get_eval_deform(), mesh_get_eval_final(), object_convert_exec(), screen_opengl_render_init(), and wm_event_do_depsgraph().
| int CustomData_number_of_layers | ( | const struct CustomData * | data, |
| int | type | ||
| ) |
Referenced by InstanceWriter::add_material_bindings(), arrayModifier_doArray(), bc_get_active_uvlayer_name(), bc_get_uvlayer_name(), bev_merge_edge_uvs(), bev_merge_uvs(), BKE_editmesh_loop_tangent_calc(), BKE_mesh_calc_loop_tangent_ex(), BKE_mesh_calc_loop_tangent_step_0(), BKE_mesh_convert_mfaces_to_mpolys_ex(), BKE_mesh_loops_to_tessdata(), BKE_mesh_mirror_apply_mirror_on_axis_for_modifier(), BKE_mesh_validate_all_customdata(), BKE_remesh_reproject_vertex_paint(), BKE_subdiv_eval_refine_from_mesh(), bm_edge_delimit_cdata(), BM_mesh_bm_from_me(), BM_mesh_decimate_dissolve_ex(), bmo_mirror_exec(), bmo_subd_init_shape_info(), bmo_transform_exec(), bpy_bmlayercollection_items(), bpy_bmlayercollection_keys(), bpy_bmlayercollection_length(), bpy_bmlayercollection_new(), bpy_bmlayercollection_values(), GeometryExporter::create_mesh_primitive_list(), GeometryExporter::createTexcoordsSource(), GeometryExporter::createVertexColorSource(), cutEdges(), data_transfer_layersmapping_cdlayers(), data_transfer_layersmapping_cdlayers_multisrc_to_dst(), dt_layers_select_src_itemf(), ED_mesh_color_add(), ED_mesh_sculpt_color_add(), ED_mesh_uv_texture_add(), ED_mesh_uv_texture_ensure(), ED_paint_proj_mesh_data_check(), edbm_blend_from_shape_exec(), get_num_uv_layers(), getActiveUVLayerName(), mesh_ensure_tessellation_customdata(), mesh_validate_customdata(), modifyMesh(), particle_batch_cache_ensure_pos_and_seg(), particle_batch_cache_ensure_procedural_strand_data(), set_ccgdm_all_geometry(), shape_propagate(), shapekey_layers_to_keyblocks(), skin_smooth_hulls(), subdiv_mesh_ctx_cache_uv_layers(), and blender::io::alembic::write_custom_data().
| int CustomData_number_of_layers_typemask | ( | const struct CustomData * | data, |
| CustomDataMask | mask | ||
| ) |
Referenced by BKE_id_attributes_length().
| void CustomData_realloc | ( | struct CustomData * | data, |
| int | totelem | ||
| ) |
Definition at line 2180 of file customdata.c.
References CD_FLAG_NOFREE, data, CustomDataLayer::data, CustomDataLayer::flag, layerType_getInfo(), MEM_reallocN, LayerTypeInfo::size, and CustomDataLayer::type.
Referenced by BKE_mesh_split_faces(), BKE_pointcloud_from_mesh(), BKE_pointcloud_new_nomain(), hair_random(), and pointcloud_random().
| void CustomData_reset | ( | struct CustomData * | data | ) |
NULL's all members and resets the typemap.
Definition at line 2233 of file customdata.c.
References CD_NUMTYPES, copy_vn_i(), and data.
Referenced by BKE_keyblock_mesh_calc_normals(), BKE_mesh_calc_edges(), BKE_mesh_calc_edges_tessface(), BKE_mesh_nomain_to_mesh(), BM_mesh_clear(), BM_mesh_create(), CustomData_blend_read(), CustomData_copy(), CustomData_free(), CustomData_free_typemask(), ED_mesh_join_objects_exec(), extract_tan_ex(), hair_init_data(), mesh_init_data(), mesh_tessface_clear_intern(), and pointcloud_init_data().
| void CustomData_set | ( | const struct CustomData * | data, |
| int | index, | ||
| int | type, | ||
| const void * | source | ||
| ) |
| void* CustomData_set_layer | ( | const struct CustomData * | data, |
| int | type, | ||
| void * | ptr | ||
| ) |
Referenced by BKE_mesh_nomain_to_mesh(), and BM_mesh_bm_to_me().
| void CustomData_set_layer_active | ( | struct CustomData * | data, |
| int | type, | ||
| int | n | ||
| ) |
Definition at line 2401 of file customdata.c.
Referenced by CustomData_bmesh_do_versions_update_active_layers(), CustomData_bmesh_update_active_layers(), ED_mesh_color_add(), ED_mesh_sculpt_color_add(), ED_mesh_uv_texture_add(), and Freestyle::BlenderStrokeRenderer::GenerateStrokeMesh().
| void CustomData_set_layer_active_index | ( | struct CustomData * | data, |
| int | type, | ||
| int | n | ||
| ) |
Definition at line 2439 of file customdata.c.
Referenced by BKE_editmesh_loop_tangent_calc(), and BKE_mesh_calc_loop_tangent_ex().
| void CustomData_set_layer_clone | ( | struct CustomData * | data, |
| int | type, | ||
| int | n | ||
| ) |
Definition at line 2419 of file customdata.c.
Referenced by BKE_mesh_validate_all_customdata(), CustomData_bmesh_do_versions_update_active_layers(), and CustomData_bmesh_update_active_layers().
| void CustomData_set_layer_clone_index | ( | struct CustomData * | data, |
| int | type, | ||
| int | n | ||
| ) |
Definition at line 2457 of file customdata.c.
| void CustomData_set_layer_flag | ( | struct CustomData * | data, |
| int | type, | ||
| int | flag | ||
| ) |
Definition at line 2475 of file customdata.c.
Referenced by BKE_mesh_calc_normals_split_ex(), BKE_mesh_remap_calc_loops_from_mesh(), BKE_mesh_remap_calc_polys_from_mesh(), BM_custom_loop_normals_to_vector_layer(), data_transfer_dtdata_type_preprocess(), dm_getEdgeArray(), dm_getLoopArray(), dm_getPolyArray(), dm_getTessFaceArray(), dm_getVertArray(), modifyMesh(), normalEditModifier_do(), and triangulate_mesh().
| void* CustomData_set_layer_n | ( | const struct CustomData * | data, |
| int | type, | ||
| int | n, | ||
| void * | ptr | ||
| ) |
Definition at line 3284 of file customdata.c.
References CustomData_get_layer_index_n(), data, NULL, ptr, and type.
| bool CustomData_set_layer_name | ( | const struct CustomData * | data, |
| int | type, | ||
| int | n, | ||
| const char * | name | ||
| ) |
Referenced by blo_do_versions_270().
| void CustomData_set_layer_render | ( | struct CustomData * | data, |
| int | type, | ||
| int | n | ||
| ) |
Definition at line 2410 of file customdata.c.
Referenced by CustomData_bmesh_do_versions_update_active_layers(), and CustomData_bmesh_update_active_layers().
| void CustomData_set_layer_render_index | ( | struct CustomData * | data, |
| int | type, | ||
| int | n | ||
| ) |
Definition at line 2448 of file customdata.c.
Referenced by BKE_editmesh_loop_tangent_calc(), and BKE_mesh_calc_loop_tangent_ex().
| void CustomData_set_layer_stencil | ( | struct CustomData * | data, |
| int | type, | ||
| int | n | ||
| ) |
Definition at line 2428 of file customdata.c.
Referenced by BKE_mesh_validate_all_customdata(), CustomData_bmesh_do_versions_update_active_layers(), and CustomData_bmesh_update_active_layers().
| void CustomData_set_layer_stencil_index | ( | struct CustomData * | data, |
| int | type, | ||
| int | n | ||
| ) |
Definition at line 2466 of file customdata.c.
| void CustomData_set_layer_unique_name | ( | struct CustomData * | data, |
| int | index | ||
| ) |
Definition at line 4361 of file customdata.c.
References BLI_uniquename_cb(), customdata_unique_check(), data, DATA_, LayerTypeInfo::defaultname, layerType_getInfo(), CustomDataLayer::name, NULL, STRNCPY, type, and CustomDataLayer::type.
Referenced by BKE_id_attribute_rename(), and customData_add_layer__internal().
| void CustomData_set_only_copy | ( | const struct CustomData * | data, |
| CustomDataMask | mask | ||
| ) |
Definition at line 2871 of file customdata.c.
References CD_FLAG_NOCOPY, CD_TYPE_AS_MASK, data, and mask().
Referenced by DM_set_only_copy(), mesh_set_only_copy(), and multiresbake_create_hiresdm().
| int CustomData_sizeof | ( | int | type | ) |
Definition at line 4277 of file customdata.c.
References layerType_getInfo(), LayerTypeInfo::size, and type.
Referenced by BKE_mesh_runtime_debug_print_cdlayers(), bm_edge_delimit_cdata(), BM_mesh_decimate_dissolve_ex(), BM_vert_loop_groups_data_layer_merge(), BM_vert_loop_groups_data_layer_merge_weights(), CustomData_layers__print(), customdata_weld(), dm_debug_info_layers(), mesh_runtime_debug_info_layers(), um_arraystore_cd_compact(), um_arraystore_cd_expand(), and um_arraystore_cd_free().
| void CustomData_swap | ( | struct CustomData * | data, |
| const int | index_a, | ||
| const int | index_b | ||
| ) |
Swap two items of given custom data, in all available layers.
Definition at line 3138 of file customdata.c.
References data, layerType_getInfo(), MEM_freeN, MEM_mallocN, POINTER_OFFSET, size(), and LayerTypeInfo::size.
Referenced by BKE_mesh_polygon_flip_ex().
| void CustomData_swap_corners | ( | struct CustomData * | data, |
| int | index, | ||
| const int * | corner_indices | ||
| ) |
Swap data inside each item, for all layers. This only applies to item types that may store several sub-item data (e.g. corner data [UVs, VCol, ...] of tessellated faces).
| corner_indices | A mapping 'new_index -> old_index' of sub-item data. |
Definition at line 3122 of file customdata.c.
References data, layerType_getInfo(), POINTER_OFFSET, LayerTypeInfo::size, and LayerTypeInfo::swap.
Referenced by test_index_face().
| void CustomData_to_bmesh_block | ( | const struct CustomData * | source, |
| struct CustomData * | dest, | ||
| int | src_index, | ||
| void ** | dest_block, | ||
| bool | use_default_init | ||
| ) |
Referenced by BM_mesh_bm_from_me().
| void CustomData_to_bmeshpoly | ( | struct CustomData * | fdata, |
| struct CustomData * | ldata, | ||
| int | totloop | ||
| ) |
Definition at line 3316 of file customdata.c.
References CD_CALLOC, CD_MCOL, CD_MDISPS, CD_MLOOPCOL, CD_MLOOPUV, CD_MTFACE, CD_NORMAL, CD_TESSLOOPNORMAL, CustomData_add_layer_named(), CustomData::layers, CustomDataLayer::name, NULL, CustomData::totlayer, and CustomDataLayer::type.
Referenced by BKE_mesh_convert_mfaces_to_mpolys_ex().
| void CustomData_update_typemap | ( | struct CustomData * | data | ) |
Definition at line 2071 of file customdata.c.
References CD_NUMTYPES, data, and type.
Referenced by BKE_editmesh_loop_tangent_calc(), BKE_mesh_from_pointcloud(), BKE_pointcloud_from_mesh(), blo_do_versions_260(), blo_do_versions_280(), BM_mesh_bm_to_me(), CustomData_add_layer(), CustomData_add_layer_named(), CustomData_blend_read(), CustomData_merge(), customdata_typemap_is_valid(), and customData_update_offsets().
| void CustomData_validate_layer_name | ( | const struct CustomData * | data, |
| int | type, | ||
| const char * | name, | ||
| char * | outname | ||
| ) |
| bool CustomData_verify_versions | ( | struct CustomData * | data, |
| int | index | ||
| ) |
Definition at line 4413 of file customdata.c.
References CD_FACEMAP, CD_NUMTYPES, CD_PAINT_MASK, CD_SCULPT_FACE_SETS, CLOG_WARN, data, LayerTypeInfo::defaultname, ELEM, layerType_getInfo(), LOG, LayerTypeInfo::structnum, and CustomDataLayer::type.
Referenced by CustomData_blend_read().
|
extern |
Definition at line 1919 of file customdata.c.
Referenced by add_verts_to_dgroups(), BKE_crazyspace_get_first_deform_matrices_editbmesh(), BKE_crazyspace_get_mapped_editverts(), BKE_editmesh_vert_coords_alloc(), BKE_multires_create_mesh(), BKE_object_data_transfer_ex(), BKE_object_data_transfer_layout(), BKE_object_handle_data_update(), bvh_get_mesh(), dt_layers_select_src_itemf(), ED_mesh_pick_vert(), ED_mesh_shapes_join_objects_exec(), ED_view3d_screen_datamask(), editbmesh_calc_modifiers(), knifeproject_poly_from_object(), mesh_foreachScreenEdge(), mesh_foreachScreenEdge_clip_bb_segment(), mesh_foreachScreenFace(), mesh_foreachScreenVert(), meshobject_foreachScreenVert(), modifier_skin_armature_create(), multires_modifier_update_mdisps(), multires_reshape_create_subdiv(), multiresbake_create_hiresdm(), multiresbake_create_loresdm(), multiresModifier_reshapeFromObject(), object_force_modifier_update_for_bind(), paint_sample_color(), particle_intersect_mesh(), pointdensity_cache_object(), and vgroup_fix().
|
extern |
Definition at line 1926 of file customdata.c.
Referenced by ED_mesh_pick_face_vert(), mesh_calc_modifiers(), vpaint_proj_dm_map_cosnos_init(), and vpaint_proj_dm_map_cosnos_update().
|
extern |
Definition at line 1964 of file customdata.c.
Referenced by BM_mesh_bm_from_me(), BM_mesh_copy_init_customdata(), BM_mesh_copy_init_customdata_from_mesh(), and bpy_bmesh_from_object().
|
extern |
Definition at line 1952 of file customdata.c.
Referenced by BM_mesh_bm_to_me_for_eval(), DM_DupPolys(), DM_from_template(), and mesh_copy_data().
|
extern |
Definition at line 1943 of file customdata.c.
|
extern |
Definition at line 1986 of file customdata.c.
Referenced by BKE_mesh_new_nomain_from_template(), geometry_extract_apply(), loop_interpolation_init(), subdiv_mesh_topology_info(), and vertex_interpolation_init().
|
extern |
cover values copied by BKE_mesh_loops_to_tessdata
Definition at line 1977 of file customdata.c.
|
extern |
Definition at line 1933 of file customdata.c.
Referenced by bc_get_mesh_copy(), BKE_mesh_from_nurbs_displist(), BKE_mesh_new_from_object_to_bmain(), BKE_mesh_to_curve(), BKE_mesh_to_pointcloud(), BKE_mesh_validate_all_customdata(), BM_mesh_bm_to_me(), CDDM_from_mesh(), blender::io::alembic::ABCHairWriter::do_write(), duplibase_for_convert(), join_mesh_single(), mesh_add_edges(), mesh_add_loops(), mesh_add_polys(), mesh_add_verts(), mesh_blend_write(), mesh_copy_data(), mesh_new_from_mesh_object_with_layers(), modifier_apply_obdata(), multires_external_save_exec(), multiresModifier_rebuild_subdiv(), object_convert_exec(), paint_mask_slice_exec(), quadriflow_start_job(), blender::io::alembic::AbcSubDReader::readObjectData(), blender::io::alembic::AbcPointsReader::readObjectData(), blender::io::alembic::AbcMeshReader::readObjectData(), SCULPT_dynamic_topology_disable_ex(), sculpt_gesture_apply_trim(), sculpt_undo_geometry_restore_data(), sculpt_undo_geometry_store_data(), and voxel_remesh_exec().