Open CASCADE Technology  6.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions
BRepAdaptor_Curve Class Reference

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.
More...

#include <BRepAdaptor_Curve.hxx>

Inheritance diagram for BRepAdaptor_Curve:
Inheritance graph
[legend]

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_TrsfTrsf () 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_CurveCurve () const
 Returns the Curve of the edge.
More...
 
const Adaptor3d_CurveOnSurfaceCurveOnSurface () const
 Returns the CurveOnSurface of the edge.
More...
 
const TopoDS_EdgeEdge () const
 
 Returns the edge. <br>


More...

 
Standard_Real Tolerance () const
 
 Returns the edge tolerance. <br>


More...

 
Standard_Real FirstParameter () const
 
Standard_Real LastParameter () const
 
GeomAbs_Shape Continuity () const
 
Standard_Integer NbIntervals (const GeomAbs_Shape S)
 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)
 
 Stores in <T> the  parameters bounding the intervals <br>
     of continuity <S>. <br>


The array must provide enough room to accomodate
for the parameters. i.e. T.Length() > NbIntervals()
More...

 
Handle_Adaptor3d_HCurve Trim (const Standard_Real First, const Standard_Real Last, const Standard_Real Tol) const
 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
 
Standard_Boolean IsPeriodic () const
 
Standard_Real Period () const
 
gp_Pnt Value (const Standard_Real U) const
 Computes the point of parameter U on the curve
More...
 
void D0 (const Standard_Real U, gp_Pnt &P) const
 Computes the point of parameter U.
More...
 
void D1 (const Standard_Real U, gp_Pnt &P, gp_Vec &V) const
 
Computes the point of parameter U on the curve <br>

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
 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
 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
 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
 returns the parametric resolution
More...
 
GeomAbs_CurveType GetType () const
 Returns the type of the curve in the current
interval : Line, Circle, Ellipse, Hyperbola,
Parabola, BezierCurve, BSplineCurve, OtherCurve.
More...
 
gp_Lin Line () const
 
gp_Circ Circle () const
 
gp_Elips Ellipse () const
 
gp_Hypr Hyperbola () const
 
gp_Parab Parabola () const
 
Standard_Integer Degree () const
 
Standard_Boolean IsRational () const
 
Standard_Integer NbPoles () const
 
Standard_Integer NbKnots () const
 
Handle_Geom_BezierCurve Bezier () const
 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
 Warning :
This will make a copy of the BSpline Curve
since it applies to it myTsrf . Be carefull when
using this method
More...
 
- Public Member Functions inherited from Adaptor3d_Curve
virtual void Delete ()
 
virtual ~Adaptor3d_Curve ()
 

Detailed Description

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.

Constructor & Destructor Documentation

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.

Member Function Documentation

Handle_Geom_BezierCurve BRepAdaptor_Curve::Bezier ( ) const
virtual

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.

Handle_Geom_BSplineCurve BRepAdaptor_Curve::BSpline ( ) const
virtual

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.

gp_Circ BRepAdaptor_Curve::Circle ( ) const
virtual

Reimplemented from Adaptor3d_Curve.

GeomAbs_Shape BRepAdaptor_Curve::Continuity ( ) const
virtual

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.

void BRepAdaptor_Curve::D0 ( const Standard_Real  U,
gp_Pnt P 
) const
virtual

Computes the point of parameter U.

Reimplemented from Adaptor3d_Curve.

void BRepAdaptor_Curve::D1 ( const Standard_Real  U,
gp_Pnt P,
gp_Vec V 
) const
virtual

Computes the point of parameter U on the curve <br>

with its first derivative.
//! Raised if the continuity of the current interval
is not C1.

Reimplemented from Adaptor3d_Curve.

void BRepAdaptor_Curve::D2 ( const Standard_Real  U,
gp_Pnt P,
gp_Vec V1,
gp_Vec V2 
) const
virtual

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.

void BRepAdaptor_Curve::D3 ( const Standard_Real  U,
gp_Pnt P,
gp_Vec V1,
gp_Vec V2,
gp_Vec V3 
) const
virtual

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.

Standard_Integer BRepAdaptor_Curve::Degree ( ) const
virtual

Reimplemented from Adaptor3d_Curve.

gp_Vec BRepAdaptor_Curve::DN ( const Standard_Real  U,
const Standard_Integer  N 
) const
virtual

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. <br>


gp_Elips BRepAdaptor_Curve::Ellipse ( ) const
virtual

Reimplemented from Adaptor3d_Curve.

Standard_Real BRepAdaptor_Curve::FirstParameter ( ) const
virtual

Reimplemented from Adaptor3d_Curve.

GeomAbs_CurveType BRepAdaptor_Curve::GetType ( ) const
virtual

Returns the type of the curve in the current
interval : Line, Circle, Ellipse, Hyperbola,
Parabola, BezierCurve, BSplineCurve, OtherCurve.

Reimplemented from Adaptor3d_Curve.

gp_Hypr BRepAdaptor_Curve::Hyperbola ( ) const
virtual

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.

void BRepAdaptor_Curve::Intervals ( TColStd_Array1OfReal T,
const GeomAbs_Shape  S 
)
virtual

 Stores in <T> the  parameters bounding the intervals <br>
     of continuity <S>. <br>


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.

Standard_Boolean BRepAdaptor_Curve::IsClosed ( ) const
virtual

Reimplemented from Adaptor3d_Curve.

Standard_Boolean BRepAdaptor_Curve::IsCurveOnSurface ( ) const

Returns True if the edge geometry is computed from
a pcurve on a surface.

Standard_Boolean BRepAdaptor_Curve::IsPeriodic ( ) const
virtual

Reimplemented from Adaptor3d_Curve.

Standard_Boolean BRepAdaptor_Curve::IsRational ( ) const
virtual

Reimplemented from Adaptor3d_Curve.

Standard_Real BRepAdaptor_Curve::LastParameter ( ) const
virtual

Reimplemented from Adaptor3d_Curve.

gp_Lin BRepAdaptor_Curve::Line ( ) const
virtual

Reimplemented from Adaptor3d_Curve.

Standard_Integer BRepAdaptor_Curve::NbIntervals ( const GeomAbs_Shape  S)
virtual

Returns the number of intervals for continuity
<S>. May be one if Continuity(me) >= <S>

Reimplemented from Adaptor3d_Curve.

Standard_Integer BRepAdaptor_Curve::NbKnots ( ) const
virtual

Reimplemented from Adaptor3d_Curve.

Standard_Integer BRepAdaptor_Curve::NbPoles ( ) const
virtual

Reimplemented from Adaptor3d_Curve.

gp_Parab BRepAdaptor_Curve::Parabola ( ) const
virtual

Reimplemented from Adaptor3d_Curve.

Standard_Real BRepAdaptor_Curve::Period ( ) const
virtual

Reimplemented from Adaptor3d_Curve.

Standard_Real BRepAdaptor_Curve::Resolution ( const Standard_Real  R3d) const
virtual

returns the parametric resolution

Reimplemented from Adaptor3d_Curve.

Standard_Real BRepAdaptor_Curve::Tolerance ( ) const

 Returns the edge tolerance. <br>


Handle_Adaptor3d_HCurve BRepAdaptor_Curve::Trim ( const Standard_Real  First,
const Standard_Real  Last,
const Standard_Real  Tol 
) const
virtual

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.

gp_Pnt BRepAdaptor_Curve::Value ( const Standard_Real  U) const
virtual

Computes the point of parameter U on the curve

Reimplemented from Adaptor3d_Curve.


The documentation for this class was generated from the following file: