Open CASCADE Technology 6.6.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.
* The domain of the face to divide is defined by the PCurves
of the wires on the Face.
* all the PCurves are supposed to be defined (in the parametric
space of the supporting surface).
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).
#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 Standard_Boolean Segment) |
Purpose sets mode for trimming (segment) surface by wire UV bounds. | |
virtual Standard_Boolean | Perform () |
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. | |
virtual Standard_Boolean | SplitSurface () |
Performs splitting of surface and computes the shell from source face. | |
virtual Standard_Boolean | 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. | |
Standard_Boolean | 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 splitted DONE2: surface was splitted DONE3: surface was modified without splitting FAIL1: some fails encountered during splitting wires FAIL2: face cannot be splitted | |
void | SetSplitSurfaceTool (const Handle< ShapeUpgrade_SplitSurface > &splitSurfaceTool) |
Sets the tool for splitting surfaces. | |
void | SetWireDivideTool (const Handle< ShapeUpgrade_WireDivide > &wireDivideTool) |
Sets the tool for dividing edges on Face. | |
virtual Handle_ShapeUpgrade_WireDivide | GetWireDivideTool () const |
Returns the tool for dividing edges on Face. This tool must be already initialized. | |
Protected Member Functions | |
virtual Handle_ShapeUpgrade_SplitSurface | GetSplitSurfaceTool () const |
Returns the tool for splitting surfaces. This tool must be already initialized. | |
Protected Attributes | |
TopoDS_Face | myFace |
TopoDS_Shape | myResult |
Standard_Boolean | mySegmentMode |
Standard_Integer | myStatus |
ShapeUpgrade_FaceDivide::ShapeUpgrade_FaceDivide | ( | ) |
ShapeUpgrade_FaceDivide::ShapeUpgrade_FaceDivide | ( | const TopoDS_Face & | F | ) |
virtual Handle_ShapeUpgrade_SplitSurface ShapeUpgrade_FaceDivide::GetSplitSurfaceTool | ( | ) | const [protected, virtual] |
virtual Handle_ShapeUpgrade_WireDivide ShapeUpgrade_FaceDivide::GetWireDivideTool | ( | ) | const [virtual] |
void ShapeUpgrade_FaceDivide::Init | ( | const TopoDS_Face & | F | ) |
virtual Standard_Boolean ShapeUpgrade_FaceDivide::Perform | ( | ) | [virtual] |
Reimplemented in ShapeUpgrade_FaceDivideArea.
TopoDS_Shape ShapeUpgrade_FaceDivide::Result | ( | ) | const |
void ShapeUpgrade_FaceDivide::SetSplitSurfaceTool | ( | const Handle< ShapeUpgrade_SplitSurface > & | splitSurfaceTool | ) |
void ShapeUpgrade_FaceDivide::SetSurfaceSegmentMode | ( | const Standard_Boolean | Segment | ) |
void ShapeUpgrade_FaceDivide::SetWireDivideTool | ( | const Handle< ShapeUpgrade_WireDivide > & | wireDivideTool | ) |
virtual Standard_Boolean ShapeUpgrade_FaceDivide::SplitCurves | ( | ) | [virtual] |
virtual Standard_Boolean ShapeUpgrade_FaceDivide::SplitSurface | ( | ) | [virtual] |
Reimplemented in ShapeUpgrade_ClosedFaceDivide.
Standard_Boolean ShapeUpgrade_FaceDivide::Status | ( | const ShapeExtend_Status | status | ) | const |
TopoDS_Face ShapeUpgrade_FaceDivide::myFace [protected] |
TopoDS_Shape ShapeUpgrade_FaceDivide::myResult [protected] |
Standard_Integer ShapeUpgrade_FaceDivide::myStatus [protected] |