Open CASCADE Technology 6.6.0
Public Member Functions
GeomAPI_PointsToBSplineSurface Class Reference

This class is used to approximate or interpolate
a BSplineSurface passing through an Array2 of
points, with a given continuity.
Describes functions for building a BSpline
surface which approximates or interpolates a set of points.
A PointsToBSplineSurface object provides a framework for:
More...

#include <GeomAPI_PointsToBSplineSurface.hxx>

Public Member Functions

 GeomAPI_PointsToBSplineSurface ()
 Constructs an empty algorithm for
approximation or interpolation of a surface.
Use:

 GeomAPI_PointsToBSplineSurface (const TColgp_Array2OfPnt &Points, const Standard_Integer DegMin=3, const Standard_Integer DegMax=8, const GeomAbs_Shape Continuity=GeomAbs_C2, const Standard_Real Tol3D=1.0e-3)
 Approximates a BSpline Surface passing through an
array of Points. 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 Tol3D

 GeomAPI_PointsToBSplineSurface (const TColgp_Array2OfPnt &Points, const Approx_ParametrizationType ParType, const Standard_Integer DegMin=3, const Standard_Integer DegMax=8, const GeomAbs_Shape Continuity=GeomAbs_C2, const Standard_Real Tol3D=1.0e-3)
 Approximates a BSpline Surface passing through an
array of Points. 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 Tol3D

 GeomAPI_PointsToBSplineSurface (const TColgp_Array2OfPnt &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)
 Approximates a BSpline Surface passing through an
array of points using variational smoothing algorithm,
which tries to minimize additional criterium:
Weight1*CurveLength + Weight2*Curvature + Weight3*Torsion

 GeomAPI_PointsToBSplineSurface (const TColStd_Array2OfReal &ZPoints, const Standard_Real X0, const Standard_Real dX, const Standard_Real Y0, const Standard_Real dY, const Standard_Integer DegMin=3, const Standard_Integer DegMax=8, const GeomAbs_Shape Continuity=GeomAbs_C2, const Standard_Real Tol3D=1.0e-3)
 Approximates a BSpline Surface passing through an
array of Points.

The points will be constructed as follow:
P(i,j) = gp_Pnt( X0 + (i-1)*dX ,
Y0 + (j-1)*dY ,
ZPoints(i,j) )

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 Tol3D
4- the parametrization of the surface will verify:
S->Value( U, V) = gp_Pnt( U, V, Z(U,V) );

void Init (const TColgp_Array2OfPnt &Points, const Standard_Integer DegMin=3, const Standard_Integer DegMax=8, const GeomAbs_Shape Continuity=GeomAbs_C2, const Standard_Real Tol3D=1.0e-3)
 Approximates a BSpline Surface 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 Tol3D

void Interpolate (const TColgp_Array2OfPnt &Points)
 Interpolates a BSpline Surface passing through an
array of Point. The resulting BSpline will have
the following properties:
1- his degree will be 3.
2- his continuity will be C2.

void Interpolate (const TColgp_Array2OfPnt &Points, const Approx_ParametrizationType ParType)
 Interpolates a BSpline Surface passing through an
array of Point. The resulting BSpline will have
the following properties:
1- his degree will be 3.
2- his continuity will be C2.

void Init (const TColStd_Array2OfReal &ZPoints, const Standard_Real X0, const Standard_Real dX, const Standard_Real Y0, const Standard_Real dY, const Standard_Integer DegMin=3, const Standard_Integer DegMax=8, const GeomAbs_Shape Continuity=GeomAbs_C2, const Standard_Real Tol3D=1.0e-3)
 Approximates a BSpline Surface passing through an
array of Points.

The points will be constructed as follow:
P(i,j) = gp_Pnt( X0 + (i-1)*dX ,
Y0 + (j-1)*dY ,
ZPoints(i,j) )

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 Tol3D
4- the parametrization of the surface will verify:
S->Value( U, V) = gp_Pnt( U, V, Z(U,V) );

void Interpolate (const TColStd_Array2OfReal &ZPoints, const Standard_Real X0, const Standard_Real dX, const Standard_Real Y0, const Standard_Real dY)
 Interpolates a BSpline Surface passing through an
array of Points.

The points will be constructed as follow:
P(i,j) = gp_Pnt( X0 + (i-1)*dX ,
Y0 + (j-1)*dY ,
ZPoints(i,j) )

The resulting BSpline will have the following
properties:
1- his degree will be 3
2- his continuity will be C2.
4- the parametrization of the surface will verify:
S->Value( U, V) = gp_Pnt( U, V, Z(U,V) );

