Polyhedral-net Splines
Loading...
Searching...
No Matches
PatchConstructorPool Class Reference

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>
PatchConstructorgetPatchConstructor (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.

Detailed Description

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.

Member Function Documentation

◆ getPatchConstructor()

template<typename T>
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.

Template Parameters
TType of the input, either VertexHandle or FaceHandle
Parameters
a_TInput vertex or face handle
a_MeshThe mesh to check against
check_markedIf true, only consider unmarked vertices/faces. Marked elements always return nullptr.
Returns
PatchConstructor* Pointer to the matching PatchConstructor, or nullptr if no match is found.

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