Open CASCADE Technology 6.6.0
Public Member Functions | Protected Member Functions | Protected Attributes
ShapeUpgrade_FaceDivide Class Reference

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>

Inheritance diagram for ShapeUpgrade_FaceDivide:
Inheritance graph
[legend]

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

Constructor & Destructor Documentation

ShapeUpgrade_FaceDivide::ShapeUpgrade_FaceDivide ( )
ShapeUpgrade_FaceDivide::ShapeUpgrade_FaceDivide ( const TopoDS_Face F)

Member Function Documentation

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

Field Documentation


The documentation for this class was generated from the following file:
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines