36 #ifndef NEKTAR_LIB_UTILITIES_CADSYSTEM_CADCURVE_H
37 #define NEKTAR_LIB_UTILITIES_CADSYSTEM_CADCURVE_H
39 #include <boost/shared_ptr.hpp>
48 namespace LibUtilities {
Array< OneD, NekDouble > P(NekDouble t)
Gets the location (x,y,z) in an array out of the curve at point t.
Array< OneD, NekDouble > Bounds()
Returns the minimum and maximum parametric coords t of the curve.
NekDouble Length(NekDouble ti, NekDouble tf)
Calculates the arclength between the two paremetric points ti and tf. ti must be less than tf...
General purpose memory allocation routines with the ability to allocate from thread specific memory p...
boost::shared_ptr< CADCurve > CADCurveSharedPtr
Array< OneD, NekDouble > GetMinMax()
Gets OpenCascade point objects for the start and end of the curve.
std::vector< int > GetAdjSurf()
CADCurve(int i, TopoDS_Shape in)
Default constructor.
std::vector< int > m_adjSurfs
List of surfaces which this curve belongs to.
void SetAdjSurf(std::vector< int > i)
BRepAdaptor_Curve m_occCurve
OpenCascade object of the curve.
NekDouble tAtArcLength(NekDouble s)
Calculates the parametric coordinate and arclength location defined by s.