Open CASCADE Technology 7.8.2.dev
|
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. | |
void | SetCriterion (const GeomAbs_Shape Criterion) |
Sets criterion for splitting. | |
void | SetTolerance (const Standard_Real Tol) |
Sets tolerance. | |
virtual void | Compute (const Standard_Boolean Segment) override |
Calculates points for correction/splitting of the surface. | |
Public Member Functions inherited from ShapeUpgrade_SplitSurface | |
ShapeUpgrade_SplitSurface () | |
Empty constructor. | |
void | Init (const Handle< Geom_Surface > &S) |
Initializes with single supporting surface. | |
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. | |
void | SetUSplitValues (const Handle< TColStd_HSequenceOfReal > &UValues) |
Sets U parameters where splitting has to be done. | |
void | SetVSplitValues (const Handle< TColStd_HSequenceOfReal > &VValues) |
Sets V parameters where splitting has to be done. | |
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. | |
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(). | |
const Handle< TColStd_HSequenceOfReal > & | USplitValues () const |
returns all the U splitting values including the First and Last parameters of the input surface | |
const Handle< TColStd_HSequenceOfReal > & | VSplitValues () const |
returns all the splitting V values including the First and Last parameters of the input surface | |
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. | |
const Handle< ShapeExtend_CompositeSurface > & | ResSurfaces () const |
Returns obtained surfaces after splitting as CompositeSurface. | |
Public Member Functions inherited from Standard_Transient | |
Standard_Transient () | |
Empty constructor. | |
Standard_Transient (const Standard_Transient &) | |
Copy constructor – does nothing. | |
Standard_Transient & | operator= (const Standard_Transient &) |
Assignment operator, needed to avoid copying reference counter. | |
virtual | ~Standard_Transient () |
Destructor must be virtual. | |
virtual const opencascade::handle< Standard_Type > & | DynamicType () const |
Returns a type descriptor about this object. | |
Standard_Boolean | IsInstance (const opencascade::handle< Standard_Type > &theType) const |
Returns a true value if this is an instance of Type. | |
Standard_Boolean | IsInstance (const Standard_CString theTypeName) const |
Returns a true value if this is an instance of TypeName. | |
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. | |
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. | |
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. | |
Standard_Integer | GetRefCount () const noexcept |
Get the reference counter of this object. | |
void | IncrementRefCounter () noexcept |
Increments the reference counter of this object. | |
Standard_Integer | DecrementRefCounter () noexcept |
Decrements the reference counter of this object; returns the decremented value. | |
virtual void | Delete () const |
Memory deallocator for transient classes. | |
Additional Inherited Members | |
Public Types inherited from Standard_Transient | |
typedef void | base_type |
Returns a type descriptor about this object. | |
Static Public Member Functions inherited from Standard_Transient | |
static constexpr const char * | get_type_name () |
Returns a type descriptor about this object. | |
static const opencascade::handle< Standard_Type > & | get_type_descriptor () |
Returns type descriptor of Standard_Transient class. | |
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.