Open CASCADE Technology
6.5.4
|
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 | |
DEFINE_STANDARD_ALLOC | Geom2dAPI_PointsToBSpline () |
Constructs an empty approximation algorithm. Use an Init function to define and build the BSpline curve. | |
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 (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 (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 (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 (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 | |
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 | |
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 : 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 | 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 | 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 | 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 | |
const Handle_Geom2d_BSplineCurve & | Curve () const |
Returns the approximate BSpline Curve | |
operator Handle< Geom2d_BSplineCurve > () const | |
Standard_Boolean | IsDone () const |
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 |
||
) |
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 |
||
) |
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 |
||
) |
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 |
||
) |
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 |
||
) |
const Handle_Geom2d_BSplineCurve& Geom2dAPI_PointsToBSpline::Curve | ( | ) | const |
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 |
||
) |
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 |
||
) |
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 |
||
) |
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 |
||
) |
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 |
||
) |
Geom2dAPI_PointsToBSpline::operator Handle< Geom2d_BSplineCurve > | ( | ) | const |