void Init (const TColgp_Array2OfPnt &Points, const Approx_ParametrizationType ParType, const Standard_Integer DegMin=3, const Standard_Integer DegMax=8, const GeomAbs_Shape Continuity=GeomAbs_C2, const Standard_Real Tol3D=1.0e-3)
 Approximates a BSpline Surface 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 Tol3D

void Init (const TColgp_Array2OfPnt &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)
 Approximates a BSpline Surface passing through an
array of point using variational smoothing algorithm,
which tries to minimize additional criterium:
Weight1*CurveLength + Weight2*Curvature + Weight3*Torsion

const Handle_Geom_BSplineSurface & Surface () const
 Returns the approximate BSpline Surface

 operator Handle< Geom_BSplineSurface > () const
Standard_Boolean IsDone () const

Detailed Description


Constructor & Destructor Documentation

GeomAPI_PointsToBSplineSurface::GeomAPI_PointsToBSplineSurface ( )
  • an Init function to define and build the
    BSpline surface by approximation, or
  • an Interpolate function to define and build
    the BSpline surface by interpolation.
GeomAPI_PointsToBSplineSurface::GeomAPI_PointsToBSplineSurface ( const TColgp_Array2OfPnt Points,
const Standard_Integer  DegMin = 3,
const Standard_Integer  DegMax = 8,
const GeomAbs_Shape  Continuity = GeomAbs_C2,
const Standard_Real  Tol3D = 1.0e-3 
)
GeomAPI_PointsToBSplineSurface::GeomAPI_PointsToBSplineSurface ( const TColgp_Array2OfPnt Points,
const Approx_ParametrizationType  ParType,
const Standard_Integer  DegMin = 3,
const Standard_Integer  DegMax = 8,
const GeomAbs_Shape  Continuity = GeomAbs_C2,
const Standard_Real  Tol3D = 1.0e-3 
)
GeomAPI_PointsToBSplineSurface::GeomAPI_PointsToBSplineSurface ( const TColgp_Array2OfPnt 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 
)
GeomAPI_PointsToBSplineSurface::GeomAPI_PointsToBSplineSurface ( const TColStd_Array2OfReal ZPoints,
const Standard_Real  X0,
const Standard_Real  dX,
const Standard_Real  Y0,
const Standard_Real  dY,
const Standard_Integer  DegMin = 3,
const Standard_Integer  DegMax = 8,
const GeomAbs_Shape  Continuity = GeomAbs_C2,
const Standard_Real  Tol3D = 1.0e-3 
)

Member Function Documentation

void GeomAPI_PointsToBSplineSurface::Init ( const TColgp_Array2OfPnt Points,
const Standard_Integer  DegMin = 3,
const Standard_Integer  DegMax = 8,
const GeomAbs_Shape  Continuity = GeomAbs_C2,
const Standard_Real  Tol3D = 1.0e-3 
)
void GeomAPI_PointsToBSplineSurface::Init ( const TColStd_Array2OfReal ZPoints,
const Standard_Real  X0,
const Standard_Real  dX,
const Standard_Real  Y0,
const Standard_Real  dY,
const Standard_Integer  DegMin = 3,
const Standard_Integer  DegMax = 8,
const GeomAbs_Shape  Continuity = GeomAbs_C2,
const Standard_Real  Tol3D = 1.0e-3 
)
void GeomAPI_PointsToBSplineSurface::Init ( const TColgp_Array2OfPnt Points,
const Approx_ParametrizationType  ParType,
const Standard_Integer  DegMin = 3,
const Standard_Integer  DegMax = 8,
const GeomAbs_Shape  Continuity = GeomAbs_C2,
const Standard_Real  Tol3D = 1.0e-3 
)
void GeomAPI_PointsToBSplineSurface::Init ( const TColgp_Array2OfPnt 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 
)
void GeomAPI_PointsToBSplineSurface::Interpolate ( const TColgp_Array2OfPnt Points)
void GeomAPI_PointsToBSplineSurface::Interpolate ( const TColStd_Array2OfReal ZPoints,
const Standard_Real  X0,
const Standard_Real  dX,
const Standard_Real  Y0,
const Standard_Real  dY 
)
void GeomAPI_PointsToBSplineSurface::Interpolate ( const TColgp_Array2OfPnt Points,
const Approx_ParametrizationType  ParType 
)
Standard_Boolean GeomAPI_PointsToBSplineSurface::IsDone ( ) const
GeomAPI_PointsToBSplineSurface::operator Handle< Geom_BSplineSurface > ( ) const
const Handle_Geom_BSplineSurface& GeomAPI_PointsToBSplineSurface::Surface ( ) const

The documentation for this class was generated from the following file:
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines