Open CASCADE Technology Reference Manual 8.0.0
Loading...
Searching...
No Matches
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.
 
 Geom2dAPI_PointsToBSpline (const NCollection_Array1< gp_Pnt2d > &Points, const int DegMin=3, const int DegMax=8, const GeomAbs_Shape Continuity=GeomAbs_C2, const double 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 (const NCollection_Array1< double > &YValues, const double X0, const double DX, const int DegMin=3, const int DegMax=8, const GeomAbs_Shape Continuity=GeomAbs_C2, const double Tol2D=1.0e-6)
 Approximate a BSpline Curve passing through an array of Point. Of coordinates :
 
 Geom2dAPI_PointsToBSpline (const NCollection_Array1< gp_Pnt2d > &Points, const Approx_ParametrizationType ParType, const int DegMin=3, const int DegMax=8, const GeomAbs_Shape Continuity=GeomAbs_C2, const double 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 (const NCollection_Array1< gp_Pnt2d > &Points, const NCollection_Array1< double > &Parameters, const int DegMin=3, const int DegMax=8, const GeomAbs_Shape Continuity=GeomAbs_C2, const double 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 (const NCollection_Array1< gp_Pnt2d > &Points, const double Weight1, const double Weight2, const double Weight3, const int DegMax=8, const GeomAbs_Shape Continuity=GeomAbs_C2, const double 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.
 
void Init (const NCollection_Array1< gp_Pnt2d > &Points, const int DegMin=3, const int DegMax=8, const GeomAbs_Shape Continuity=GeomAbs_C2, const double 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 Init (const NCollection_Array1< double > &YValues, const double X0, const double DX, const int DegMin=3, const int DegMax=8, const GeomAbs_Shape Continuity=GeomAbs_C2, const double Tol2D=1.0e-6)
 Approximate a BSpline Curve passing through an array of Point. Of coordinates :
 
void Init (const NCollection_Array1< gp_Pnt2d > &Points, const Approx_ParametrizationType ParType, const int DegMin=3, const int DegMax=8, const GeomAbs_Shape Continuity=GeomAbs_C2, const double 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 Init (const NCollection_Array1< gp_Pnt2d > &Points, const NCollection_Array1< double > &Parameters, const int DegMin=3, const int DegMax=8, const GeomAbs_Shape Continuity=GeomAbs_C2, const double 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 Init (const NCollection_Array1< gp_Pnt2d > &Points, const double Weight1, const double Weight2, const double Weight3, const int DegMax=8, const GeomAbs_Shape Continuity=GeomAbs_C2, const double 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.
 
const occ::handle< Geom2d_BSplineCurve > & Curve () const
 Returns the approximate BSpline Curve.
 
 operator occ::handle< Geom2d_BSplineCurve > () const
 
bool 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() [1/6]

Geom2dAPI_PointsToBSpline::Geom2dAPI_PointsToBSpline ( )

Constructs an empty approximation algorithm. Use an Init function to define and build the BSpline curve.

◆ Geom2dAPI_PointsToBSpline() [2/6]

Geom2dAPI_PointsToBSpline::Geom2dAPI_PointsToBSpline ( const NCollection_Array1< gp_Pnt2d > & Points,
const int DegMin = 3,
const int DegMax = 8,
const GeomAbs_Shape Continuity = GeomAbs_C2,
const double 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() [3/6]

Geom2dAPI_PointsToBSpline::Geom2dAPI_PointsToBSpline ( const NCollection_Array1< double > & YValues,
const double X0,
const double DX,
const int DegMin = 3,
const int DegMax = 8,
const GeomAbs_Shape Continuity = GeomAbs_C2,
const double 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() [4/6]

Geom2dAPI_PointsToBSpline::Geom2dAPI_PointsToBSpline ( const NCollection_Array1< gp_Pnt2d > & Points,
const Approx_ParametrizationType ParType,
const int DegMin = 3,
const int DegMax = 8,
const GeomAbs_Shape Continuity = GeomAbs_C2,
const double 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() [5/6]

Geom2dAPI_PointsToBSpline::Geom2dAPI_PointsToBSpline ( const NCollection_Array1< gp_Pnt2d > & Points,
const NCollection_Array1< double > & Parameters,
const int DegMin = 3,
const int DegMax = 8,
const GeomAbs_Shape Continuity = GeomAbs_C2,
const double 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() [6/6]

Geom2dAPI_PointsToBSpline::Geom2dAPI_PointsToBSpline ( const NCollection_Array1< gp_Pnt2d > & Points,
const double Weight1,
const double Weight2,
const double Weight3,
const int DegMax = 8,
const GeomAbs_Shape Continuity = GeomAbs_C2,
const double 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

◆ Curve()

const occ::handle< Geom2d_BSplineCurve > & Geom2dAPI_PointsToBSpline::Curve ( ) const

Returns the approximate BSpline Curve.

◆ Init() [1/5]

void Geom2dAPI_PointsToBSpline::Init ( const NCollection_Array1< double > & YValues,
const double X0,
const double DX,
const int DegMin = 3,
const int DegMax = 8,
const GeomAbs_Shape Continuity = GeomAbs_C2,
const double 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

◆ Init() [2/5]

void Geom2dAPI_PointsToBSpline::Init ( const NCollection_Array1< gp_Pnt2d > & Points,
const Approx_ParametrizationType ParType,
const int DegMin = 3,
const int DegMax = 8,
const GeomAbs_Shape Continuity = GeomAbs_C2,
const double 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.

◆ Init() [3/5]

void Geom2dAPI_PointsToBSpline::Init ( const NCollection_Array1< gp_Pnt2d > & Points,
const double Weight1,
const double Weight2,
const double Weight3,
const int DegMax = 8,
const GeomAbs_Shape Continuity = GeomAbs_C2,
const double 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.

◆ Init() [4/5]

void Geom2dAPI_PointsToBSpline::Init ( const NCollection_Array1< gp_Pnt2d > & Points,
const int DegMin = 3,
const int DegMax = 8,
const GeomAbs_Shape Continuity = GeomAbs_C2,
const double 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.

◆ Init() [5/5]

void Geom2dAPI_PointsToBSpline::Init ( const NCollection_Array1< gp_Pnt2d > & Points,
const NCollection_Array1< double > & Parameters,
const int DegMin = 3,
const int DegMax = 8,
const GeomAbs_Shape Continuity = GeomAbs_C2,
const double 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.

◆ IsDone()

bool Geom2dAPI_PointsToBSpline::IsDone ( ) const

◆ operator occ::handle< Geom2d_BSplineCurve >()

Geom2dAPI_PointsToBSpline::operator occ::handle< Geom2d_BSplineCurve > ( ) const

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