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

This class is used to approximate a BsplineCurve
passing through an array of points, with a given
Continuity.
Describes functions for building a 2D BSpline
curve which approximates a set of points.
A PointsToBSpline object provides a framework for:
More...

#include <Geom2dAPI_PointsToBSpline.hxx>

Public Member Functions

 Geom2dAPI_PointsToBSpline ()
 
 Constructs an empty approximation algorithm. <br>

Use an Init function to define and build the BSpline curve.
More...

 
 Geom2dAPI_PointsToBSpline (const TColgp_Array1OfPnt2d &Points, const Standard_Integer DegMin=3, const Standard_Integer DegMax=8, const GeomAbs_Shape Continuity=GeomAbs_C2, const Standard_Real Tol2D=1.0e-6)
 Approximate a BSpline Curve passing through an
array of Point. The resulting BSpline will have
the following properties:
1- his degree will be in the range [Degmin,Degmax]
2- his continuity will be at least <Continuity>
3- the distance from the point <Points> to the
BSpline will be lower to Tol2D
More...
 
 Geom2dAPI_PointsToBSpline (const TColStd_Array1OfReal &YValues, const Standard_Real X0, const Standard_Real DX, const Standard_Integer DegMin=3, const Standard_Integer DegMax=8, const GeomAbs_Shape Continuity=GeomAbs_C2, const Standard_Real Tol2D=1.0e-6)
 
 Approximate  a BSpline  Curve passing  through  an <br>
     array of  Point.  Of coordinates : <br>


X = X0 + DX * (i-YValues.Lower())
Y = YValues(i)

With i in the range YValues.Lower(), YValues.Upper()

The BSpline will be parametrized from t = X0 to
X0 + DX * (YValues.Upper() - YValues.Lower())

And will satisfy X(t) = t

The resulting BSpline will have
the following properties:
1- his degree will be in the range [Degmin,Degmax]
2- his continuity will be at least <Continuity>
3- the distance from the point <Points> to the
BSpline will be lower to Tol2D
More...

 
 Geom2dAPI_PointsToBSpline (const TColgp_Array1OfPnt2d &Points, const Approx_ParametrizationType ParType, const Standard_Integer DegMin=3, const Standard_Integer DegMax=8, const GeomAbs_Shape Continuity=GeomAbs_C2, const Standard_Real Tol2D=1.0e-3)
 Approximate a BSpline Curve passing through an
array of Point. The resulting BSpline will have
the following properties:
1- his degree will be in the range [Degmin,Degmax]
2- his continuity will be at least <Continuity>
3- the distance from the point <Points> to the
BSpline will be lower to Tol2D
More...
 
 Geom2dAPI_PointsToBSpline (const TColgp_Array1OfPnt2d &Points, const TColStd_Array1OfReal &Parameters, const Standard_Integer DegMin=3, const Standard_Integer DegMax=8, const GeomAbs_Shape Continuity=GeomAbs_C2, const Standard_Real Tol2D=1.0e-3)
 Approximate a BSpline Curve passing through an
array of Point, which parameters are given by the
array <Parameters>.
The resulting BSpline will have the following
properties:
1- his degree will be in the range [Degmin,Degmax]
2- his continuity will be at least <Continuity>
3- the distance from the point <Points> to the
BSpline will be lower to Tol2D
More...
 
 Geom2dAPI_PointsToBSpline (const TColgp_Array1OfPnt2d &Points, const Standard_Real Weight1, const Standard_Real Weight2, const Standard_Real Weight3, const Standard_Integer DegMax=8, const GeomAbs_Shape Continuity=GeomAbs_C2, const Standard_Real Tol3D=1.0e-3)
 Approximate a BSpline Curve passing through an
array of Point using variational smoothing algorithm,
which tries to minimize additional criterium:
Weight1*CurveLength + Weight2*Curvature + Weight3*Torsion
More...
 
void Init (const TColgp_Array1OfPnt2d &Points, const Standard_Integer DegMin=3, const Standard_Integer DegMax=8, const GeomAbs_Shape Continuity=GeomAbs_C2, const Standard_Real Tol2D=1.0e-6)
 Approximate a BSpline Curve passing through an
array of Point. The resulting BSpline will have
the following properties:
1- his degree will be in the range [Degmin,Degmax]
2- his continuity will be at least <Continuity>
3- the distance from the point <Points> to the
BSpline will be lower to Tol2D
More...
 
void Init (const TColStd_Array1OfReal &YValues, const Standard_Real X0, const Standard_Real DX, const Standard_Integer DegMin=3, const Standard_Integer DegMax=8, const GeomAbs_Shape Continuity=GeomAbs_C2, const Standard_Real Tol2D=1.0e-6)
 
 Approximate  a BSpline  Curve passing  through  an <br>
     array of  Point.  Of coordinates : <br>


X = X0 + DX * (i-YValues.Lower())
Y = YValues(i)

With i in the range YValues.Lower(), YValues.Upper()

The BSpline will be parametrized from t = X0 to
X0 + DX * (YValues.Upper() - YValues.Lower())

And will satisfy X(t) = t

