Open CASCADE Technology
7.3.0

An algorithm to convert a grid of adjacent nonrational Bezier surfaces (with continuity CM) into a BSpline surface (with continuity CM). A CompBezierSurfacesToBSplineSurface object provides a framework for: More...
#include <GeomConvert_CompBezierSurfacesToBSplineSurface.hxx>
Public Member Functions  
GeomConvert_CompBezierSurfacesToBSplineSurface (const TColGeom_Array2OfBezierSurface &Beziers)  
Computes all the data needed to build a "C0" continuous BSpline surface equivalent to the grid of adjacent nonrational Bezier surfaces Beziers. Each surface in the Beziers grid becomes a natural patch, limited by knots values, on the BSpline surface whose data is computed. Surfaces in the grid must satisfy the following conditions: More...  
GeomConvert_CompBezierSurfacesToBSplineSurface (const TColGeom_Array2OfBezierSurface &Beziers, const Standard_Real Tolerance, const Standard_Boolean RemoveKnots=Standard_True)  
Build an Ci uniform (Rational) BSpline surface The higest Continuity Ci is imposed, like the maximal deformation is lower than <Tolerance>. Warning: The Continuity C0 is imposed without any check. More...  
GeomConvert_CompBezierSurfacesToBSplineSurface (const TColGeom_Array2OfBezierSurface &Beziers, const TColStd_Array1OfReal &UKnots, const TColStd_Array1OfReal &VKnots, const GeomAbs_Shape UContinuity=GeomAbs_C0, const GeomAbs_Shape VContinuity=GeomAbs_C0, const Standard_Real Tolerance=1.0e4)  
Computes all the data needed to construct a BSpline surface equivalent to the adjacent nonrational Bezier surfaces Beziers grid. Each surface in the Beziers grid becomes a natural patch, limited by knots values, on the BSpline surface whose data is computed. Surfaces in the grid must satisfy the following conditions: More...  
Standard_Integer  NbUKnots () const 
Returns the number of knots in the U direction of the BSpline surface whose data is computed in this framework. More...  
Standard_Integer  NbUPoles () const 
Returns number of poles in the U direction of the BSpline surface whose data is computed in this framework. More...  
Standard_Integer  NbVKnots () const 
Returns the number of knots in the V direction of the BSpline surface whose data is computed in this framework. More...  
Standard_Integer  NbVPoles () const 
Returns the number of poles in the V direction of the BSpline surface whose data is computed in this framework. More...  
const Handle< TColgp_HArray2OfPnt > &  Poles () const 
Returns the table of poles of the BSpline surface whose data is computed in this framework. More...  
const Handle< TColStd_HArray1OfReal > &  UKnots () const 
Returns the knots table for the u parametric direction of the BSpline surface whose data is computed in this framework. More...  
Standard_Integer  UDegree () const 
Returns the degree for the u parametric direction of the BSpline surface whose data is computed in this framework. More...  
const Handle< TColStd_HArray1OfReal > &  VKnots () const 
Returns the knots table for the v parametric direction of the BSpline surface whose data is computed in this framework. More...  
Standard_Integer  VDegree () const 
Returns the degree for the v parametric direction of the BSpline surface whose data is computed in this framework. More...  
const Handle< TColStd_HArray1OfInteger > &  UMultiplicities () const 
Returns the multiplicities table for the u parametric direction of the knots of the BSpline surface whose data is computed in this framework. More...  
const Handle< TColStd_HArray1OfInteger > &  VMultiplicities () const 
– Returns the multiplicities table for the v parametric direction of the knots of the BSpline surface whose data is computed in this framework. More...  
Standard_Boolean  IsDone () const 
Returns true if the conversion was successful. Unless an exception was raised at the time of construction, the conversion of the Bezier surface grid assigned to this algorithm is always carried out. IsDone returns false if the constraints defined at the time of construction cannot be respected. This occurs when there is an incompatibility between a required degree of continuity on the BSpline surface, and the maximum tolerance accepted for local deformations of the surface. In such a case the computed data does not satisfy all the initial constraints. More...  
An algorithm to convert a grid of adjacent nonrational Bezier surfaces (with continuity CM) into a BSpline surface (with continuity CM). A CompBezierSurfacesToBSplineSurface object provides a framework for:
UIndex [1, NbUPatches] Udirection
Warning! Patches must have compatible parametrization
GeomConvert_CompBezierSurfacesToBSplineSurface::GeomConvert_CompBezierSurfacesToBSplineSurface  (  const TColGeom_Array2OfBezierSurface &  Beziers  ) 
Computes all the data needed to build a "C0" continuous BSpline surface equivalent to the grid of adjacent nonrational Bezier surfaces Beziers. Each surface in the Beziers grid becomes a natural patch, limited by knots values, on the BSpline surface whose data is computed. Surfaces in the grid must satisfy the following conditions:
GeomConvert_CompBezierSurfacesToBSplineSurface::GeomConvert_CompBezierSurfacesToBSplineSurface  (  const TColGeom_Array2OfBezierSurface &  Beziers, 
const Standard_Real  Tolerance,  
const Standard_Boolean  RemoveKnots = Standard_True 

) 
Build an Ci uniform (Rational) BSpline surface The higest Continuity Ci is imposed, like the maximal deformation is lower than <Tolerance>. Warning: The Continuity C0 is imposed without any check.
GeomConvert_CompBezierSurfacesToBSplineSurface::GeomConvert_CompBezierSurfacesToBSplineSurface  (  const TColGeom_Array2OfBezierSurface &  Beziers, 
const TColStd_Array1OfReal &  UKnots,  
const TColStd_Array1OfReal &  VKnots,  
const GeomAbs_Shape  UContinuity = GeomAbs_C0 , 

const GeomAbs_Shape  VContinuity = GeomAbs_C0 , 

const Standard_Real  Tolerance = 1.0e4 

) 
Computes all the data needed to construct a BSpline surface equivalent to the adjacent nonrational Bezier surfaces Beziers grid. Each surface in the Beziers grid becomes a natural patch, limited by knots values, on the BSpline surface whose data is computed. Surfaces in the grid must satisfy the following conditions:
Standard_Boolean GeomConvert_CompBezierSurfacesToBSplineSurface::IsDone  (  )  const 
Returns true if the conversion was successful. Unless an exception was raised at the time of construction, the conversion of the Bezier surface grid assigned to this algorithm is always carried out. IsDone returns false if the constraints defined at the time of construction cannot be respected. This occurs when there is an incompatibility between a required degree of continuity on the BSpline surface, and the maximum tolerance accepted for local deformations of the surface. In such a case the computed data does not satisfy all the initial constraints.
Standard_Integer GeomConvert_CompBezierSurfacesToBSplineSurface::NbUKnots  (  )  const 
Returns the number of knots in the U direction of the BSpline surface whose data is computed in this framework.
Standard_Integer GeomConvert_CompBezierSurfacesToBSplineSurface::NbUPoles  (  )  const 
Returns number of poles in the U direction of the BSpline surface whose data is computed in this framework.
Standard_Integer GeomConvert_CompBezierSurfacesToBSplineSurface::NbVKnots  (  )  const 
Returns the number of knots in the V direction of the BSpline surface whose data is computed in this framework.
Standard_Integer GeomConvert_CompBezierSurfacesToBSplineSurface::NbVPoles  (  )  const 
Returns the number of poles in the V direction of the BSpline surface whose data is computed in this framework.
const Handle< TColgp_HArray2OfPnt >& GeomConvert_CompBezierSurfacesToBSplineSurface::Poles  (  )  const 
Returns the table of poles of the BSpline surface whose data is computed in this framework.
Standard_Integer GeomConvert_CompBezierSurfacesToBSplineSurface::UDegree  (  )  const 
Returns the degree for the u parametric direction of the BSpline surface whose data is computed in this framework.
const Handle< TColStd_HArray1OfReal >& GeomConvert_CompBezierSurfacesToBSplineSurface::UKnots  (  )  const 
Returns the knots table for the u parametric direction of the BSpline surface whose data is computed in this framework.
const Handle< TColStd_HArray1OfInteger >& GeomConvert_CompBezierSurfacesToBSplineSurface::UMultiplicities  (  )  const 
Returns the multiplicities table for the u parametric direction of the knots of the BSpline surface whose data is computed in this framework.
Standard_Integer GeomConvert_CompBezierSurfacesToBSplineSurface::VDegree  (  )  const 
Returns the degree for the v parametric direction of the BSpline surface whose data is computed in this framework.
const Handle< TColStd_HArray1OfReal >& GeomConvert_CompBezierSurfacesToBSplineSurface::VKnots  (  )  const 
Returns the knots table for the v parametric direction of the BSpline surface whose data is computed in this framework.
const Handle< TColStd_HArray1OfInteger >& GeomConvert_CompBezierSurfacesToBSplineSurface::VMultiplicities  (  )  const 
– Returns the multiplicities table for the v parametric direction of the knots of the BSpline surface whose data is computed in this framework.