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

Divides edges in the wire lying on the face or free wires or
free edges with a criterion.
Splits 3D curve and pcurve(s) of the edge on the face.
Other pcurves which may be associated with the edge are simply
copied.
If 3D curve is splitted then pcurve on the face is splitted as
well, and wice-versa.
Input shape is not modified.
The modifications made are recorded in external context
(ShapeBuild_ReShape). This tool is applied to all edges
before splitting them in order to keep sharing.

#include <ShapeUpgrade_WireDivide.hxx>

Inheritance diagram for ShapeUpgrade_WireDivide:
Inheritance graph
[legend]

Public Member Functions

 ShapeUpgrade_WireDivide ()
 Empty constructor

void Init (const TopoDS_Wire &W, const TopoDS_Face &F)
 Initializes by wire and face

void Init (const TopoDS_Wire &W, const Handle< Geom_Surface > &S)
 Initializes by wire and surface

void Load (const TopoDS_Wire &W)
 Loads working wire

void Load (const TopoDS_Edge &E)
 Creates wire of one edge and calls Load for wire

void SetFace (const TopoDS_Face &F)
 Sets supporting surface by face

void SetSurface (const Handle< Geom_Surface > &S)
 Sets supporting surface

void SetSurface (const Handle< Geom_Surface > &S, const TopLoc_Location &L)
 Sets supporting surface with location

virtual void Perform ()
 Computes the resulting wire by splitting all the edges
according to splitting criteria.
All the modifications made are recorded in context
(ShapeBuild_ReShape). This tool is applied to all edges
before splitting them in order to keep sharings.
If no supporting face or surface is defined, only 3d
splitting criteria are used.

const TopoDS_WireWire () const
 Gives the resulting Wire (equal to initial one if not done
or Null if not loaded)

Standard_Boolean Status (const ShapeExtend_Status status) const
 Queries status of last call to Perform()
OK - no edges were splitted, wire left untouched
DONE1 - some edges were splitted
FAIL1 - some edges have no 3d curve (skipped)
FAIL2 - some edges have no pcurve (skipped)

void SetSplitCurve3dTool (const Handle< ShapeUpgrade_SplitCurve3d > &splitCurve3dTool)
 Sets the tool for splitting 3D curves.

void SetSplitCurve2dTool (const Handle< ShapeUpgrade_SplitCurve2d > &splitCurve2dTool)
 Sets the tool for splitting pcurves.

void SetTransferParamTool (const Handle< ShapeAnalysis_TransferParameters > &TransferParam)
 Sets the tool for Transfer parameters between curves and pcurves.

void SetEdgeDivideTool (const Handle< ShapeUpgrade_EdgeDivide > &edgeDivideTool)
 Sets tool for splitting edge

virtual
Handle_ShapeUpgrade_EdgeDivide 
GetEdgeDivideTool () const
 returns tool for splitting edges

virtual
Handle_ShapeAnalysis_TransferParameters 
GetTransferParamTool ()
 Returns the tool for Transfer of parameters.

void SetEdgeMode (const Standard_Integer EdgeMode)
 Sets mode for splitting 3d curves from edges.
0 - only curve 3d from free edges.
1 - only curve 3d from shared edges.
2 - all curve 3d.

void SetFixSmallCurveTool (const Handle< ShapeUpgrade_FixSmallCurves > &FixSmallCurvesTool)
 Sets tool for fixing small curves with specified min tolerance;

Handle_ShapeUpgrade_FixSmallCurves GetFixSmallCurveTool () const
 Returns tool for fixing small curves

Protected Member Functions

virtual
Handle_ShapeUpgrade_SplitCurve3d 
GetSplitCurve3dTool () const
 Returns the tool for splitting 3D curves.

virtual
Handle_ShapeUpgrade_SplitCurve2d 
GetSplitCurve2dTool () const
 Returns the tool for splitting pcurves.

Protected Attributes

TopoDS_Face myFace
TopoDS_Wire myWire
Standard_Integer myStatus
Standard_Integer myEdgeMode

Constructor & Destructor Documentation

ShapeUpgrade_WireDivide::ShapeUpgrade_WireDivide ( )

Member Function Documentation

virtual Handle_ShapeUpgrade_EdgeDivide ShapeUpgrade_WireDivide::GetEdgeDivideTool ( ) const [virtual]
Handle_ShapeUpgrade_FixSmallCurves ShapeUpgrade_WireDivide::GetFixSmallCurveTool ( ) const
virtual Handle_ShapeUpgrade_SplitCurve2d ShapeUpgrade_WireDivide::GetSplitCurve2dTool ( ) const [protected, virtual]
virtual Handle_ShapeUpgrade_SplitCurve3d ShapeUpgrade_WireDivide::GetSplitCurve3dTool ( ) const [protected, virtual]
virtual Handle_ShapeAnalysis_TransferParameters ShapeUpgrade_WireDivide::GetTransferParamTool ( ) [virtual]
void ShapeUpgrade_WireDivide::Init ( const TopoDS_Wire W,
const Handle< Geom_Surface > &  S 
)
void ShapeUpgrade_WireDivide::Init ( const TopoDS_Wire W,
const TopoDS_Face F 
)
void ShapeUpgrade_WireDivide::Load ( const TopoDS_Edge E)
void ShapeUpgrade_WireDivide::Load ( const TopoDS_Wire W)
virtual void ShapeUpgrade_WireDivide::Perform ( ) [virtual]
void ShapeUpgrade_WireDivide::SetEdgeDivideTool ( const Handle< ShapeUpgrade_EdgeDivide > &  edgeDivideTool)
void ShapeUpgrade_WireDivide::SetEdgeMode ( const Standard_Integer  EdgeMode)
void ShapeUpgrade_WireDivide::SetFace ( const TopoDS_Face F)
void ShapeUpgrade_WireDivide::SetFixSmallCurveTool ( const Handle< ShapeUpgrade_FixSmallCurves > &  FixSmallCurvesTool)
void ShapeUpgrade_WireDivide::SetSplitCurve2dTool ( const Handle< ShapeUpgrade_SplitCurve2d > &  splitCurve2dTool)
void ShapeUpgrade_WireDivide::SetSplitCurve3dTool ( const Handle< ShapeUpgrade_SplitCurve3d > &  splitCurve3dTool)
void ShapeUpgrade_WireDivide::SetSurface ( const Handle< Geom_Surface > &  S,
const TopLoc_Location L 
)
void ShapeUpgrade_WireDivide::SetSurface ( const Handle< Geom_Surface > &  S)
void ShapeUpgrade_WireDivide::SetTransferParamTool ( const Handle< ShapeAnalysis_TransferParameters > &  TransferParam)
Standard_Boolean ShapeUpgrade_WireDivide::Status ( const ShapeExtend_Status  status) const
const TopoDS_Wire& ShapeUpgrade_WireDivide::Wire ( ) 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