![]() |
Polyhedral-net Splines
|
Pool PnS patch types represented as PatchConstructor subclasses. Each subclass corresponds to a specific PnS patch type. There are two types of patch constructors: vertex-based and face-based. A vertex-based patch constructor checks if a vertex and its neighborhood matches a PnS patch type. A face-based patch constructor checks if a face and its neighborhood matches a PnS patch type. More...
#include <Pool.hpp>
Public Member Functions | |
| template<typename T> | |
| PatchConstructor * | getPatchConstructor (const T &a_T, MeshType &a_Mesh, bool check_marked=false) const |
| Find a patch PatchConstructor that matches the given vertex or face. | |
Private Attributes | |
| std::vector< PatchConstructor * > | m_PatchConstructorPool |
| The list of that contains an object for each PatchConstructor subclasses that are considered. | |
Pool PnS patch types represented as PatchConstructor subclasses. Each subclass corresponds to a specific PnS patch type. There are two types of patch constructors: vertex-based and face-based. A vertex-based patch constructor checks if a vertex and its neighborhood matches a PnS patch type. A face-based patch constructor checks if a face and its neighborhood matches a PnS patch type.
The getPatchConstructor function traverses the pool and returns the first matching patch constructor for a given vertex or face.
| template PatchConstructor * PatchConstructorPool::getPatchConstructor | ( | const T & | a_T, |
| MeshType & | a_Mesh, | ||
| bool | check_marked = false ) const |
Find a patch PatchConstructor that matches the given vertex or face.
| T | Type of the input, either VertexHandle or FaceHandle |
| a_T | Input vertex or face handle |
| a_Mesh | The mesh to check against |
| check_marked | If true, only consider unmarked vertices/faces. Marked elements always return nullptr. |