The resulting BSpline will have
the following properties:
1- his degree will be in the range [Degmin,Degmax]
2- his continuity will be at least <Continuity>
3- the distance from the point <Points> to the
BSpline will be lower to Tol2D
More...

 
void Init (const TColgp_Array1OfPnt2d &Points, const Approx_ParametrizationType ParType, const Standard_Integer DegMin=3, const Standard_Integer DegMax=8, const GeomAbs_Shape Continuity=GeomAbs_C2, const Standard_Real Tol2D=1.0e-3)
 Approximate a BSpline Curve passing through an
array of Point. The resulting BSpline will have
the following properties:
1- his degree will be in the range [Degmin,Degmax]
2- his continuity will be at least <Continuity>
3- the distance from the point <Points> to the
BSpline will be lower to Tol2D
More...
 
void Init (const TColgp_Array1OfPnt2d &Points, const TColStd_Array1OfReal &Parameters, const Standard_Integer DegMin=3, const Standard_Integer DegMax=8, const GeomAbs_Shape Continuity=GeomAbs_C2, const Standard_Real Tol2D=1.0e-3)
 Approximate a BSpline Curve passing through an
array of Point, which parameters are given by the
array <Parameters>.
The resulting BSpline will have the following
properties:
1- his degree will be in the range [Degmin,Degmax]
2- his continuity will be at least <Continuity>
3- the distance from the point <Points> to the
BSpline will be lower to Tol2D
More...
 
void Init (const TColgp_Array1OfPnt2d &Points, const Standard_Real Weight1, const Standard_Real Weight2, const Standard_Real Weight3, const Standard_Integer DegMax=8, const GeomAbs_Shape Continuity=GeomAbs_C2, const Standard_Real Tol2D=1.0e-3)
 Approximate a BSpline Curve passing through an
array of Point using variational smoothing algorithm,
which tries to minimize additional criterium:
Weight1*CurveLength + Weight2*Curvature + Weight3*Torsion
More...
 
const Handle_Geom2d_BSplineCurve & Curve () const
 Returns the approximate BSpline Curve
More...
 
 operator Handle< Geom2d_BSplineCurve > () const
 
Standard_Boolean IsDone () const
 

Detailed Description

This class is used to approximate a BsplineCurve
passing through an array of points, with a given
Continuity.
Describes functions for building a 2D BSpline
curve which approximates a set of points.
A PointsToBSpline object provides a framework for:

Constructor & Destructor Documentation

Geom2dAPI_PointsToBSpline::Geom2dAPI_PointsToBSpline ( )

 Constructs an empty approximation algorithm. <br>

Use an Init function to define and build the BSpline curve.

Geom2dAPI_PointsToBSpline::Geom2dAPI_PointsToBSpline ( const TColgp_Array1OfPnt2d Points,
const Standard_Integer  DegMin = 3,
const Standard_Integer  DegMax = 8,
const GeomAbs_Shape  Continuity = GeomAbs_C2,
const Standard_Real  Tol2D = 1.0e-6 
)

Approximate a BSpline Curve passing through an
array of Point. The resulting BSpline will have
the following properties:
1- his degree will be in the range [Degmin,Degmax]
2- his continuity will be at least <Continuity>
3- the distance from the point <Points> to the
BSpline will be lower to Tol2D

Geom2dAPI_PointsToBSpline::Geom2dAPI_PointsToBSpline ( const TColStd_Array1OfReal YValues,
const Standard_Real  X0,
const Standard_Real  DX,
const Standard_Integer  DegMin = 3,
const Standard_Integer  DegMax = 8,
const GeomAbs_Shape  Continuity = GeomAbs_C2,
const Standard_Real  Tol2D = 1.0e-6 
)

 Approximate  a BSpline  Curve passing  through  an <br>
     array of  Point.  Of coordinates : <br>


X = X0 + DX * (i-YValues.Lower())
Y = YValues(i)

With i in the range YValues.Lower(), YValues.Upper()

The BSpline will be parametrized from t = X0 to
X0 + DX * (YValues.Upper() - YValues.Lower())

And will satisfy X(t) = t

The resulting BSpline will have
the following properties:
1- his degree will be in the range [Degmin,Degmax]
2- his continuity will be at least <Continuity>
3- the distance from the point <Points> to the
BSpline will be lower to Tol2D

Geom2dAPI_PointsToBSpline::Geom2dAPI_PointsToBSpline ( const TColgp_Array1OfPnt2d Points,
const Approx_ParametrizationType  ParType,
const Standard_Integer  DegMin = 3,
const Standard_Integer  DegMax = 8,
const GeomAbs_Shape  Continuity = GeomAbs_C2,
const Standard_Real  Tol2D = 1.0e-3 
)

Approximate a BSpline Curve passing through an
array of Point. The resulting BSpline will have
the following properties:
1- his degree will be in the range [Degmin,Degmax]
2- his continuity will be at least <Continuity>
3- the distance from the point <Points> to the
BSpline will be lower to Tol2D

