Open CASCADE Technology
7.2.0
|
The Curve from BRepAdaptor allows to use an Edge of the BRep topology like a 3D curve. More...
#include <BRepAdaptor_Curve.hxx>
Public Member Functions | |
BRepAdaptor_Curve () | |
Creates an undefined Curve with no Edge loaded. More... | |
BRepAdaptor_Curve (const TopoDS_Edge &E) | |
Creates a Curve to acces to the geometry of edge <E>. More... | |
BRepAdaptor_Curve (const TopoDS_Edge &E, const TopoDS_Face &F) | |
Creates a Curve to acces to the geometry of edge <E>. The geometry will be computed using the parametric curve of <E> on the face <F>. An Error is raised if the edge does not have a pcurve on the face. More... | |
void | Initialize (const TopoDS_Edge &E) |
Sets the Curve <me> to acces to the geometry of edge <E>. More... | |
void | Initialize (const TopoDS_Edge &E, const TopoDS_Face &F) |
Sets the Curve <me> to acces to the geometry of edge <E>. The geometry will be computed using the parametric curve of <E> on the face <F>. An Error is raised if the edge does not have a pcurve on the face. More... | |
const gp_Trsf & | Trsf () const |
Returns the coordinate system of the curve. More... | |
Standard_Boolean | Is3DCurve () const |
Returns True if the edge geometry is computed from a 3D curve. More... | |
Standard_Boolean | IsCurveOnSurface () const |
Returns True if the edge geometry is computed from a pcurve on a surface. More... | |
const GeomAdaptor_Curve & | Curve () const |
Returns the Curve of the edge. More... | |
const Adaptor3d_CurveOnSurface & | CurveOnSurface () const |
Returns the CurveOnSurface of the edge. More... | |
const TopoDS_Edge & | Edge () const |
Returns the edge. More... | |
Standard_Real | Tolerance () const |
Returns the edge tolerance. More... | |
Standard_Real | FirstParameter () const override |
Standard_Real | LastParameter () const override |
GeomAbs_Shape | Continuity () const override |
Standard_Integer | NbIntervals (const GeomAbs_Shape S) const override |
Returns the number of intervals for continuity <S>. May be one if Continuity(me) >= <S> More... | |
void | Intervals (TColStd_Array1OfReal &T, const GeomAbs_Shape S) const override |
Stores in <T> the parameters bounding the intervals of continuity <S>. More... | |
Handle< Adaptor3d_HCurve > | Trim (const Standard_Real First, const Standard_Real Last, const Standard_Real Tol) const override |
Returns a curve equivalent of <me> between parameters <First> and <Last>. <Tol> is used to test for 3d points confusion. If <First> >= <Last> More... | |
Standard_Boolean | IsClosed () const override |
Standard_Boolean | IsPeriodic () const override |
Standard_Real | Period () const override |
gp_Pnt | Value (const Standard_Real U) const override |
Computes the point of parameter U on the curve. More... | |
void | D0 (const Standard_Real U, gp_Pnt &P) const override |
Computes the point of parameter U. More... | |
void | D1 (const Standard_Real U, gp_Pnt &P, gp_Vec &V) const override |
Computes the point of parameter U on the curve with its first derivative. Raised if the continuity of the current interval is not C1. More... | |
void | D2 (const Standard_Real U, gp_Pnt &P, gp_Vec &V1, gp_Vec &V2) const override |
Returns the point P of parameter U, the first and second derivatives V1 and V2. Raised if the continuity of the current interval is not C2. More... | |
void | D3 (const Standard_Real U, gp_Pnt &P, gp_Vec &V1, gp_Vec &V2, gp_Vec &V3) const override |
Returns the point P of parameter U, the first, the second and the third derivative. Raised if the continuity of the current interval is not C3. More... | |
gp_Vec | DN (const Standard_Real U, const Standard_Integer N) const override |
The returned vector gives the value of the derivative for the order of derivation N. Raised if the continuity of the current interval is not CN. Raised if N < 1. More... | |
Standard_Real | Resolution (const Standard_Real R3d) const override |
returns the parametric resolution More... | |
GeomAbs_CurveType | GetType () const override |
Returns the type of the curve in the current interval : Line, Circle, Ellipse, Hyperbola, Parabola, BezierCurve, BSplineCurve, OtherCurve. More... | |
gp_Lin | Line () const override |
gp_Circ | Circle () const override |
gp_Elips | Ellipse () const override |
gp_Hypr | Hyperbola () const override |
gp_Parab | Parabola () const override |
Standard_Integer | Degree () const override |
Standard_Boolean | IsRational () const override |
Standard_Integer | NbPoles () const override |
Standard_Integer | NbKnots () const override |
Handle< Geom_BezierCurve > | Bezier () const override |
Warning : This will make a copy of the Bezier Curve since it applies to it myTsrf . Be carefull when using this method. More... | |
Handle< Geom_BSplineCurve > | BSpline () const override |
Warning : This will make a copy of the BSpline Curve since it applies to it myTsrf . Be carefull when using this method. More... | |
Handle< Geom_OffsetCurve > | OffsetCurve () const override |
Public Member Functions inherited from Adaptor3d_Curve | |
virtual | ~Adaptor3d_Curve () |
The Curve from BRepAdaptor allows to use an Edge of the BRep topology like a 3D curve.
It has the methods the class Curve from Adaptor3d.
It is created or Initialized with an Edge. It takes into account local coordinate systems. If the Edge has a 3D curve it is use with priority. If the edge has no 3D curve one of the curves on surface is used. It is possible to enforce using a curve on surface by creating or initialising with an Edge and a Face.
BRepAdaptor_Curve::BRepAdaptor_Curve | ( | ) |
Creates an undefined Curve with no Edge loaded.
BRepAdaptor_Curve::BRepAdaptor_Curve | ( | const TopoDS_Edge & | E | ) |
Creates a Curve to acces to the geometry of edge <E>.
BRepAdaptor_Curve::BRepAdaptor_Curve | ( | const TopoDS_Edge & | E, |
const TopoDS_Face & | F | ||
) |
Creates a Curve to acces to the geometry of edge <E>. The geometry will be computed using the parametric curve of <E> on the face <F>. An Error is raised if the edge does not have a pcurve on the face.
|
overridevirtual |
Warning : This will make a copy of the Bezier Curve since it applies to it myTsrf . Be carefull when using this method.
Reimplemented from Adaptor3d_Curve.
|
overridevirtual |
Warning : This will make a copy of the BSpline Curve since it applies to it myTsrf . Be carefull when using this method.
Reimplemented from Adaptor3d_Curve.
|
overridevirtual |
Reimplemented from Adaptor3d_Curve.
|
overridevirtual |
Reimplemented from Adaptor3d_Curve.
const GeomAdaptor_Curve& BRepAdaptor_Curve::Curve | ( | ) | const |
Returns the Curve of the edge.
const Adaptor3d_CurveOnSurface& BRepAdaptor_Curve::CurveOnSurface | ( | ) | const |
Returns the CurveOnSurface of the edge.
|
overridevirtual |
Computes the point of parameter U.
Reimplemented from Adaptor3d_Curve.
|
overridevirtual |
Computes the point of parameter U on the curve with its first derivative. Raised if the continuity of the current interval is not C1.
Reimplemented from Adaptor3d_Curve.
|
overridevirtual |
Returns the point P of parameter U, the first and second derivatives V1 and V2. Raised if the continuity of the current interval is not C2.
Reimplemented from Adaptor3d_Curve.
|
overridevirtual |
Returns the point P of parameter U, the first, the second and the third derivative. Raised if the continuity of the current interval is not C3.
Reimplemented from Adaptor3d_Curve.
|
overridevirtual |
Reimplemented from Adaptor3d_Curve.
|
overridevirtual |
The returned vector gives the value of the derivative for the order of derivation N. Raised if the continuity of the current interval is not CN. Raised if N < 1.
Reimplemented from Adaptor3d_Curve.
const TopoDS_Edge& BRepAdaptor_Curve::Edge | ( | ) | const |
Returns the edge.
|
overridevirtual |
Reimplemented from Adaptor3d_Curve.
|
overridevirtual |
Reimplemented from Adaptor3d_Curve.
|
overridevirtual |
Returns the type of the curve in the current interval : Line, Circle, Ellipse, Hyperbola, Parabola, BezierCurve, BSplineCurve, OtherCurve.
Reimplemented from Adaptor3d_Curve.
|
overridevirtual |
Reimplemented from Adaptor3d_Curve.
void BRepAdaptor_Curve::Initialize | ( | const TopoDS_Edge & | E | ) |
Sets the Curve <me> to acces to the geometry of edge <E>.
void BRepAdaptor_Curve::Initialize | ( | const TopoDS_Edge & | E, |
const TopoDS_Face & | F | ||
) |
Sets the Curve <me> to acces to the geometry of edge <E>. The geometry will be computed using the parametric curve of <E> on the face <F>. An Error is raised if the edge does not have a pcurve on the face.
|
overridevirtual |
Stores in <T> the parameters bounding the intervals of continuity <S>.
The array must provide enough room to accomodate for the parameters. i.e. T.Length() > NbIntervals()
Reimplemented from Adaptor3d_Curve.
Standard_Boolean BRepAdaptor_Curve::Is3DCurve | ( | ) | const |
Returns True if the edge geometry is computed from a 3D curve.
|
overridevirtual |
Reimplemented from Adaptor3d_Curve.
Standard_Boolean BRepAdaptor_Curve::IsCurveOnSurface | ( | ) | const |
Returns True if the edge geometry is computed from a pcurve on a surface.
|
overridevirtual |
Reimplemented from Adaptor3d_Curve.
|
overridevirtual |
Reimplemented from Adaptor3d_Curve.
|
overridevirtual |
Reimplemented from Adaptor3d_Curve.
|
overridevirtual |
Reimplemented from Adaptor3d_Curve.
|
overridevirtual |
Returns the number of intervals for continuity <S>. May be one if Continuity(me) >= <S>
Reimplemented from Adaptor3d_Curve.
|
overridevirtual |
Reimplemented from Adaptor3d_Curve.
|
overridevirtual |
Reimplemented from Adaptor3d_Curve.
|
overridevirtual |
Reimplemented from Adaptor3d_Curve.
|
overridevirtual |
Reimplemented from Adaptor3d_Curve.
|
overridevirtual |
Reimplemented from Adaptor3d_Curve.
|
overridevirtual |
returns the parametric resolution
Reimplemented from Adaptor3d_Curve.
Standard_Real BRepAdaptor_Curve::Tolerance | ( | ) | const |
Returns the edge tolerance.
|
overridevirtual |
Returns a curve equivalent of <me> between parameters <First> and <Last>. <Tol> is used to test for 3d points confusion. If <First> >= <Last>
Reimplemented from Adaptor3d_Curve.
const gp_Trsf& BRepAdaptor_Curve::Trsf | ( | ) | const |
Returns the coordinate system of the curve.
|
overridevirtual |
Computes the point of parameter U on the curve.
Reimplemented from Adaptor3d_Curve.