|
Blender V4.3
|
Go to the source code of this file.
Classes | |
| struct | CustomDataLayer |
| struct | CustomDataExternal |
| struct | CustomData |
| struct | CustomData_MeshMasks |
Typedefs | |
| typedef struct CustomDataLayer | CustomDataLayer |
| typedef struct CustomDataExternal | CustomDataExternal |
| typedef struct CustomData | CustomData |
| typedef enum eCustomDataType | eCustomDataType |
| typedef struct CustomData_MeshMasks | CustomData_MeshMasks |
Enumerations | |
| enum | eCustomDataType { CD_AUTO_FROM_NAME = -1 , CD_MDEFORMVERT = 2 , CD_MFACE = 4 , CD_MTFACE = 5 , CD_MCOL = 6 , CD_ORIGINDEX = 7 , CD_NORMAL = 8 , CD_PROP_FLOAT = 10 , CD_PROP_INT32 = 11 , CD_PROP_STRING = 12 , CD_ORIGSPACE = 13 , CD_ORCO = 14 , CD_PROP_BYTE_COLOR = 17 , CD_TANGENT = 18 , CD_MDISPS = 19 , CD_PROP_FLOAT4X4 = 20 , CD_CLOTH_ORCO = 23 , CD_SHAPE_KEYINDEX = 27 , CD_SHAPEKEY = 28 , CD_ORIGSPACE_MLOOP = 31 , CD_BM_ELEM_PYPTR = 33 , CD_GRID_PAINT_MASK = 35 , CD_MVERT_SKIN = 36 , CD_FREESTYLE_EDGE = 37 , CD_FREESTYLE_FACE = 38 , CD_MLOOPTANGENT = 39 , CD_TESSLOOPNORMAL = 40 , CD_CUSTOMLOOPNORMAL = 41 , CD_PROP_INT8 = 45 , CD_PROP_INT32_2D = 46 , CD_PROP_COLOR = 47 , CD_PROP_FLOAT3 = 48 , CD_PROP_FLOAT2 = 49 , CD_PROP_BOOL = 50 , CD_PROP_QUATERNION = 52 , CD_NUMTYPES = 53 } |
| enum | { CD_FLAG_NOCOPY = (1 << 0) , CD_FLAG_UNUSED = (1 << 1) , CD_FLAG_TEMPORARY = ((1 << 2) | CD_FLAG_NOCOPY) , CD_FLAG_EXTERNAL = (1 << 3) , CD_FLAG_IN_MEMORY = (1 << 4) } |
Used for custom mesh data types (stored per vert/edge/loop/face)
Definition in file DNA_customdata_types.h.
| #define CD_MASK_ALL (~0LL) |
Definition at line 224 of file DNA_customdata_types.h.
Referenced by BKE_grease_pencil_nomain_to_grease_pencil(), BKE_pointcloud_nomain_to_pointcloud(), blender::bke::CurvesGeometry::blend_write(), blender::bke::curves::copy_only_curve_domain(), blender::bke::CurvesGeometry::CurvesGeometry(), grease_pencil_blend_write(), grease_pencil_copy_data(), blender::bke::Instances::Instances(), blender::ed::greasepencil::join_object_with_active(), pointcloud_blend_write(), pointcloud_copy_data(), blender::geometry::reorder_customdata(), reorder_customdata(), blender::geometry::reorder_customdata_groups(), and shrink_customdata().
| #define CD_MASK_BM_ELEM_PYPTR (1LL << CD_BM_ELEM_PYPTR) |
Definition at line 202 of file DNA_customdata_types.h.
Referenced by bpy_bm_elem_copy_from().
| #define CD_MASK_CLOTH_ORCO (1 << CD_CLOTH_ORCO) |
Definition at line 197 of file DNA_customdata_types.h.
Referenced by blender::bke::mesh_calc_modifiers(), and required_data_mask().
| #define CD_MASK_COLOR_ALL (CD_MASK_PROP_COLOR | CD_MASK_PROP_BYTE_COLOR) |
Definition at line 233 of file DNA_customdata_types.h.
Referenced by blender::ed::sculpt_paint::color::active_color_attribute(), blender::ed::sculpt_paint::color::active_color_attribute_for_write(), blender::draw::pbvh::attribute_format(), BKE_color_attribute_supported(), BKE_id_attributes_color_find(), bmo_get_loop_color_ref(), color_clamp_index(), color_name_from_index(), color_name_to_index(), data_transfer_mesh_attributes_transfer_active_color_string(), data_transfer_mesh_attributes_transfer_default_color_string(), edbm_reverse_colors_exec(), edbm_rotate_colors_exec(), blender::ed::geometry::geometry_color_attribute_convert_poll(), blender::bke::mesh_ensure_default_color_attribute_on_add(), blender::ed::object::remove_invalid_attribute_strings(), and blender::ed::sculpt_paint::undo::save_active_attribute().
| #define CD_MASK_CUSTOMLOOPNORMAL (1LL << CD_CUSTOMLOOPNORMAL) |
Definition at line 210 of file DNA_customdata_types.h.
Referenced by BKE_object_data_transfer_dttypes_to_cdmask(), blender::deg::DepsgraphRelationBuilder::build_constraints(), required_data_mask(), required_data_mask(), required_data_mask(), required_data_mask(), required_data_mask(), blender::update_depsgraph(), and update_depsgraph().
| #define CD_MASK_FREESTYLE_EDGE (1LL << CD_FREESTYLE_EDGE) |
Definition at line 206 of file DNA_customdata_types.h.
Referenced by BKE_object_handle_data_update().
| #define CD_MASK_FREESTYLE_FACE (1LL << CD_FREESTYLE_FACE) |
Definition at line 207 of file DNA_customdata_types.h.
Referenced by BKE_object_handle_data_update().
| #define CD_MASK_GRID_PAINT_MASK (1LL << CD_GRID_PAINT_MASK) |
Definition at line 204 of file DNA_customdata_types.h.
Definition at line 186 of file DNA_customdata_types.h.
Referenced by pointdensity_cache_object().
| #define CD_MASK_MDEFORMVERT (1 << CD_MDEFORMVERT) |
Definition at line 183 of file DNA_customdata_types.h.
Referenced by BKE_object_data_transfer_dttypes_to_cdmask(), BKE_object_handle_data_update(), blender::deg::DepsgraphRelationBuilder::build_constraints(), blender::deg::DepsgraphRelationBuilder::build_ik_pose(), ED_view3d_datamask(), blender::bke::object_get_datamask(), pointdensity_cache_object(), psys_emitter_customdata_mask(), blender::required_data_mask(), required_data_mask(), required_data_mask(), required_data_mask(), required_data_mask(), required_data_mask(), required_data_mask(), required_data_mask(), required_data_mask(), required_data_mask(), required_data_mask(), required_data_mask(), required_data_mask(), required_data_mask(), required_data_mask(), required_data_mask(), required_data_mask(), required_data_mask(), required_data_mask(), required_data_mask(), required_data_mask(), required_data_mask(), required_data_mask(), required_data_mask(), required_data_mask(), required_data_mask(), required_data_mask(), required_data_mask(), required_data_mask(), required_data_mask(), required_data_mask(), required_data_mask(), required_data_mask(), required_data_mask(), required_data_mask(), and required_data_mask().
Definition at line 196 of file DNA_customdata_types.h.
Referenced by convert_mfaces_to_mpolys(), multires_ensure_external_read(), multires_force_external_reload(), and multires_topology_changed().
Definition at line 184 of file DNA_customdata_types.h.
| #define CD_MASK_MLOOPTANGENT (1LL << CD_MLOOPTANGENT) |
Definition at line 208 of file DNA_customdata_types.h.
Definition at line 185 of file DNA_customdata_types.h.
Referenced by blender::bke::object_get_datamask(), pointdensity_cache_object(), psys_emitter_customdata_mask(), required_data_mask(), required_data_mask(), required_data_mask(), required_data_mask(), required_data_mask(), required_data_mask(), required_data_mask(), and required_data_mask().
| #define CD_MASK_MULTIRES_GRIDS (CD_MASK_MDISPS | CD_GRID_PAINT_MASK) |
Multi-resolution loop data.
Definition at line 221 of file DNA_customdata_types.h.
| #define CD_MASK_MVERT_SKIN (1LL << CD_MVERT_SKIN) |
Definition at line 205 of file DNA_customdata_types.h.
Referenced by blender::bke::object_get_datamask(), and required_data_mask().
Definition at line 188 of file DNA_customdata_types.h.
Referenced by triangulate_mesh().
Definition at line 193 of file DNA_customdata_types.h.
Referenced by BKE_object_handle_data_update(), ED_view3d_datamask(), blender::bke::editbmesh_calc_modifiers(), blender::bke::mesh_calc_modifiers(), and psys_emitter_customdata_mask().
| #define CD_MASK_ORIGINDEX (1 << CD_ORIGINDEX) |
Definition at line 187 of file DNA_customdata_types.h.
Referenced by BKE_mesh_mirror_bisect_on_mirror_plane_for_modifier(), blender::deg::DepsgraphRelationBuilder::build_object_parent(), cdDM_from_mesh_ex(), doEdgeSplit(), blender::bke::editbmesh_calc_modifiers(), blender::bke::mesh_build_data(), blender::bke::mesh_calc_modifiers(), mesh_new_from_mesh_object_with_layers(), modify_mesh(), modify_mesh(), psys_emitter_customdata_mask(), required_data_mask(), triangulate_mesh(), blender::nodes::node_geo_triangulate_cc::triangulate_mesh_selection(), and WireframeModifier_do().
| #define CD_MASK_ORIGSPACE (1 << CD_ORIGSPACE) |
Definition at line 192 of file DNA_customdata_types.h.
| #define CD_MASK_ORIGSPACE_MLOOP (1LL << CD_ORIGSPACE_MLOOP) |
Definition at line 201 of file DNA_customdata_types.h.
Referenced by blender::bke::editbmesh_calc_modifiers(), blender::bke::mesh_calc_modifiers(), and psys_emitter_customdata_mask().
| #define CD_MASK_PROP_ALL |
Definition at line 227 of file DNA_customdata_types.h.
Referenced by attribute_type_supports_viewer_overlay(), BKE_attribute_duplicate(), BKE_attribute_rename(), bke_attribute_rename_if_exists(), BKE_attributes_active_get(), BKE_attributes_active_set(), BKE_mesh_to_pointcloud(), BKE_object_handle_data_update(), BKE_pointcloud_to_mesh(), cd_layer_find_dupe(), blender::ed::sculpt_paint::dyntopo::dyntopo_supports_layer(), blender::required_data_mask(), and blender::ed::sculpt_paint::undo::set_active_layer().
| #define CD_MASK_PROP_BOOL (1ULL << CD_PROP_BOOL) |
Definition at line 214 of file DNA_customdata_types.h.
| #define CD_MASK_PROP_BYTE_COLOR (1 << CD_PROP_BYTE_COLOR) |
Definition at line 194 of file DNA_customdata_types.h.
Referenced by data_transfer_mesh_attributes_transfer_active_color_string(), data_transfer_mesh_attributes_transfer_default_color_string(), blender::ed::object::dt_layers_select_src_itemf(), ED_view3d_datamask(), blender::bke::object_get_datamask(), pointdensity_cache_object(), required_data_mask(), and required_data_mask().
| #define CD_MASK_PROP_COLOR (1ULL << CD_PROP_COLOR) |
Definition at line 211 of file DNA_customdata_types.h.
Referenced by data_transfer_mesh_attributes_transfer_active_color_string(), data_transfer_mesh_attributes_transfer_default_color_string(), blender::ed::object::dt_layers_select_src_itemf(), and ED_view3d_datamask().
| #define CD_MASK_PROP_FLOAT (1 << CD_PROP_FLOAT) |
Definition at line 189 of file DNA_customdata_types.h.
| #define CD_MASK_PROP_FLOAT2 (1ULL << CD_PROP_FLOAT2) |
Definition at line 213 of file DNA_customdata_types.h.
Referenced by BKE_object_data_transfer_dttypes_to_cdmask(), ED_view3d_datamask(), blender::bke::object_get_datamask(), required_data_mask(), and required_data_mask().
| #define CD_MASK_PROP_FLOAT3 (1ULL << CD_PROP_FLOAT3) |
Definition at line 212 of file DNA_customdata_types.h.
| #define CD_MASK_PROP_FLOAT4X4 (1ULL << CD_PROP_FLOAT4X4) |
Definition at line 218 of file DNA_customdata_types.h.
Referenced by attribute_type_supports_viewer_overlay().
| #define CD_MASK_PROP_INT32 (1 << CD_PROP_INT32) |
Definition at line 190 of file DNA_customdata_types.h.
Referenced by required_data_mask().
| #define CD_MASK_PROP_INT32_2D (1ULL << CD_PROP_INT32_2D) |
Definition at line 216 of file DNA_customdata_types.h.
| #define CD_MASK_PROP_INT8 (1ULL << CD_PROP_INT8) |
Definition at line 215 of file DNA_customdata_types.h.
| #define CD_MASK_PROP_QUATERNION (1ULL << CD_PROP_QUATERNION) |
Definition at line 217 of file DNA_customdata_types.h.
Referenced by attribute_type_supports_viewer_overlay().
| #define CD_MASK_PROP_STRING (1 << CD_PROP_STRING) |
Definition at line 191 of file DNA_customdata_types.h.
| #define CD_MASK_SHAPE_KEYINDEX (1 << CD_SHAPE_KEYINDEX) |
Definition at line 199 of file DNA_customdata_types.h.
Referenced by undomesh_from_editmesh().
| #define CD_MASK_SHAPEKEY (1 << CD_SHAPEKEY) |
Definition at line 200 of file DNA_customdata_types.h.
Referenced by BKE_mesh_mirror_apply_mirror_on_axis().
| #define CD_MASK_TANGENT (1 << CD_TANGENT) |
Definition at line 195 of file DNA_customdata_types.h.
| #define CD_MASK_TESSLOOPNORMAL (1LL << CD_TESSLOOPNORMAL) |
Definition at line 209 of file DNA_customdata_types.h.
| #define DYNTOPO_NODE_NONE -1 |
Definition at line 263 of file DNA_customdata_types.h.
Referenced by blender::bke::pbvh::Tree::from_bmesh(), blender::bke::pbvh::pbvh_bmesh_collapse_short_edges(), blender::bke::pbvh::pbvh_bmesh_create_nodes_fast_recursive(), blender::bke::pbvh::pbvh_bmesh_face_remove(), blender::bke::pbvh::pbvh_bmesh_node_finalize(), blender::bke::pbvh::pbvh_bmesh_node_index_from_face(), blender::bke::pbvh::pbvh_bmesh_node_index_from_vert(), blender::bke::pbvh::pbvh_bmesh_node_split(), blender::bke::pbvh::pbvh_bmesh_subdivide_long_edges(), and blender::bke::pbvh::pbvh_bmesh_vert_remove().
| #define MAX_CUSTOMDATA_LAYER_NAME 68 |
Definition at line 47 of file DNA_customdata_types.h.
Referenced by BKE_attribute_duplicate(), BKE_attribute_remove(), BKE_attribute_rename(), BKE_mesh_calc_loop_tangent_ex(), BKE_mesh_calc_loop_tangent_step_0(), BKE_uv_map_edge_select_name_get(), BKE_uv_map_pin_name_get(), BKE_uv_map_vert_select_name_get(), blender::bm_face_loop_table_build(), BM_mesh_bm_from_me(), BM_uv_map_ensure_edge_select_attr(), BM_uv_map_ensure_pin_attr(), BM_uv_map_ensure_select_and_pin_attrs(), BM_uv_map_ensure_vert_select_attr(), BM_uv_map_get_offsets_from_layer(), CustomData_name_maxncpy_calc(), CustomData_validate_layer_name(), dynamicPaint_createUVSurface(), dynamicPaint_setInitialColor(), ED_mesh_uv_map_edge_select_layer_ensure(), ED_mesh_uv_map_edge_select_layer_get(), ED_mesh_uv_map_pin_layer_ensure(), ED_mesh_uv_map_pin_layer_get(), ED_mesh_uv_map_vert_select_layer_ensure(), ED_mesh_uv_map_vert_select_layer_get(), blender::draw::extract_tangents(), blender::draw::extract_tangents_subdiv(), MOD_get_texture_coords(), modify_mesh(), and pointdensity_cache_vertex_color().
| #define MAX_CUSTOMDATA_LAYER_NAME_NO_PREFIX 64 |
Definition at line 48 of file DNA_customdata_types.h.
Referenced by CustomData_name_maxncpy_calc(), blender::ed::object::OBJECT_OT_bake(), RNA_api_mesh(), rna_def_attribute_group_mesh(), rna_def_mloopcol(), rna_def_mloopuv(), rna_def_modifier_explode(), and rna_def_skin_vertices().
| #define MAX_MTFACE 8 |
Definition at line 261 of file DNA_customdata_types.h.
Referenced by BKE_editmesh_loop_tangent_calc(), BKE_mesh_calc_loop_tangent_ex(), BKE_mesh_validate_all_customdata(), ED_mesh_uv_add(), blender::draw::extract_edituv_stretch_angle_subdiv(), blender::draw::extract_tan_init_common(), blender::draw::extract_tangents(), blender::draw::extract_tangents_subdiv(), blender::draw::extract_uv_maps(), blender::draw::extract_uv_maps_subdiv(), layerMaxNum_tface(), blender::draw::mesh_extract_uv_format_init(), blender::draw::particle_batch_cache_clear_hair(), blender::draw::particle_batch_cache_ensure_procedural_strand_data(), blender::io::alembic::read_custom_data(), and blender::bke::subdiv::subdiv_mesh_ctx_cache_uv_layers().
| typedef struct CustomData CustomData |
CustomData stores an arbitrary number of typed data "layers" for multiple elements. The layers are typically geometry attributes, and the elements are typically geometry elements like vertices, edges, or curves.
Each layer has a type, often with certain semantics beyond the type of the raw data. However, a subset of the layer types are exposed as attributes and accessed with a higher level API built around #AttributeAccessor.
For BMesh, CustomData is adapted to store the data from all layers in a single "block" which is allocated for each element. Each layer's data is stored at a certain offset into every block's data.
| typedef struct CustomData_MeshMasks CustomData_MeshMasks |
| typedef struct CustomDataExternal CustomDataExternal |
| typedef struct CustomDataLayer CustomDataLayer |
Descriptor and storage for a custom data layer.
| typedef enum eCustomDataType eCustomDataType |
| anonymous enum |
#CustomData.flag
| Enumerator | |
|---|---|
| CD_FLAG_NOCOPY | |
| CD_FLAG_UNUSED | |
| CD_FLAG_TEMPORARY | |
| CD_FLAG_EXTERNAL | |
| CD_FLAG_IN_MEMORY | |
Definition at line 244 of file DNA_customdata_types.h.
| enum eCustomDataType |
Definition at line 87 of file DNA_customdata_types.h.