Classes | |
struct | MR::MeshNormals |
Typedefs | |
using | MR::TriangleCornerNormals = std::array<Vector3f, 3> |
normals in three corner of a triangle | |
Functions | |
MRMESH_API FaceNormals | MR::computePerFaceNormals (const Mesh &mesh) |
returns a vector with face-normal in every element for valid mesh faces | |
MRMESH_API void | MR::computePerFaceNormals4 (const Mesh &mesh, Vector4f *faceNormals, size_t size) |
fills buffer with face-normals as Vector4f for valid mesh faces | |
MRMESH_API VertNormals | MR::computePerVertNormals (const Mesh &mesh) |
returns a vector with vertex normals in every element for valid mesh vertices | |
MRMESH_API VertNormals | MR::computePerVertPseudoNormals (const Mesh &mesh) |
MRMESH_API MeshNormals | MR::computeMeshNormals (const Mesh &mesh) |
computes both per-face and per-vertex normals more efficiently then just calling both previous functions | |
MRMESH_API Vector< TriangleCornerNormals, FaceId > | MR::computePerCornerNormals (const Mesh &mesh, const UndirectedEdgeBitSet *creases) |
using MR::TriangleCornerNormals = std::array<Vector3f, 3> |
normals in three corner of a triangle
|
nodiscard |
computes both per-face and per-vertex normals more efficiently then just calling both previous functions
|
nodiscard |
returns a vector with corner normals in every element for valid mesh faces; corner normals of adjacent triangles are equal, unless they are separated by crease edges
|
nodiscard |
returns a vector with face-normal in every element for valid mesh faces
MRMESH_API void MR::computePerFaceNormals4 | ( | const Mesh & | mesh, |
Vector4f * | faceNormals, | ||
size_t | size ) |
fills buffer with face-normals as Vector4f for valid mesh faces
|
nodiscard |
returns a vector with vertex normals in every element for valid mesh vertices
|
nodiscard |
returns a vector with vertex pseudonormals in every element for valid mesh vertices see http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.107.9173&rep=rep1&type=pdf