![]() |
Radium Engine
1.5.0
|
#include <Core/Geometry/LoopSubdivider.hpp>
Inherits OpenMesh::Subdivider::Uniform::SubdividerT< deprecated::TopologicalMesh, Scalar >.
Public Member Functions | |
LoopSubdivider (deprecated::TopologicalMesh &mesh) | |
const char * | name (void) const override |
void | recompute (const Vector3Array &newCoarseVertices, const Vector3Array &newCoarseNormals, Vector3Array &newSubdivVertices, Vector3Array &newSubdivNormals, deprecated::TopologicalMesh &mesh) |
Protected Member Functions | |
void | init_weights (size_t max_valence) |
Pre-compute weights. | |
bool | prepare (deprecated::TopologicalMesh &mesh) override |
bool | cleanup (deprecated::TopologicalMesh &mesh) override |
bool | subdivide (deprecated::TopologicalMesh &mesh, size_t n, const bool updatePoints=true) override |
This class implements the Loop subdivision algorithm
This class extends OpenMesh's LoopT subdivider to handle attributes.
Definition at line 17 of file LoopSubdivider.hpp.
void Ra::Core::Geometry::LoopSubdivider::recompute | ( | const Vector3Array & | newCoarseVertices, |
const Vector3Array & | newCoarseNormals, | ||
Vector3Array & | newSubdivVertices, | ||
Vector3Array & | newSubdivNormals, | ||
deprecated::TopologicalMesh & | mesh | ||
) |
In the case one wants to apply the subdivision on the same mesh topology, but with a different geometry (e.g. for an animated character), one may want to just reapply the subdivision operations instead for performance reasons. This can be achieved with the following code:
Definition at line 349 of file LoopSubdivider.cpp.