Open CASCADE Technology 7.8.2.dev
HLRBRep_Curve Class Reference

Defines a 2d curve by projection of a 3D curve on a plane with an optional perspective transformation. More...

#include <HLRBRep_Curve.hxx>

Public Member Functions

 HLRBRep_Curve ()
 Creates an undefined Curve.
 
void Projector (const HLRAlgo_Projector *Proj)
 
BRepAdaptor_CurveCurve ()
 Returns the 3D curve.
 
void Curve (const TopoDS_Edge &E)
 Sets the 3D curve to be projected.
 
const BRepAdaptor_CurveGetCurve () const
 Returns the 3D curve.
 
Standard_Real Parameter2d (const Standard_Real P3d) const
 Returns the parameter on the 2d curve from the parameter on the 3d curve.
 
Standard_Real Parameter3d (const Standard_Real P2d) const
 Returns the parameter on the 3d curve from the parameter on the 2d curve.
 
Standard_Real Update (Standard_Real TotMin[16], Standard_Real TotMax[16])
 Update the minmax and the internal data.
 
Standard_Real UpdateMinMax (Standard_Real TotMin[16], Standard_Real TotMax[16])
 Update the minmax returns tol for enlarge;.
 
Standard_Real Z (const Standard_Real U) const
 Computes the Z coordinate of the point of parameter U on the curve in the viewing coordinate system.
 
gp_Pnt Value3D (const Standard_Real U) const
 Computes the 3D point of parameter U on the curve.
 
void D0 (const Standard_Real U, gp_Pnt &P) const
 Computes the 3D point of parameter U on the curve.
 
void D1 (const Standard_Real U, gp_Pnt &P, gp_Vec &V) const
 Computes the point of parameter U on the curve with its first derivative.
 
void Tangent (const Standard_Boolean AtStart, gp_Pnt2d &P, gp_Dir2d &D) const
 Depending on <AtStart> computes the 2D point and tangent on the curve at sart (or at end). If the first derivative is null look after at start (or before at end) with the second derivative.
 
Standard_Real FirstParameter () const
 
Standard_Real LastParameter () const
 
GeomAbs_Shape Continuity () const
 
Standard_Integer NbIntervals (const GeomAbs_Shape S) const
 If necessary, breaks the curve in intervals of continuity . And returns the number of intervals.
 
void Intervals (TColStd_Array1OfReal &T, const GeomAbs_Shape S) const
 Stores in <T> the parameters bounding the intervals of continuity .
 
Standard_Boolean IsClosed () const
 
Standard_Boolean IsPeriodic () const
 
Standard_Real Period () const
 
gp_Pnt2d Value (const Standard_Real U) const
 Computes the point of parameter U on the curve.
 
void D0 (const Standard_Real U, gp_Pnt2d &P) const
 Computes the point of parameter U on the curve.
 
void D1 (const Standard_Real U, gp_Pnt2d &P, gp_Vec2d &V) const
 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
 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
 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
 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
 Returns the parametric resolution corresponding to the real space resolution <R3d>.
 
GeomAbs_CurveType GetType () const
 Returns the type of the curve in the current interval : Line, Circle, Ellipse, Hyperbola, Parabola, BezierCurve, BSplineCurve, OtherCurve.
 
gp_Lin2d Line () const
 
gp_Circ2d Circle () const
 
gp_Elips2d Ellipse () const
 
gp_Hypr2d Hyperbola () const
 
gp_Parab2d Parabola () const
 
Standard_Boolean IsRational () const
 
Standard_Integer Degree () const
 
Standard_Integer NbPoles () const
 
void Poles (TColgp_Array1OfPnt2d &TP) const
 
void Poles (const Handle< Geom_BSplineCurve > &aCurve, TColgp_Array1OfPnt2d &TP) const
 
void PolesAndWeights (TColgp_Array1OfPnt2d &TP, TColStd_Array1OfReal &TW) const
 
void PolesAndWeights (const Handle< Geom_BSplineCurve > &aCurve, TColgp_Array1OfPnt2d &TP, TColStd_Array1OfReal &TW) const
 
Standard_Integer NbKnots () const
 
void Knots (TColStd_Array1OfReal &kn) const
 
void Multiplicities (TColStd_Array1OfInteger &mu) const
 

Detailed Description

Defines a 2d curve by projection of a 3D curve on a plane with an optional perspective transformation.

Constructor & Destructor Documentation

◆ HLRBRep_Curve()

HLRBRep_Curve::HLRBRep_Curve ( )

Creates an undefined Curve.

Member Function Documentation

◆ Circle()

gp_Circ2d HLRBRep_Curve::Circle ( ) const

◆ Continuity()

GeomAbs_Shape HLRBRep_Curve::Continuity ( ) const

◆ Curve() [1/2]

BRepAdaptor_Curve & HLRBRep_Curve::Curve ( )

Returns the 3D curve.

◆ Curve() [2/2]

void HLRBRep_Curve::Curve ( const TopoDS_Edge & E)

Sets the 3D curve to be projected.

◆ D0() [1/2]

void HLRBRep_Curve::D0 ( const Standard_Real U,
gp_Pnt & P ) const

Computes the 3D point of parameter U on the curve.

◆ D0() [2/2]

void HLRBRep_Curve::D0 ( const Standard_Real U,
gp_Pnt2d & P ) const

Computes the point of parameter U on the curve.

◆ D1() [1/2]

void HLRBRep_Curve::D1 ( const Standard_Real U,
gp_Pnt & P,
gp_Vec & V ) const

Computes the point of parameter U on the curve with its first derivative.

