41 namespace LibUtilities {
46 CADCurve::CADCurve(
int i, TopoDS_Shape in) : m_ID(i)
49 gp_Pnt ori(0.0, 0.0, 0.0);
50 transform.SetScale(ori, 1.0 / 1000.0);
51 TopLoc_Location mv(transform);
53 m_occCurve = BRepAdaptor_Curve(TopoDS::Edge(in));
82 len += (drdt1.Magnitude() + drdt2.Magnitude()) / 2.0 * dt;
112 len += (drdt1.Magnitude() + drdt2.Magnitude()) / 2.0 * dt;
129 location[0] = loc.X();
130 location[1] = loc.Y();
131 location[2] = loc.Z();
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...
Array< OneD, NekDouble > GetMinMax()
Gets OpenCascade point objects for the start and end of the curve.
BRepAdaptor_Curve m_occCurve
OpenCascade object of the curve.
NekDouble tAtArcLength(NekDouble s)
Calculates the parametric coordinate and arclength location defined by s.