35 #ifndef NekMeshUtils_CADSYSTEM_CADSURF 36 #define NekMeshUtils_CADSYSTEM_CADSURF 45 namespace NekMeshUtils
59 std::vector<CADCurveSharedPtr>
edges;
60 std::vector<CADOrientation::Orientation>
edgeo;
92 static void OrientateEdges(CADSurfSharedPtr surf,
93 std::vector<EdgeLoopSharedPtr> &ein);
196 virtual bool IsPlanar() = 0;
203 return m_orientation;
std::shared_ptr< CADSurf > CADSurfSharedPtr
Array< OneD, NekDouble > center
std::shared_ptr< EdgeLoop > EdgeLoopSharedPtr
General purpose memory allocation routines with the ability to allocate from thread specific memory p...
CADOrientation::Orientation Orientation()
query reversed normal
std::vector< EdgeLoopSharedPtr > m_edges
List of bounding edges in loops with orientation.
struct which descibes a collection of cad edges which are a loop on the cad surface ...
std::vector< CADOrientation::Orientation > edgeo
std::vector< CADCurveSharedPtr > edges
void SetEdges(std::vector< EdgeLoopSharedPtr > ein)
Set the edge loop.
CADSurfFactory & GetCADSurfFactory()
void P(NekDouble t, NekDouble &x, NekDouble &y, NekDouble &z)
std::shared_ptr< CADCurve > CADCurveSharedPtr
base class for a cad surface
CADSurf()
Default constructor.
std::vector< EdgeLoopSharedPtr > GetEdges()
Get the loop structures which bound the cad surface.
LibUtilities::NekFactory< std::string, CADSurf > CADSurfFactory
Provides a generic Factory class.