![]() |
Open CASCADE Technology Reference Manual 8.0.0
|
Divides a Face (both edges in the wires, by splitting curves and pcurves, and the face itself, by splitting supporting surface) according to splitting criteria. More...
#include <ShapeUpgrade_FaceDivide.hxx>

Public Member Functions | |
| ShapeUpgrade_FaceDivide () | |
| Creates empty constructor. | |
| ShapeUpgrade_FaceDivide (const TopoDS_Face &F) | |
| Initialize by a Face. | |
| void | Init (const TopoDS_Face &F) |
| Initialize by a Face. | |
| void | SetSurfaceSegmentMode (const bool Segment) |
| Purpose sets mode for trimming (segment) surface by wire UV bounds. | |
| virtual bool | Perform (const double theArea=0.) |
| Performs splitting and computes the resulting shell The context is used to keep track of former splittings in order to keep sharings. It is updated according to modifications made. The optional argument <theArea> is used to initialize the tool for splitting surface in the case of splitting into N parts where N is user-defined. | |
| virtual bool | SplitSurface (const double theArea=0.) |
| Performs splitting of surface and computes the shell from source face. The optional argument <theArea> is used to initialize the tool for splitting surface in the case of splitting into N parts where N is user-defined. | |
| virtual bool | SplitCurves () |
| Performs splitting of curves of all the edges in the shape and divides these edges. | |
| TopoDS_Shape | Result () const |
| Gives the resulting Shell, or Face, or Null shape if not done. | |
| bool | Status (const ShapeExtend_Status status) const |
| Queries the status of last call to Perform OK : no splitting was done (or no call to Perform) DONE1: some edges were split DONE2: surface was split DONE3: surface was modified without splitting FAIL1: some fails encountered during splitting wires FAIL2: face cannot be split. | |
| void | SetSplitSurfaceTool (const occ::handle< ShapeUpgrade_SplitSurface > &splitSurfaceTool) |
| Sets the tool for splitting surfaces. | |
| void | SetWireDivideTool (const occ::handle< ShapeUpgrade_WireDivide > &wireDivideTool) |
| Sets the tool for dividing edges on Face. | |
| virtual occ::handle< ShapeUpgrade_SplitSurface > | GetSplitSurfaceTool () const |
| Returns the tool for splitting surfaces. This tool must be already initialized. | |
| virtual occ::handle< ShapeUpgrade_WireDivide > | GetWireDivideTool () const |
| Returns the tool for dividing edges on Face. This tool must be already initialized. | |
Public Member Functions inherited from ShapeUpgrade_Tool | |
| ShapeUpgrade_Tool () | |
| Empty constructor. | |
| void | Set (const occ::handle< ShapeUpgrade_Tool > &tool) |
| Copy all fields from another Root object. | |
| void | SetContext (const occ::handle< ShapeBuild_ReShape > &context) |
| Sets context. | |
| occ::handle< ShapeBuild_ReShape > | Context () const |
| Returns context. | |
| void | SetPrecision (const double preci) |
| Sets basic precision value. | |
| double | Precision () const |
| Returns basic precision value. | |
| void | SetMinTolerance (const double mintol) |
| Sets minimal allowed tolerance. | |
| double | MinTolerance () const |
| Returns minimal allowed tolerance. | |
| void | SetMaxTolerance (const double maxtol) |
| Sets maximal allowed tolerance. | |
| double | MaxTolerance () const |
| Returns maximal allowed tolerance. | |
| double | LimitTolerance (const double toler) const |
| Returns tolerance limited by [myMinTol,myMaxTol]. | |
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 ()=default |
| Destructor must be virtual. | |
| virtual const opencascade::handle< Standard_Type > & | DynamicType () const |
| Returns a type descriptor about this object. | |
| bool | IsInstance (const opencascade::handle< Standard_Type > &theType) const |
| Returns a true value if this is an instance of Type. | |
| bool | IsInstance (const char *const theTypeName) const |
| Returns a true value if this is an instance of TypeName. | |
| bool | 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. | |
| bool | IsKind (const char *const 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. | |
| int | GetRefCount () const noexcept |
| Get the reference counter of this object. | |
| void | IncrementRefCounter () noexcept |
| Increments the reference counter of this object. Uses relaxed memory ordering since incrementing only requires atomicity, not synchronization with other memory operations. | |
| int | DecrementRefCounter () noexcept |
| Decrements the reference counter of this object; returns the decremented value. Uses release ordering for the decrement to ensure all writes to the object are visible before the count reaches zero. An acquire fence is added only when the count reaches zero, ensuring proper synchronization before deletion. This is more efficient than using acq_rel for every decrement. | |
| virtual void | Delete () const |
| Memory deallocator for transient classes. | |
Protected Attributes | |
| TopoDS_Face | myFace |
| TopoDS_Shape | myResult |
| bool | mySegmentMode |
| int | myStatus |
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. | |
Divides a Face (both edges in the wires, by splitting curves and pcurves, and the face itself, by splitting supporting surface) according to splitting criteria.
The result is available after the call to the Build method. It is a Shell containing all the resulting Faces.
All the modifications made during splitting are recorded in the external context (ShapeBuild_ReShape).
| ShapeUpgrade_FaceDivide::ShapeUpgrade_FaceDivide | ( | ) |
Creates empty constructor.
| ShapeUpgrade_FaceDivide::ShapeUpgrade_FaceDivide | ( | const TopoDS_Face & | F | ) |
Initialize by a Face.
|
virtual |
Returns the tool for splitting surfaces. This tool must be already initialized.
|
virtual |
Returns the tool for dividing edges on Face. This tool must be already initialized.
| void ShapeUpgrade_FaceDivide::Init | ( | const TopoDS_Face & | F | ) |
Initialize by a Face.
Performs splitting and computes the resulting shell The context is used to keep track of former splittings in order to keep sharings. It is updated according to modifications made. The optional argument <theArea> is used to initialize the tool for splitting surface in the case of splitting into N parts where N is user-defined.
Reimplemented in ShapeUpgrade_FaceDivideArea.
| TopoDS_Shape ShapeUpgrade_FaceDivide::Result | ( | ) | const |
Gives the resulting Shell, or Face, or Null shape if not done.
| void ShapeUpgrade_FaceDivide::SetSplitSurfaceTool | ( | const occ::handle< ShapeUpgrade_SplitSurface > & | splitSurfaceTool | ) |
Sets the tool for splitting surfaces.
Purpose sets mode for trimming (segment) surface by wire UV bounds.
| void ShapeUpgrade_FaceDivide::SetWireDivideTool | ( | const occ::handle< ShapeUpgrade_WireDivide > & | wireDivideTool | ) |
Sets the tool for dividing edges on Face.
Performs splitting of curves of all the edges in the shape and divides these edges.
Performs splitting of surface and computes the shell from source face. The optional argument <theArea> is used to initialize the tool for splitting surface in the case of splitting into N parts where N is user-defined.
Reimplemented in ShapeUpgrade_ClosedFaceDivide.
| bool ShapeUpgrade_FaceDivide::Status | ( | const ShapeExtend_Status | status | ) | const |
Queries the status of last call to Perform OK : no splitting was done (or no call to Perform) DONE1: some edges were split DONE2: surface was split DONE3: surface was modified without splitting FAIL1: some fails encountered during splitting wires FAIL2: face cannot be split.
|
protected |
|
protected |
|
protected |
|
protected |