Blender V4.5
BKE_mesh_legacy_convert.hh File Reference
#include "BLI_span.hh"

Go to the source code of this file.

Namespaces

namespace  blender
namespace  blender::bke

Functions

void blender::bke::mesh_custom_normals_to_legacy (MutableSpan< CustomDataLayer > corner_layers)
void blender::bke::mesh_custom_normals_to_generic (Mesh &mesh)
void blender::bke::mesh_sculpt_mask_to_legacy (MutableSpan< CustomDataLayer > vert_layers)
void blender::bke::mesh_sculpt_mask_to_generic (Mesh &mesh)
void BKE_mesh_legacy_convert_uvs_to_generic (Mesh *mesh)
void BKE_mesh_legacy_face_set_to_generic (Mesh *mesh)
void BKE_mesh_legacy_edge_crease_to_layers (Mesh *mesh)
void BKE_mesh_legacy_crease_to_generic (Mesh *mesh)
void BKE_mesh_legacy_bevel_weight_to_layers (Mesh *mesh)
void BKE_mesh_legacy_bevel_weight_to_generic (Mesh *mesh)
void BKE_mesh_legacy_convert_flags_to_hide_layers (Mesh *mesh)
void BKE_mesh_legacy_convert_flags_to_selection_layers (Mesh *mesh)
void BKE_mesh_legacy_convert_mpoly_to_material_indices (Mesh *mesh)
void BKE_mesh_legacy_attribute_flags_to_strings (Mesh *mesh)
void BKE_mesh_legacy_sharp_faces_from_flags (Mesh *mesh)
void BKE_mesh_legacy_sharp_edges_from_flags (Mesh *mesh)
void BKE_mesh_legacy_uv_seam_from_flags (Mesh *mesh)
void BKE_mesh_legacy_convert_verts_to_positions (Mesh *mesh)
void BKE_mesh_legacy_convert_edges_to_generic (Mesh *mesh)
void BKE_mesh_legacy_convert_polys_to_offsets (Mesh *mesh)
void BKE_mesh_legacy_convert_loops_to_corners (Mesh *mesh)
void BKE_mesh_legacy_face_map_to_generic (Main *bmain)
void BKE_mesh_tessface_calc (Mesh *mesh)
void BKE_mesh_tessface_ensure (Mesh *mesh)
int BKE_mesh_mface_index_validate (MFace *mface, CustomData *mfdata, int mfindex, int nr)
void BKE_mesh_convert_mfaces_to_mpolys (Mesh *mesh)
void BKE_mesh_do_versions_convert_mfaces_to_mpolys (Mesh *mesh)
void BKE_mesh_calc_edges_legacy (Mesh *mesh)
void BKE_mesh_do_versions_cd_flag_init (Mesh *mesh)
void BKE_main_mesh_legacy_convert_auto_smooth (Main &bmain)
void BKE_mesh_calc_edges_tessface (Mesh *mesh)
BLI_INLINE int BKE_mesh_origindex_mface_mpoly (const int *index_mf_to_mpoly, const int *index_mp_to_orig, const int i)

Function Documentation

◆ BKE_main_mesh_legacy_convert_auto_smooth()

◆ BKE_mesh_calc_edges_legacy()

◆ BKE_mesh_calc_edges_tessface()

◆ BKE_mesh_convert_mfaces_to_mpolys()

◆ BKE_mesh_do_versions_cd_flag_init()

◆ BKE_mesh_do_versions_convert_mfaces_to_mpolys()

void BKE_mesh_do_versions_convert_mfaces_to_mpolys ( Mesh * mesh)

The same as BKE_mesh_convert_mfaces_to_mpolys but oriented to be used in #do_versions from readfile.cc the difference is how active/render/clone/stencil indices are handled here.

normally they're being set from pdata which totally makes sense for meshes which are already converted to BMesh structures, but when loading older files indices shall be updated in other way around, so newly added pdata and ldata would have this indices set based on pdata layer.

