Open CASCADE Technology  6.9.0
Public Member Functions | Protected Attributes

ShapeUpgrade_SplitSurface Class Reference

Splits a Surface with a criterion. More...

#include <ShapeUpgrade_SplitSurface.hxx>

Inheritance diagram for ShapeUpgrade_SplitSurface:
Inheritance graph
[legend]

Public Member Functions

 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)
 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...
 
virtual void Compute (const Standard_Boolean Segment=Standard_True)
 Calculates points for correction/splitting of the surface. 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 MMgt_TShared
virtual void Delete () const
 Memory deallocator for transient classes. More...
 
- Public Member Functions inherited from Standard_Transient
 Standard_Transient ()
 Empty constructor. More...
 
 Standard_Transient (const Standard_Transient &)
 Copy constructor – does nothing. More...
 
Standard_Transientoperator= (const Standard_Transient &)
 Assignment operator, needed to avoid copying reference counter. More...
 
virtual ~Standard_Transient ()
 Destructor must be virtual. More...
 
virtual const
Handle_Standard_Type & 
DynamicType () const
 Returns a type information object about this object. More...
 
Standard_Boolean IsInstance (const 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 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...
 
virtual Handle_Standard_Transient This () const
 Returns a Handle which references this object. Must never be called to objects created in stack. More...
 
Standard_Integer GetRefCount () const
 Get the reference counter of this object. More...
 

Protected Attributes

Handle< TColStd_HSequenceOfRealmyUSplitValues
 
Handle< TColStd_HSequenceOfRealmyVSplitValues
 
Standard_Integer myNbResultingRow
 
Standard_Integer myNbResultingCol
 
Handle< Geom_SurfacemySurface
 
Standard_Integer myStatus
 
Handle
< ShapeExtend_CompositeSurface
myResSurfaces
 

Detailed Description

Splits a Surface with a criterion.

Constructor & Destructor Documentation

ShapeUpgrade_SplitSurface::ShapeUpgrade_SplitSurface ( )

Empty constructor.

Member Function Documentation

virtual void ShapeUpgrade_SplitSurface::Build ( const Standard_Boolean  Segment)
virtual

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.

Reimplemented in ShapeUpgrade_ConvertSurfaceToBezierBasis.

virtual void ShapeUpgrade_SplitSurface::Compute ( const Standard_Boolean  Segment = Standard_True)
virtual
void ShapeUpgrade_SplitSurface::Init ( const Handle< Geom_Surface > &  S)

Initializes with single supporting surface.

void ShapeUpgrade_SplitSurface::Init ( const Handle< Geom_Surface > &  S,
const Standard_Real  UFirst,
const Standard_Real  ULast,
const Standard_Real  VFirst,
const Standard_Real  VLast 
)

Initializes with single supporting surface with bounding parameters.

void ShapeUpgrade_SplitSurface::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< ShapeExtend_CompositeSurface >& ShapeUpgrade_SplitSurface::ResSurfaces ( ) const

Returns obtained surfaces after splitting as CompositeSurface.

void ShapeUpgrade_SplitSurface::SetUSplitValues ( const Handle< TColStd_HSequenceOfReal > &  UValues)

Sets U parameters where splitting has to be done.

void ShapeUpgrade_SplitSurface::SetVSplitValues ( const Handle< TColStd_HSequenceOfReal > &  VValues)

Sets V parameters where splitting has to be done.

Standard_Boolean ShapeUpgrade_SplitSurface::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< TColStd_HSequenceOfReal >& ShapeUpgrade_SplitSurface::USplitValues ( ) const

returns all the U splitting values including the First and Last parameters of the input surface

const Handle< TColStd_HSequenceOfReal >& ShapeUpgrade_SplitSurface::VSplitValues ( ) const

returns all the splitting V values including the First and Last parameters of the input surface

Field Documentation

Standard_Integer ShapeUpgrade_SplitSurface::myNbResultingCol
protected
Standard_Integer ShapeUpgrade_SplitSurface::myNbResultingRow
protected
Handle< ShapeExtend_CompositeSurface > ShapeUpgrade_SplitSurface::myResSurfaces
protected
Standard_Integer ShapeUpgrade_SplitSurface::myStatus
protected
Handle< Geom_Surface > ShapeUpgrade_SplitSurface::mySurface
protected
Handle< TColStd_HSequenceOfReal > ShapeUpgrade_SplitSurface::myUSplitValues
protected
Handle< TColStd_HSequenceOfReal > ShapeUpgrade_SplitSurface::myVSplitValues
protected

The documentation for this class was generated from the following file: