Open CASCADE Technology 7.8.2.dev
|
An interface between the services provided by any curve from the package Geom2d and those required of the curve by algorithms which use it. More...
#include <Geom2dAdaptor_Curve.hxx>
Public Member Functions | |
Geom2dAdaptor_Curve () | |
Geom2dAdaptor_Curve (const Handle< Geom2d_Curve > &C) | |
Geom2dAdaptor_Curve (const Handle< Geom2d_Curve > &C, const Standard_Real UFirst, const Standard_Real ULast) | |
Standard_ConstructionError is raised if Ufirst>Ulast. | |
virtual Handle< Adaptor2d_Curve2d > | ShallowCopy () const override |
Shallow copy of adaptor. | |
void | Reset () |
Reset currently loaded curve (undone Load()). | |
void | Load (const Handle< Geom2d_Curve > &theCurve) |
void | Load (const Handle< Geom2d_Curve > &theCurve, const Standard_Real theUFirst, const Standard_Real theULast) |
Standard_ConstructionError is raised if theUFirst>theULast. | |
const Handle< Geom2d_Curve > & | Curve () const |
virtual Standard_Real | FirstParameter () const override |
virtual Standard_Real | LastParameter () const override |
GeomAbs_Shape | Continuity () const override |
Standard_Integer | NbIntervals (const GeomAbs_Shape S) const override |
If necessary, breaks the curve in intervals of continuity | |
void | Intervals (TColStd_Array1OfReal &T, const GeomAbs_Shape S) const override |
Stores in <T> the parameters bounding the intervals of continuity | |
Handle< Adaptor2d_Curve2d > | 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> | |
Standard_Boolean | IsClosed () const override |
Standard_Boolean | IsPeriodic () const override |
Standard_Real | Period () const override |
gp_Pnt2d | Value (const Standard_Real U) const override |
Computes the point of parameter U on the curve. | |
void | D0 (const Standard_Real U, gp_Pnt2d &P) const override |
Computes the point of parameter U. | |
void | D1 (const Standard_Real U, gp_Pnt2d &P, gp_Vec2d &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. | |
void | D2 (const Standard_Real U, gp_Pnt2d &P, gp_Vec2d &V1, gp_Vec2d &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. | |
void | D3 (const Standard_Real U, gp_Pnt2d &P, gp_Vec2d &V1, gp_Vec2d &V2, gp_Vec2d &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. | |
gp_Vec2d | 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. | |
Standard_Real | Resolution (const Standard_Real Ruv) const override |
returns the parametric resolution | |
virtual GeomAbs_CurveType | GetType () const override |
Returns the type of the curve in the current interval : Line, Circle, Ellipse, Hyperbola, Parabola, BezierCurve, BSplineCurve, OtherCurve. | |
gp_Lin2d | Line () const override |
gp_Circ2d | Circle () const override |
gp_Elips2d | Ellipse () const override |
gp_Hypr2d | Hyperbola () const override |
gp_Parab2d | Parabola () const override |
Standard_Integer | Degree () const override |
Standard_Boolean | IsRational () const override |
Standard_Integer | NbPoles () const override |
Standard_Integer | NbKnots () const override |
virtual Standard_Integer | NbSamples () const override |
Handle< Geom2d_BezierCurve > | Bezier () const override |
Handle< Geom2d_BSplineCurve > | BSpline () const override |
Public Member Functions inherited from Adaptor2d_Curve2d | |
virtual | ~Adaptor2d_Curve2d () |
Public Member Functions inherited from Standard_Transient | |
Standard_Transient () | |
Empty constructor. | |
Standard_Transient (const Standard_Transient &) | |
Copy constructor – does nothing. | |
Standard_Transient & | operator= (const Standard_Transient &) |
Assignment operator, needed to avoid copying reference counter. | |
virtual | ~Standard_Transient () |
Destructor must be virtual. | |
virtual const opencascade::handle< Standard_Type > & | DynamicType () const |
Returns a type descriptor about this object. | |
Standard_Boolean | IsInstance (const opencascade::handle< Standard_Type > &theType) const |
Returns a true value if this is an instance of Type. | |
Standard_Boolean | IsInstance (const Standard_CString theTypeName) const |
Returns a true value if this is an instance of TypeName. | |
Standard_Boolean | IsKind (const opencascade::handle< Standard_Type > &theType) const |
Returns true if this is an instance of Type or an instance of any class that inherits from Type. Note that multiple inheritance is not supported by OCCT RTTI mechanism. | |
Standard_Boolean | IsKind (const Standard_CString theTypeName) const |
Returns true if this is an instance of TypeName or an instance of any class that inherits from TypeName. Note that multiple inheritance is not supported by OCCT RTTI mechanism. | |
Standard_Transient * | This () const |
Returns non-const pointer to this object (like const_cast). For protection against creating handle to objects allocated in stack or call from constructor, it will raise exception Standard_ProgramError if reference counter is zero. | |
Standard_Integer | GetRefCount () const noexcept |
Get the reference counter of this object. | |
void | IncrementRefCounter () noexcept |
Increments the reference counter of this object. | |
Standard_Integer | DecrementRefCounter () noexcept |
Decrements the reference counter of this object; returns the decremented value. | |
virtual void | Delete () const |
Memory deallocator for transient classes. | |
Protected Attributes | |
Handle< Geom2d_Curve > | myCurve |
GeomAbs_CurveType | myTypeCurve |
Standard_Real | myFirst |
Standard_Real | myLast |
Handle< Geom2d_BSplineCurve > | myBSplineCurve |
B-spline representation to prevent castings. | |
Handle< BSplCLib_Cache > | myCurveCache |
Cached data for B-spline or Bezier curve. | |
Handle< Geom2dEvaluator_Curve > | myNestedEvaluator |
Calculates value of offset curve. | |
Additional Inherited Members | |
Public Types inherited from Standard_Transient | |
typedef void | base_type |
Returns a type descriptor about this object. | |
Static Public Member Functions inherited from Standard_Transient | |
static constexpr const char * | get_type_name () |
Returns a type descriptor about this object. | |
static const opencascade::handle< Standard_Type > & | get_type_descriptor () |
Returns type descriptor of Standard_Transient class. | |
An interface between the services provided by any curve from the package Geom2d and those required of the curve by algorithms which use it.
Polynomial coefficients of BSpline curves used for their evaluation are cached for better performance. Therefore these evaluations are not thread-safe and parallel evaluations need to be prevented.
Geom2dAdaptor_Curve::Geom2dAdaptor_Curve | ( | ) |
Geom2dAdaptor_Curve::Geom2dAdaptor_Curve | ( | const Handle< Geom2d_Curve > & | C | ) |
Geom2dAdaptor_Curve::Geom2dAdaptor_Curve | ( | const Handle< Geom2d_Curve > & | C, |
const Standard_Real | UFirst, | ||
const Standard_Real | ULast ) |
Standard_ConstructionError is raised if Ufirst>Ulast.
|
overridevirtual |
Reimplemented from Adaptor2d_Curve2d.
|
overridevirtual |
Reimplemented from Adaptor2d_Curve2d.
|
overridevirtual |
Reimplemented from Adaptor2d_Curve2d.
|
overridevirtual |
Reimplemented from Adaptor2d_Curve2d.
|
inline |
|
overridevirtual |
Computes the point of parameter U.
Reimplemented from Adaptor2d_Curve2d.
|
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 Adaptor2d_Curve2d.
|
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 Adaptor2d_Curve2d.
|
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 Adaptor2d_Curve2d.
|
overridevirtual |
Reimplemented from Adaptor2d_Curve2d.
|
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 Adaptor2d_Curve2d.
|
overridevirtual |
Reimplemented from Adaptor2d_Curve2d.
|
inlineoverridevirtual |
Reimplemented from Adaptor2d_Curve2d.
|
inlineoverridevirtual |
Returns the type of the curve in the current interval : Line, Circle, Ellipse, Hyperbola, Parabola, BezierCurve, BSplineCurve, OtherCurve.
Reimplemented from Adaptor2d_Curve2d.
|
overridevirtual |
Reimplemented from Adaptor2d_Curve2d.
|
overridevirtual |
Stores in <T> the parameters bounding the intervals of continuity .
The array must provide enough room to accommodate for the parameters. i.e. T.Length() > NbIntervals()
Reimplemented from Adaptor2d_Curve2d.
|
overridevirtual |
Reimplemented from Adaptor2d_Curve2d.
|
overridevirtual |
Reimplemented from Adaptor2d_Curve2d.
|
overridevirtual |
Reimplemented from Adaptor2d_Curve2d.
|
inlineoverridevirtual |
Reimplemented from Adaptor2d_Curve2d.
|
overridevirtual |
Reimplemented from Adaptor2d_Curve2d.
|
inline |
|
inline |
Standard_ConstructionError is raised if theUFirst>theULast.
|
overridevirtual |
If necessary, breaks the curve in intervals of continuity . And returns the number of intervals.
Reimplemented from Adaptor2d_Curve2d.
|
overridevirtual |
Reimplemented from Adaptor2d_Curve2d.
|
overridevirtual |
Reimplemented from Adaptor2d_Curve2d.
|
overridevirtual |
Reimplemented from Adaptor2d_Curve2d.
|
overridevirtual |
Reimplemented from Adaptor2d_Curve2d.
|
overridevirtual |
Reimplemented from Adaptor2d_Curve2d.
void Geom2dAdaptor_Curve::Reset | ( | ) |
Reset currently loaded curve (undone Load()).
|
overridevirtual |
returns the parametric resolution
Reimplemented from Adaptor2d_Curve2d.
|
overridevirtual |
Shallow copy of adaptor.
Reimplemented from Adaptor2d_Curve2d.
Reimplemented in BRepAdaptor_Curve2d.
|
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 Adaptor2d_Curve2d.
|
overridevirtual |
Computes the point of parameter U on the curve.
Reimplemented from Adaptor2d_Curve2d.
|
protected |
B-spline representation to prevent castings.
|
protected |
|
mutableprotected |
Cached data for B-spline or Bezier curve.
|
protected |
|
protected |
|
protected |
Calculates value of offset curve.
|
protected |