this is normally only needed when reading older files, in all other cases BKE_mesh_convert_mfaces_to_mpolys shall be always used.

Definition at line 798 of file mesh_legacy_convert.cc.

References BKE_mesh_do_versions_convert_mfaces_to_mpolys(), BKE_mesh_legacy_convert_loops_to_corners(), BKE_mesh_legacy_convert_polys_to_offsets(), CD_MFACE, convert_mfaces_to_mpolys(), Mesh::corner_data, Mesh::corners_num, CustomData_bmesh_do_versions_update_active_layers(), CustomData_get_layer(), Mesh::edges_num, Mesh::face_data, Mesh::faces_num, Mesh::fdata_legacy, Mesh::id, mesh_ensure_tessellation_customdata(), and Mesh::totface_legacy.

Referenced by BKE_mesh_do_versions_convert_mfaces_to_mpolys(), and do_versions_after_linking_280().

◆ BKE_mesh_legacy_attribute_flags_to_strings()

◆ BKE_mesh_legacy_bevel_weight_to_generic()

void BKE_mesh_legacy_bevel_weight_to_generic ( Mesh * mesh)

Move bevel weight to generic float attribute type.

Definition at line 1480 of file mesh_legacy_convert.cc.

References BKE_mesh_legacy_bevel_weight_to_generic(), CD_PROP_FLOAT, and replace_custom_data_layer_with_named().

Referenced by BKE_mesh_legacy_bevel_weight_to_generic(), and blo_do_versions_400().

◆ BKE_mesh_legacy_bevel_weight_to_layers()

void BKE_mesh_legacy_bevel_weight_to_layers ( Mesh * mesh)

◆ BKE_mesh_legacy_convert_edges_to_generic()

◆ BKE_mesh_legacy_convert_flags_to_hide_layers()

void BKE_mesh_legacy_convert_flags_to_hide_layers ( Mesh * mesh)

◆ BKE_mesh_legacy_convert_flags_to_selection_layers()

void BKE_mesh_legacy_convert_flags_to_selection_layers ( Mesh * mesh)

◆ BKE_mesh_legacy_convert_loops_to_corners()

◆ BKE_mesh_legacy_convert_mpoly_to_material_indices()

◆ BKE_mesh_legacy_convert_polys_to_offsets()

◆ BKE_mesh_legacy_convert_uvs_to_generic()

◆ BKE_mesh_legacy_convert_verts_to_positions()

◆ BKE_mesh_legacy_crease_to_generic()

void BKE_mesh_legacy_crease_to_generic ( Mesh * mesh)

◆ BKE_mesh_legacy_edge_crease_to_layers()

void BKE_mesh_legacy_edge_crease_to_layers ( Mesh * mesh)

◆ BKE_mesh_legacy_face_map_to_generic()

◆ BKE_mesh_legacy_face_set_to_generic()

◆ BKE_mesh_legacy_sharp_edges_from_flags()

◆ BKE_mesh_legacy_sharp_faces_from_flags()

◆ BKE_mesh_legacy_uv_seam_from_flags()

◆ BKE_mesh_mface_index_validate()

int BKE_mesh_mface_index_validate ( MFace * mface,
CustomData * mfdata,
int mfindex,
int nr )

Rotates the vertices of a face in case v[2] or v[3] (vertex index) is = 0. this is necessary to make the if MFace.v4 check for quads work.

Definition at line 937 of file mesh_legacy_convert.cc.

References BKE_mesh_mface_index_validate(), CustomData_swap_corners(), MFace::v1, MFace::v2, MFace::v3, and MFace::v4.

Referenced by BKE_mesh_mface_index_validate(), cutEdges(), explodeMesh(), and mesh_tessface_calc().

◆ BKE_mesh_origindex_mface_mpoly()

BLI_INLINE int BKE_mesh_origindex_mface_mpoly ( const int * index_mf_to_mpoly,
const int * index_mp_to_orig,
const int i )

◆ BKE_mesh_tessface_calc()

◆ BKE_mesh_tessface_ensure()