Blender V4.3
blender::bke::mesh::CornerNormalSpaceArray Struct Reference

#include <BKE_mesh.hh>

Public Attributes

Array< CornerNormalSpacespaces
 
Array< intcorner_space_indices
 
Array< Array< int > > corners_by_space
 
bool create_corners_by_space = false
 

Detailed Description

Storage for corner fan coordinate spaces for an entire mesh.

Definition at line 134 of file BKE_mesh.hh.

Member Data Documentation

◆ corner_space_indices

Array<int> blender::bke::mesh::CornerNormalSpaceArray::corner_space_indices

The index of the data in the spaces array for each face corner (the array size is the same as Mesh::corners_num). Rare -1 values define face corners without a coordinate space.

Definition at line 147 of file BKE_mesh.hh.

Referenced by apply_weights_vertex_normal(), BKE_mesh_mirror_apply_mirror_on_axis_for_modifier(), blender::bke::mesh::mesh_normals_corner_custom_set(), blender::bke::mesh::normals_calc_corners(), and blender::bke::mesh::split_corner_normal_fan_do().

◆ corners_by_space

Array<Array<int> > blender::bke::mesh::CornerNormalSpaceArray::corners_by_space

A map containing the face corners that make up each space, in the order that they were processed (winding around a vertex).

Definition at line 153 of file BKE_mesh.hh.

Referenced by blender::bke::mesh::mesh_normals_corner_custom_set(), blender::bke::mesh::normals_calc_corners(), and blender::bke::mesh::split_corner_normal_fan_do().

◆ create_corners_by_space

bool blender::bke::mesh::CornerNormalSpaceArray::create_corners_by_space = false

Whether to create the above map when calculating normals.

Definition at line 155 of file BKE_mesh.hh.

Referenced by blender::bke::mesh::mesh_normals_corner_custom_set(), and blender::bke::mesh::normals_calc_corners().

◆ spaces

Array<CornerNormalSpace> blender::bke::mesh::CornerNormalSpaceArray::spaces

The normal coordinate spaces, potentially shared between multiple face corners in a smooth fan connected to a vertex (and not per face corner). Depending on the mesh (the amount of sharing / number of sharp edges / size of each fan), there may be many fewer spaces than face corners, so they are stored in a separate array.

Definition at line 141 of file BKE_mesh.hh.

Referenced by apply_weights_vertex_normal(), BKE_mesh_mirror_apply_mirror_on_axis_for_modifier(), blender::bke::mesh::mesh_normals_corner_custom_set(), blender::bke::mesh::normals_calc_corners(), and blender::bke::mesh::split_corner_normal_fan_do().


The documentation for this struct was generated from the following file: