The Curve from BRepAdaptor allows to use a Wire of the BRep topology like a 3D curve. Warning: With this class of curve, C0 and C1 continuities are not assumed. So be careful with some algorithm! Please note that BRepAdaptor_CompCurve cannot be periodic curve at all (even if it contains single periodic edge).  
 More...
 | 
|   | BRepAdaptor_CompCurve () | 
|   | Creates an undefined Curve with no Wire loaded.  
  | 
|   | 
|   | BRepAdaptor_CompCurve (const TopoDS_Wire &W, const Standard_Boolean KnotByCurvilinearAbcissa=Standard_False) | 
|   | 
|   | BRepAdaptor_CompCurve (const TopoDS_Wire &W, const Standard_Boolean KnotByCurvilinearAbcissa, const Standard_Real First, const Standard_Real Last, const Standard_Real Tol) | 
|   | Creates a Curve to access the geometry of edge <W>.  
  | 
|   | 
| virtual Handle< Adaptor3d_Curve >  | ShallowCopy () const override | 
|   | Shallow copy of adaptor.  
  | 
|   | 
| void  | Initialize (const TopoDS_Wire &W, const Standard_Boolean KnotByCurvilinearAbcissa) | 
|   | Sets the wire <W>.  
  | 
|   | 
| void  | Initialize (const TopoDS_Wire &W, const Standard_Boolean KnotByCurvilinearAbcissa, const Standard_Real First, const Standard_Real Last, const Standard_Real Tol) | 
|   | Sets wire <W> and trimmed parameter.  
  | 
|   | 
| const TopoDS_Wire &  | Wire () const | 
|   | Returns the wire.  
  | 
|   | 
| void  | Edge (const Standard_Real U, TopoDS_Edge &E, Standard_Real &UonE) const | 
|   | returns an edge and one parameter on them corresponding to the parameter U.  
  | 
|   | 
| 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 . May be one if Continuity(me) >=   
  | 
|   | 
| void  | Intervals (TColStd_Array1OfReal &T, const GeomAbs_Shape S) const override | 
|   | Stores in <T> the parameters bounding the intervals of continuity .  
  | 
|   | 
| Handle< Adaptor3d_Curve >  | 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_Pnt  | Value (const Standard_Real U) const override | 
|   | Computes the point of parameter U on the curve.  
  | 
|   | 
| void  | D0 (const Standard_Real U, gp_Pnt &P) const override | 
|   | Computes the point of parameter U.  
  | 
|   | 
| 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.  
  | 
|   | 
| 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.  
  | 
|   | 
| 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.  
  | 
|   | 
| 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.  
  | 
|   | 
| Standard_Real  | Resolution (const Standard_Real R3d) const override | 
|   | returns the parametric resolution  
  | 
|   | 
| GeomAbs_CurveType  | GetType () const override | 
|   | Returns the type of the curve in the current interval : Line, Circle, Ellipse, Hyperbola, Parabola, BezierCurve, BSplineCurve, OtherCurve.  
  | 
|   | 
| 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 | 
|   | 
| Handle< Geom_BSplineCurve >  | BSpline () const override | 
|   | 
| virtual Handle< Geom_OffsetCurve >  | OffsetCurve () const | 
|   | 
| virtual  | ~Adaptor3d_Curve () | 
|   | 
  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.  
  | 
|   | 
The Curve from BRepAdaptor allows to use a Wire of the BRep topology like a 3D curve. Warning: With this class of curve, C0 and C1 continuities are not assumed. So be careful with some algorithm! Please note that BRepAdaptor_CompCurve cannot be periodic curve at all (even if it contains single periodic edge). 
BRepAdaptor_CompCurve can only work on valid wires where all edges are connected to each other to make a chain.