Open CASCADE Technology  6.5.4
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Public Member Functions | Protected Attributes
TopOpeBRepBuild_HBuilder Class Reference

The HBuilder algorithm constructs topological
objects from an existing topology and new
geometries attached to the topology. It is used to
construct the result of a topological operation;
the existing topologies are the parts involved in
the topological operation and the new geometries
are the intersection lines and points.

#include <TopOpeBRepBuild_HBuilder.hxx>

Inheritance diagram for TopOpeBRepBuild_HBuilder:
Inheritance graph
[legend]

Public Member Functions

 TopOpeBRepBuild_HBuilder (const TopOpeBRepDS_BuildTool &BT)
const TopOpeBRepDS_BuildToolBuildTool () const
void Perform (const Handle< TopOpeBRepDS_HDataStructure > &HDS)
 Stores the data structure <HDS>,
Create shapes from the new geometries described in <HDS>.

void Perform (const Handle< TopOpeBRepDS_HDataStructure > &HDS, const TopoDS_Shape &S1, const TopoDS_Shape &S2)
 Same as previous + evaluates if an operation performed on shapes S1,S2
is a particular case.

void Clear ()
 Removes all split and merge already performed.
Does NOT clear the handled DS.

Handle_TopOpeBRepDS_HDataStructure DataStructure () const
 returns the DS handled by this builder

TopOpeBRepDS_BuildToolChangeBuildTool ()
void MergeShapes (const TopoDS_Shape &S1, const TopAbs_State TB1, const TopoDS_Shape &S2, const TopAbs_State TB2)
 Merges the two shapes <S1> and <S2> keeping the
parts of states <TB1>,<TB2> in <S1>,<S2>.

void MergeSolids (const TopoDS_Shape &S1, const TopAbs_State TB1, const TopoDS_Shape &S2, const TopAbs_State TB2)
 Merges the two solids <S1> and <S2> keeping the
parts in each solid of states <TB1> and <TB2>.

void MergeSolid (const TopoDS_Shape &S, const TopAbs_State TB)
 Merges the solid <S> keeping the
parts of state <TB>.

Standard_Boolean IsSplit (const TopoDS_Shape &S, const TopAbs_State ToBuild) const
 Returns True if the shape <S> has been split.

const TopTools_ListOfShapeSplits (const TopoDS_Shape &S, const TopAbs_State ToBuild) const
 Returns the split parts <ToBuild> of shape <S>.

Standard_Boolean IsMerged (const TopoDS_Shape &S, const TopAbs_State ToBuild) const
 Returns True if the shape <S> has been merged.

const TopTools_ListOfShapeMerged (const TopoDS_Shape &S, const TopAbs_State ToBuild) const
 Returns the merged parts <ToBuild> of shape <S>.

const TopoDS_ShapeNewVertex (const Standard_Integer I) const
 Returns the vertex created on point .

const TopTools_ListOfShapeNewEdges (const Standard_Integer I) const
 Returns the edges created on curve .

TopTools_ListOfShapeChangeNewEdges (const Standard_Integer I)
 Returns the edges created on curve .

const TopTools_ListOfShapeNewFaces (const Standard_Integer I) const
 Returns the faces created on surface .

const TopTools_ListOfShapeSection ()
void InitExtendedSectionDS (const Standard_Integer k=3)
void InitSection (const Standard_Integer k=3)
Standard_Boolean MoreSection () const
void NextSection ()
const TopoDS_ShapeCurrentSection () const
Standard_Integer GetDSEdgeFromSectEdge (const TopoDS_Shape &E, const Standard_Integer rank)
TColStd_ListOfIntegerGetDSFaceFromDSEdge (const Standard_Integer indexEdg, const Standard_Integer rank)
Standard_Integer GetDSCurveFromSectEdge (const TopoDS_Shape &SectEdge)
Standard_Integer GetDSFaceFromDSCurve (const Standard_Integer indexCur, const Standard_Integer rank)
Standard_Integer GetDSPointFromNewVertex (const TopoDS_Shape &NewVert)
Standard_Boolean EdgeCurveAncestors (const TopoDS_Shape &E, TopoDS_Shape &F1, TopoDS_Shape &F2, Standard_Integer &IC)
 search for the couple of face F1,F2
(from arguments of supra Perform(S1,S2,HDS)) method which
intersection gives section edge E built on an intersection curve.
returns True if F1,F2 have been valued.
returns False if E is not a section edge built
on intersection curve IC.

Standard_Boolean EdgeSectionAncestors (const TopoDS_Shape &E, TopTools_ListOfShape &LF1, TopTools_ListOfShape &LF2, TopTools_ListOfShape &LE1, TopTools_ListOfShape &LE2)
 search for the couple of face F1,F2
(from arguments of supra Perform(S1,S2,HDS)) method which
intersection gives section edge E built on at least one edge .
returns True if F1,F2 have been valued.
returns False if E is not a section edge built
on at least one edge of S1 and/or S2.
LE1,LE2 are edges of S1,S2 which common part is edge E.
LE1 or LE2 may be empty() but not both.

Standard_Integer IsKPart ()
 Returns 0 is standard operation, != 0 if particular case

void MergeKPart (const TopAbs_State TB1, const TopAbs_State TB2)
TopOpeBRepBuild_BuilderChangeBuilder ()

Protected Attributes

TopOpeBRepBuild_Builder1 myBuilder

Constructor & Destructor Documentation


Member Function Documentation

Handle_TopOpeBRepDS_HDataStructure TopOpeBRepBuild_HBuilder::DataStructure ( ) const

Field Documentation


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