◆ D1() [2/2]

void HLRBRep_Curve::D1 ( const Standard_Real U,
gp_Pnt2d & P,
gp_Vec2d & V ) const

Computes the point of parameter U on the curve with its first derivative. Raised if the continuity of the current interval is not C1.

◆ D2()

void HLRBRep_Curve::D2 ( const Standard_Real U,
gp_Pnt2d & P,
gp_Vec2d & V1,
gp_Vec2d & V2 ) const

Raised if the continuity of the current interval is not C2.

◆ D3()

void HLRBRep_Curve::D3 ( const Standard_Real U,
gp_Pnt2d & P,
gp_Vec2d & V1,
gp_Vec2d & V2,
gp_Vec2d & 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.

◆ Degree()

Standard_Integer HLRBRep_Curve::Degree ( ) const

◆ DN()

gp_Vec2d HLRBRep_Curve::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.

◆ Ellipse()

gp_Elips2d HLRBRep_Curve::Ellipse ( ) const

◆ FirstParameter()

Standard_Real HLRBRep_Curve::FirstParameter ( ) const

◆ GetCurve()

const BRepAdaptor_Curve & HLRBRep_Curve::GetCurve ( ) const

Returns the 3D curve.

◆ GetType()

GeomAbs_CurveType HLRBRep_Curve::GetType ( ) const

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

◆ Hyperbola()

gp_Hypr2d HLRBRep_Curve::Hyperbola ( ) const

◆ Intervals()

void HLRBRep_Curve::Intervals ( TColStd_Array1OfReal & T,
const GeomAbs_Shape S ) const

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()

◆ IsClosed()

Standard_Boolean HLRBRep_Curve::IsClosed ( ) const

◆ IsPeriodic()

Standard_Boolean HLRBRep_Curve::IsPeriodic ( ) const

◆ IsRational()

Standard_Boolean HLRBRep_Curve::IsRational ( ) const

◆ Knots()

void HLRBRep_Curve::Knots ( TColStd_Array1OfReal & kn) const

◆ LastParameter()

Standard_Real HLRBRep_Curve::LastParameter ( ) const

◆ Line()

gp_Lin2d HLRBRep_Curve::Line ( ) const

◆ Multiplicities()

void HLRBRep_Curve::Multiplicities ( TColStd_Array1OfInteger & mu) const

◆ NbIntervals()

Standard_Integer HLRBRep_Curve::NbIntervals ( const GeomAbs_Shape S) const

If necessary, breaks the curve in intervals of continuity . And returns the number of intervals.

◆ NbKnots()

Standard_Integer HLRBRep_Curve::NbKnots ( ) const

◆ NbPoles()

Standard_Integer HLRBRep_Curve::NbPoles ( ) const

◆ Parabola()

gp_Parab2d HLRBRep_Curve::Parabola ( ) const

◆ Parameter2d()

Standard_Real HLRBRep_Curve::Parameter2d ( const Standard_Real P3d) const

Returns the parameter on the 2d curve from the parameter on the 3d curve.

◆ Parameter3d()

Standard_Real HLRBRep_Curve::Parameter3d ( const Standard_Real P2d) const

Returns the parameter on the 3d curve from the parameter on the 2d curve.

◆ Period()

Standard_Real HLRBRep_Curve::Period ( ) const

◆ Poles() [1/2]

void HLRBRep_Curve::Poles ( const Handle< Geom_BSplineCurve > & aCurve,
TColgp_Array1OfPnt2d & TP ) const

◆ Poles() [2/2]

void HLRBRep_Curve::Poles ( TColgp_Array1OfPnt2d & TP) const

◆ PolesAndWeights() [1/2]

void HLRBRep_Curve::PolesAndWeights ( const Handle< Geom_BSplineCurve > & aCurve,
TColgp_Array1OfPnt2d & TP,
TColStd_Array1OfReal & TW ) const

◆ PolesAndWeights() [2/2]

void HLRBRep_Curve::PolesAndWeights ( TColgp_Array1OfPnt2d & TP,
TColStd_Array1OfReal & TW ) const

◆ Projector()

void HLRBRep_Curve::Projector ( const HLRAlgo_Projector * Proj)
inline

◆ Resolution()

Standard_Real HLRBRep_Curve::Resolution ( const Standard_Real R3d) const

Returns the parametric resolution corresponding to the real space resolution <R3d>.

◆ Tangent()

void HLRBRep_Curve::Tangent ( const Standard_Boolean AtStart,
gp_Pnt2d & P,
gp_Dir2d & D ) const

Depending on <AtStart> computes the 2D point and tangent on the curve at sart (or at end). If the first derivative is null look after at start (or before at end) with the second derivative.

◆ Update()

Standard_Real HLRBRep_Curve::Update ( Standard_Real TotMin[16],
Standard_Real TotMax[16] )

Update the minmax and the internal data.

◆ UpdateMinMax()

Standard_Real HLRBRep_Curve::UpdateMinMax ( Standard_Real TotMin[16],
Standard_Real TotMax[16] )

Update the minmax returns tol for enlarge;.

◆ Value()

gp_Pnt2d HLRBRep_Curve::Value ( const Standard_Real U) const

Computes the point of parameter U on the curve.

◆ Value3D()

gp_Pnt HLRBRep_Curve::Value3D ( const Standard_Real U) const

Computes the 3D point of parameter U on the curve.

◆ Z()

Standard_Real HLRBRep_Curve::Z ( const Standard_Real U) const

Computes the Z coordinate of the point of parameter U on the curve in the viewing coordinate system.


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