Open CASCADE Technology
7.7.0
|
Splits a Surface with a continuity criterion. At the present moment C1 criterion is used only. This tool works with tolerance. If C0 surface can be corrected at a knot with given tolerance then the surface is corrected, otherwise it is spltted at that knot. More...
#include <ShapeUpgrade_SplitSurfaceContinuity.hxx>
Public Member Functions | |
ShapeUpgrade_SplitSurfaceContinuity () | |
Empty constructor. More... | |
void | SetCriterion (const GeomAbs_Shape Criterion) |
Sets criterion for splitting. More... | |
void | SetTolerance (const Standard_Real Tol) |
Sets tolerance. More... | |
virtual void | Compute (const Standard_Boolean Segment) override |
Calculates points for correction/splitting of the surface. More... | |
Public Member Functions inherited from ShapeUpgrade_SplitSurface | |
ShapeUpgrade_SplitSurface () | |
Empty constructor. More... | |
void | Init (const Handle< Geom_Surface > &S) |
Initializes with single supporting surface. More... | |
void | Init (const Handle< Geom_Surface > &S, const Standard_Real UFirst, const Standard_Real ULast, const Standard_Real VFirst, const Standard_Real VLast, const Standard_Real theArea=0.) |
Initializes with single supporting surface with bounding parameters. More... | |
void | SetUSplitValues (const Handle< TColStd_HSequenceOfReal > &UValues) |
Sets U parameters where splitting has to be done. More... | |
void | SetVSplitValues (const Handle< TColStd_HSequenceOfReal > &VValues) |
Sets V parameters where splitting has to be done. More... | |
virtual void | Build (const Standard_Boolean Segment) |
Performs splitting of the supporting surface. If resulting surface is B-Spline and Segment is True, the result is composed with segments of the surface bounded by the U and V SplitValues (method Geom_BSplineSurface::Segment is used). If Segment is False, the result is composed with Geom_RectangularTrimmedSurface all based on the same complete surface. Fields myNbResultingRow and myNbResultingCol must be set to specify the size of resulting grid of surfaces. More... | |
void | Perform (const Standard_Boolean Segment=Standard_True) |
Performs correction/splitting of the surface. First defines splitting values by method Compute(), then calls method Build(). More... | |
const Handle< TColStd_HSequenceOfReal > & | USplitValues () const |
returns all the U splitting values including the First and Last parameters of the input surface More... | |
const Handle< TColStd_HSequenceOfReal > & | VSplitValues () const |
returns all the splitting V values including the First and Last parameters of the input surface More... | |
Standard_Boolean | Status (const ShapeExtend_Status status) const |
Returns the status OK - no splitting is needed DONE1 - splitting required and gives more than one patch DONE2 - splitting is required, but gives only single patch (initial) DONE3 - geometric form of the surface or parametrisation is modified. More... | |
const Handle< ShapeExtend_CompositeSurface > & | ResSurfaces () const |
Returns obtained surfaces after splitting as CompositeSurface. More... | |
Public Member Functions inherited from Standard_Transient | |
Standard_Transient () | |
Empty constructor. More... | |
Standard_Transient (const Standard_Transient &) | |
Copy constructor – does nothing. More... | |
Standard_Transient & | operator= (const Standard_Transient &) |
Assignment operator, needed to avoid copying reference counter. More... | |
virtual | ~Standard_Transient () |
Destructor must be virtual. More... | |
virtual void | Delete () const |
Memory deallocator for transient classes. More... | |
virtual const opencascade::handle< Standard_Type > & | DynamicType () const |
Returns a type descriptor about this object. More... | |
Standard_Boolean | IsInstance (const opencascade::handle< Standard_Type > &theType) const |
Returns a true value if this is an instance of Type. More... | |
Standard_Boolean | IsInstance (const Standard_CString theTypeName) const |
Returns a true value if this is an instance of TypeName. More... | |
Standard_Boolean | IsKind (const opencascade::handle< Standard_Type > &theType) const |
Returns true if this is an instance of Type or an instance of any class that inherits from Type. Note that multiple inheritance is not supported by OCCT RTTI mechanism. More... | |
Standard_Boolean | IsKind (const Standard_CString theTypeName) const |
Returns true if this is an instance of TypeName or an instance of any class that inherits from TypeName. Note that multiple inheritance is not supported by OCCT RTTI mechanism. More... | |
Standard_Transient * | This () const |
Returns non-const pointer to this object (like const_cast). For protection against creating handle to objects allocated in stack or call from constructor, it will raise exception Standard_ProgramError if reference counter is zero. More... | |
Standard_Integer | GetRefCount () const |
Get the reference counter of this object. More... | |
void | IncrementRefCounter () const |
Increments the reference counter of this object. More... | |
Standard_Integer | DecrementRefCounter () const |
Decrements the reference counter of this object; returns the decremented value. More... | |
Additional Inherited Members | |
Public Types inherited from Standard_Transient | |
typedef void | base_type |
Returns a type descriptor about this object. More... | |
Static Public Member Functions inherited from Standard_Transient | |
static const char * | get_type_name () |
Returns a type descriptor about this object. More... | |
static const opencascade::handle< Standard_Type > & | get_type_descriptor () |
Returns type descriptor of Standard_Transient class. More... | |
Protected Attributes inherited from ShapeUpgrade_SplitSurface | |
Handle< TColStd_HSequenceOfReal > | myUSplitValues |
Handle< TColStd_HSequenceOfReal > | myVSplitValues |
Standard_Integer | myNbResultingRow |
Standard_Integer | myNbResultingCol |
Handle< Geom_Surface > | mySurface |
Standard_Integer | myStatus |
Handle< ShapeExtend_CompositeSurface > | myResSurfaces |
Standard_Real | myArea |
Standard_Real | myUsize |
Standard_Real | myVsize |
Splits a Surface with a continuity criterion. At the present moment C1 criterion is used only. This tool works with tolerance. If C0 surface can be corrected at a knot with given tolerance then the surface is corrected, otherwise it is spltted at that knot.
ShapeUpgrade_SplitSurfaceContinuity::ShapeUpgrade_SplitSurfaceContinuity | ( | ) |
Empty constructor.
|
overridevirtual |
Calculates points for correction/splitting of the surface.
Reimplemented from ShapeUpgrade_SplitSurface.
void ShapeUpgrade_SplitSurfaceContinuity::SetCriterion | ( | const GeomAbs_Shape | Criterion | ) |
Sets criterion for splitting.
void ShapeUpgrade_SplitSurfaceContinuity::SetTolerance | ( | const Standard_Real | Tol | ) |
Sets tolerance.