#include <GeomFill_ConstrainedFilling.hxx>
Public Member Functions | |
void * | operator new (size_t, void *anAddress) |
void * | operator new (size_t size) |
void | operator delete (void *anAddress) |
Standard_EXPORT | GeomFill_ConstrainedFilling (const Standard_Integer MaxDeg, const Standard_Integer MaxSeg) |
Constructs an empty framework for filling a surface from boundaries. The boundaries of the surface will be defined, and the surface will be built by using the function Init. The surface will respect the following constraints: - its degree will not be greater than MaxDeg - the maximum number of segments MaxSeg which BSpline surfaces can have. . | |
Standard_EXPORT void | Init (const Handle(GeomFill_Boundary)&B1, const Handle(GeomFill_Boundary)&B2, const Handle(GeomFill_Boundary)&B3, const Standard_Boolean NoCheck=Standard_False) |
Standard_EXPORT void | Init (const Handle(GeomFill_Boundary)&B1, const Handle(GeomFill_Boundary)&B2, const Handle(GeomFill_Boundary)&B3, const Handle(GeomFill_Boundary)&B4, const Standard_Boolean NoCheck=Standard_False) |
Constructs a BSpline surface filled from the series of boundaries B1, B2, B3 and, if need be, B4, which serve: - as path constraints - and optionally, as tangency constraints if they are GeomFill_BoundWithSurf curves. The boundaries may be given in any order: they are classified and if necessary, reversed and reparameterized. The surface will also respect the following constraints: - its degree will not be greater than the maximum degree defined at the time of construction of this framework, and - the maximum number of segments MaxSeg which BSpline surfaces can have . | |
Standard_EXPORT void | SetDomain (const Standard_Real l, const Handle(GeomFill_BoundWithSurf)&B) |
Allows to modify domain on witch the blending function associated to the constrained boundary B will propag the influence of the field of tangency. Can be usefull to reduce influence of boundaries on whitch the Coons compatibility conditions are not respected. l is a relative value of the parametric range of B. Default value for l is 1 (used in Init). Warning: Must be called after Init with a constrained boundary used in the call to Init. . | |
Standard_EXPORT void | ReBuild () |
Computes the new poles of the surface using the new blending functions set by several calls to SetDomain. . | |
Standard_EXPORT Handle_GeomFill_Boundary | Boundary (const Standard_Integer I) const |
Returns the bound of index i after sort. . | |
Standard_EXPORT Handle_Geom_BSplineSurface | Surface () const |
Returns the BSpline surface after computation of the fill by this framework. . | |
Standard_EXPORT Standard_Integer | Eval (const Standard_Real W, const Standard_Integer Ord, Standard_Real &Result) const |
Internal use for Advmath approximation call. . | |
Standard_EXPORT void | CheckCoonsAlgPatch (const Standard_Integer I) |
Computes the fields of tangents on 30 points along the bound I, these are not the constraint tangents but gives an idea of the coonsAlgPatch regularity. . | |
Standard_EXPORT void | CheckTgteField (const Standard_Integer I) |
Computes the fields of tangents and normals on 30 points along the bound I, draw them, and computes the max dot product that must be near than 0. . | |
Standard_EXPORT void | CheckApprox (const Standard_Integer I) |
Computes values and normals along the bound I and compare them to the approx result curves (bound and tgte field) , draw the normals and tangents. . | |
Standard_EXPORT void | CheckResult (const Standard_Integer I) |
Computes values and normals along the bound I on both constraint surface and result surface, draw the normals, and computes the max distance between values and the max angle between normals. . | |
Private Member Functions | |
Standard_EXPORT void | Build () |
Performs the approximation an compute the poles of the surface. . | |
Standard_EXPORT void | PerformApprox () |
Performs the parallel approximation on two oppsite bounds . | |
Standard_EXPORT void | MatchKnots () |
matches the nodal vectors of the blending functions and the results of the approx to allow the surface computation. | |
Standard_EXPORT void | PerformS0 () |
performs the poles of the partial construction S0. | |
Standard_EXPORT void | PerformS1 () |
performs the poles of the partial construction S1. | |
Standard_EXPORT void | PerformSurface () |
performs the poles of the surface using the partial constructions S0 and S1. | |
Standard_EXPORT Standard_Boolean | CheckTgte (const Standard_Integer I) |
Checks if the field of tangency doesn t twist along the boundary. . | |
Standard_EXPORT void | MinTgte (const Standard_Integer I) |
Evaluates the min magnitude of the field of tangency along bound I to allow a simple evaluation of the tolerance needed for the approximation of the field of tangency. . | |
Private Attributes | |
Standard_Integer | degmax |
Standard_Integer | segmax |
Handle_GeomFill_CoonsAlgPatch | ptch |
Handle_GeomFill_TgtField | tgalg [4] |
Standard_Real | mig [4] |
GeomFill_CornerState | stcor [4] |
gp_Vec | v [4] |
Standard_Boolean | appdone |
Standard_Real | tolapp3d [4] |
Standard_Real | tolappang [4] |
Standard_Integer | degree [2] |
Handle_TColgp_HArray1OfPnt | curvpol [4] |
Handle_TColgp_HArray1OfPnt | tgtepol [4] |
Handle_TColStd_HArray1OfInteger | mults [2] |
Handle_TColStd_HArray1OfReal | knots [2] |
Handle_TColStd_HArray1OfReal | ab [4] |
Handle_TColStd_HArray1OfReal | pq [4] |
Standard_Real | dom [4] |
Handle_TColgp_HArray1OfPnt | ncpol [4] |
Handle_TColgp_HArray1OfPnt | ntpol [4] |
Handle_TColStd_HArray1OfInteger | nm [2] |
Handle_TColStd_HArray1OfReal | nk [2] |
Handle_TColgp_HArray2OfPnt | S0 |
Handle_TColgp_HArray2OfPnt | S1 |
Handle_Geom_BSplineSurface | surf |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|