Open CASCADE Technology: Geom2dAPI_PointsToBSpline Class Reference

Open CASCADE Technology 6.8.0

- Main Page
- Related Pages
- Namespaces
- Data Structures
- Files

- Data Structures
- Data Structure Index
- Class Hierarchy
- Data Fields

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. 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 array of Point. Of coordinates : 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 array of Point. Of coordinates : 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:

- defining the data of the BSpline curve to be built,
- implementing the approximation algorithm, and
- consulting the results

## Constructor & Destructor Documentation

Geom2dAPI_PointsToBSpline::Geom2dAPI_PointsToBSpline | ( |  | ) |

Constructs an empty approximation algorithm. 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 array of Point. Of coordinates :

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 array of Point. Of coordinates :

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:

- Geom2dAPI_PointsToBSpline.hxx