Geom2dAPI_PointsToBSpline::Geom2dAPI_PointsToBSpline ( const TColgp_Array1OfPnt2d Points,
const TColStd_Array1OfReal Parameters,
const Standard_Integer  DegMin = 3,
const Standard_Integer  DegMax = 8,
const GeomAbs_Shape  Continuity = GeomAbs_C2,
const Standard_Real  Tol2D = 1.0e-3 
)

Approximate a BSpline Curve passing through an
array of Point, which parameters are given by the
array <Parameters>.
The resulting BSpline will have the following
properties:
1- his degree will be in the range [Degmin,Degmax]
2- his continuity will be at least <Continuity>
3- the distance from the point <Points> to the
BSpline will be lower to Tol2D

Geom2dAPI_PointsToBSpline::Geom2dAPI_PointsToBSpline ( const TColgp_Array1OfPnt2d Points,
const Standard_Real  Weight1,
const Standard_Real  Weight2,
const Standard_Real  Weight3,
const Standard_Integer  DegMax = 8,
const GeomAbs_Shape  Continuity = GeomAbs_C2,
const Standard_Real  Tol3D = 1.0e-3 
)

Approximate a BSpline Curve passing through an
array of Point using variational smoothing algorithm,
which tries to minimize additional criterium:
Weight1*CurveLength + Weight2*Curvature + Weight3*Torsion

Member Function Documentation

const Handle_Geom2d_BSplineCurve& Geom2dAPI_PointsToBSpline::Curve ( ) const

Returns the approximate BSpline Curve

void Geom2dAPI_PointsToBSpline::Init ( const TColgp_Array1OfPnt2d Points,
const Standard_Integer  DegMin = 3,
const Standard_Integer  DegMax = 8,
const GeomAbs_Shape  Continuity = GeomAbs_C2,
const Standard_Real  Tol2D = 1.0e-6 
)

Approximate a BSpline Curve passing through an
array of Point. The resulting BSpline will have
the following properties:
1- his degree will be in the range [Degmin,Degmax]
2- his continuity will be at least <Continuity>
3- the distance from the point <Points> to the
BSpline will be lower to Tol2D

void Geom2dAPI_PointsToBSpline::Init ( const TColStd_Array1OfReal YValues,
const Standard_Real  X0,
const Standard_Real  DX,
const Standard_Integer  DegMin = 3,
const Standard_Integer  DegMax = 8,
const GeomAbs_Shape  Continuity = GeomAbs_C2,
const Standard_Real  Tol2D = 1.0e-6 
)

 Approximate  a BSpline  Curve passing  through  an <br>
     array of  Point.  Of coordinates : <br>


X = X0 + DX * (i-YValues.Lower())
Y = YValues(i)

With i in the range YValues.Lower(), YValues.Upper()

The BSpline will be parametrized from t = X0 to
X0 + DX * (YValues.Upper() - YValues.Lower())

And will satisfy X(t) = t

The resulting BSpline will have
the following properties:
1- his degree will be in the range [Degmin,Degmax]
2- his continuity will be at least <Continuity>
3- the distance from the point <Points> to the
BSpline will be lower to Tol2D

void Geom2dAPI_PointsToBSpline::Init ( const TColgp_Array1OfPnt2d Points,
const Approx_ParametrizationType  ParType,
const Standard_Integer  DegMin = 3,
const Standard_Integer  DegMax = 8,
const GeomAbs_Shape  Continuity = GeomAbs_C2,
const Standard_Real  Tol2D = 1.0e-3 
)

Approximate a BSpline Curve passing through an
array of Point. The resulting BSpline will have
the following properties:
1- his degree will be in the range [Degmin,Degmax]
2- his continuity will be at least <Continuity>
3- the distance from the point <Points> to the
BSpline will be lower to Tol2D

void Geom2dAPI_PointsToBSpline::Init ( const TColgp_Array1OfPnt2d Points,
const TColStd_Array1OfReal Parameters,
const Standard_Integer  DegMin = 3,
const Standard_Integer  DegMax = 8,
const GeomAbs_Shape  Continuity = GeomAbs_C2,
const Standard_Real  Tol2D = 1.0e-3 
)

Approximate a BSpline Curve passing through an
array of Point, which parameters are given by the
array <Parameters>.
The resulting BSpline will have the following
properties:
1- his degree will be in the range [Degmin,Degmax]
2- his continuity will be at least <Continuity>
3- the distance from the point <Points> to the
BSpline will be lower to Tol2D

void Geom2dAPI_PointsToBSpline::Init ( const TColgp_Array1OfPnt2d Points,
const Standard_Real  Weight1,
const Standard_Real  Weight2,
const Standard_Real  Weight3,
const Standard_Integer  DegMax = 8,
const GeomAbs_Shape  Continuity = GeomAbs_C2,
const Standard_Real  Tol2D = 1.0e-3 
)

Approximate a BSpline Curve passing through an
array of Point using variational smoothing algorithm,
which tries to minimize additional criterium:
Weight1*CurveLength + Weight2*Curvature + Weight3*Torsion

Standard_Boolean Geom2dAPI_PointsToBSpline::IsDone ( ) const
Geom2dAPI_PointsToBSpline::operator Handle< Geom2d_BSplineCurve > ( ) const

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