Nektar++
|
base class for a cad surface More...
#include <CADSurf.h>
Public Member Functions | |
CADSurf () | |
Default constructor. More... | |
~CADSurf () | |
std::vector < CADSystem::EdgeLoopSharedPtr > | GetEdges () |
Get the loop structures which bound the cad surface. More... | |
void | SetEdges (std::vector< CADSystem::EdgeLoopSharedPtr > ein) |
virtual Array< OneD, NekDouble > | GetBounds ()=0 |
Get the limits of the parametric space for the surface. More... | |
virtual Array< OneD, NekDouble > | N (Array< OneD, NekDouble > uv)=0 |
Get the normal vector at parametric point u,v. More... | |
virtual Array< OneD, NekDouble > | D1 (Array< OneD, NekDouble > uv)=0 |
Get the set of first derivatives at parametric point u,v. More... | |
virtual Array< OneD, NekDouble > | D2 (Array< OneD, NekDouble > uv)=0 |
Get the set of second derivatives at parametric point u,v. More... | |
virtual Array< OneD, NekDouble > | P (Array< OneD, NekDouble > uv)=0 |
Get the x,y,z at parametric point u,v. More... | |
virtual Array< OneD, NekDouble > | locuv (Array< OneD, NekDouble > p)=0 |
Performs a reverse look up to find u,v and x,y,z. More... | |
virtual NekDouble | DistanceTo (Array< OneD, NekDouble > p)=0 |
does unconstrained locuv to project point from anywhere and calculate the distance between the orthonormal projection to the surface and the point More... | |
virtual void | ProjectTo (Array< OneD, NekDouble > &tp, Array< OneD, NekDouble > &uv)=0 |
takes a point from anywhere find the nearest surface point and its uv More... | |
virtual NekDouble | Curvature (Array< OneD, NekDouble > uv)=0 |
returns curvature at point uv More... | |
CADOrientation::Orientation | Orientation () |
query reversed normal More... | |
Public Member Functions inherited from Nektar::NekMeshUtils::CADObject | |
CADObject () | |
Default constructor. More... | |
virtual | ~CADObject () |
int | GetId () |
Return ID of the vertex. More... | |
CADType::cadType | GetType () |
Static Public Member Functions | |
static void | OrientateEdges (CADSurfSharedPtr surf, std::vector< CADSystem::EdgeLoopSharedPtr > &ein) |
Protected Member Functions | |
virtual void | Test (Array< OneD, NekDouble > uv)=0 |
Function which tests the the value of uv used is within the surface. More... | |
Protected Attributes | |
std::vector < CADSystem::EdgeLoopSharedPtr > | m_edges |
List of bounding edges in loops with orientation. More... | |
Protected Attributes inherited from Nektar::NekMeshUtils::CADObject | |
int | m_id |
ID of the vert. More... | |
CADType::cadType | m_type |
type of the cad object More... | |
CADOrientation::Orientation | m_orientation |
orientation of the CADObject More... | |
Friends | |
class | MemoryManager< CADSurf > |
|
inline |
Default constructor.
Definition at line 63 of file CADSurf.h.
References Nektar::NekMeshUtils::CADOrientation::eForwards, Nektar::NekMeshUtils::CADType::eSurf, Nektar::NekMeshUtils::CADObject::m_orientation, and Nektar::NekMeshUtils::CADObject::m_type.
|
inline |
|
pure virtual |
returns curvature at point uv
Implemented in Nektar::NekMeshUtils::CADSurfOCE.
|
pure virtual |
Get the set of first derivatives at parametric point u,v.
uv | Array of u and v parametric coords. |
Implemented in Nektar::NekMeshUtils::CADSurfOCE.
|
pure virtual |
Get the set of second derivatives at parametric point u,v.
uv | array of u and v parametric coords |
Implemented in Nektar::NekMeshUtils::CADSurfOCE.
|
pure virtual |
does unconstrained locuv to project point from anywhere and calculate the distance between the orthonormal projection to the surface and the point
Implemented in Nektar::NekMeshUtils::CADSurfOCE.
Get the limits of the parametric space for the surface.
Implemented in Nektar::NekMeshUtils::CADSurfOCE.
|
inline |
Get the loop structures which bound the cad surface.
Definition at line 79 of file CADSurf.h.
References m_edges.
|
pure virtual |
Performs a reverse look up to find u,v and x,y,z.
p | Array of xyz location |
Implemented in Nektar::NekMeshUtils::CADSurfOCE.
|
pure virtual |
Get the normal vector at parametric point u,v.
uv | Array of u and v parametric coords. |
Implemented in Nektar::NekMeshUtils::CADSurfOCE.
|
static |
Definition at line 54 of file CADSurf.cpp.
References ASSERTL0, Nektar::StdRegions::eForwards, class_topology::P, and CellMLToNektar.cellml_metadata::p.
|
inlinevirtual |
query reversed normal
Reimplemented from Nektar::NekMeshUtils::CADObject.
Definition at line 159 of file CADSurf.h.
References Nektar::NekMeshUtils::CADObject::m_orientation.
|
pure virtual |
Get the x,y,z at parametric point u,v.
uv | Array of u and v parametric coords. |
Implemented in Nektar::NekMeshUtils::CADSurfOCE.
|
pure virtual |
takes a point from anywhere find the nearest surface point and its uv
Implemented in Nektar::NekMeshUtils::CADSurfOCE.
|
inline |
Definition at line 84 of file CADSurf.h.
References m_edges.
|
protectedpure virtual |
Function which tests the the value of uv used is within the surface.
Implemented in Nektar::NekMeshUtils::CADSurfOCE.
|
friend |
|
protected |
List of bounding edges in loops with orientation.
Definition at line 166 of file CADSurf.h.
Referenced by GetEdges(), and SetEdges().