OCC Main Page | ModelingAlgorithms | Toolkits | Packages | Class Hierarchy | Data Structures | File List | Data Fields | Globals

ModelingAlgorithms
TKBool
TopOpeBRepBuild


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

Standard_EXPORT TopOpeBRepBuild_HBuilder (const TopOpeBRepDS_BuildTool &BT)
Standard_EXPORT const TopOpeBRepDS_BuildToolBuildTool () const
Standard_EXPORT void Perform (const Handle(TopOpeBRepDS_HDataStructure)&HDS)
 Stores the data structure <hds>,
Create shapes from the new geometries described in <hds>.
.
Standard_EXPORT 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.
.
Standard_EXPORT void Clear ()
 Removes all split and merge already performed.
Does NOT clear the handled DS.
.
Standard_EXPORT Handle_TopOpeBRepDS_HDataStructure DataStructure () const
 returns the DS handled by this builder

Standard_EXPORT TopOpeBRepDS_BuildToolChangeBuildTool ()
Standard_EXPORT 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>.
.
Standard_EXPORT 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>.
.
Standard_EXPORT void MergeSolid (const TopoDS_Shape &S, const TopAbs_State TB)
 Merges the solid <s> keeping the
parts of state <tb>.
.
Standard_EXPORT Standard_Boolean IsSplit (const TopoDS_Shape &S, const TopAbs_State ToBuild) const
 Returns True if the shape <s> has been split.
.
Standard_EXPORT const TopTools_ListOfShape & Splits (const TopoDS_Shape &S, const TopAbs_State ToBuild) const
 Returns the split parts <tobuild> of shape <s>.
.
Standard_EXPORT Standard_Boolean IsMerged (const TopoDS_Shape &S, const TopAbs_State ToBuild) const
 Returns True if the shape <s> has been merged.
.
Standard_EXPORT const TopTools_ListOfShape & Merged (const TopoDS_Shape &S, const TopAbs_State ToBuild) const
 Returns the merged parts <tobuild> of shape <s>.
.
Standard_EXPORT const TopoDS_Shape & NewVertex (const Standard_Integer I) const
 Returns the vertex created on point .
.

Standard_EXPORT const TopTools_ListOfShape & NewEdges (const Standard_Integer I) const
 Returns the edges created on curve .
.

Standard_EXPORT TopTools_ListOfShape & ChangeNewEdges (const Standard_Integer I)
 Returns the edges created on curve .
.

Standard_EXPORT const TopTools_ListOfShape & NewFaces (const Standard_Integer I) const
 Returns the faces created on surface .
.

Standard_EXPORT const TopTools_ListOfShape & Section ()
Standard_EXPORT void InitExtendedSectionDS (const Standard_Integer k=3)
Standard_EXPORT void InitSection (const Standard_Integer k=3)
Standard_EXPORT Standard_Boolean MoreSection () const
Standard_EXPORT void NextSection ()
Standard_EXPORT const TopoDS_Shape & CurrentSection () const
Standard_EXPORT Standard_Integer GetDSEdgeFromSectEdge (const TopoDS_Shape &E, const Standard_Integer rank)
Standard_EXPORT TColStd_ListOfInteger & GetDSFaceFromDSEdge (const Standard_Integer indexEdg, const Standard_Integer rank)
Standard_EXPORT Standard_Integer GetDSCurveFromSectEdge (const TopoDS_Shape &SectEdge)
Standard_EXPORT Standard_Integer GetDSFaceFromDSCurve (const Standard_Integer indexCur, const Standard_Integer rank)
Standard_EXPORT Standard_Integer GetDSPointFromNewVertex (const TopoDS_Shape &NewVert)
Standard_EXPORT 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_EXPORT 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_EXPORT Standard_Integer IsKPart ()
 Returns 0 is standard operation, != 0 if particular case
.
Standard_EXPORT void MergeKPart (const TopAbs_State TB1, const TopAbs_State TB2)
Standard_EXPORT TopOpeBRepBuild_BuilderChangeBuilder ()
Standard_EXPORT const Handle (Standard_Type)&DynamicType() const

Protected Attributes

TopOpeBRepBuild_Builder1 myBuilder

Private Member Functions

Standard_EXPORT void MakeEdgeAncestorMap ()
Standard_EXPORT void MakeCurveAncestorMap ()

Private Attributes

TopOpeBRepBuild_DataMapOfShapeInteger mySectEdgeDSEdges1
TopOpeBRepBuild_DataMapOfShapeInteger mySectEdgeDSEdges2
TColStd_DataMapOfIntegerListOfInteger myDSEdgesDSFaces1
TColStd_DataMapOfIntegerListOfInteger myDSEdgesDSFaces2
Standard_Boolean myMakeEdgeAncestorIsDone
TopOpeBRepBuild_DataMapOfShapeInteger mySectEdgeDSCurve
Standard_Boolean myMakeCurveAncestorIsDone
TopOpeBRepBuild_DataMapOfShapeInteger myNewVertexDSPoint
Standard_Boolean myMakePointAncestorIsDone
TopoDS_Shape myEmptyShape
TColStd_ListOfInteger myEmptyIntegerList

Constructor & Destructor Documentation

Standard_EXPORT TopOpeBRepBuild_HBuilder::TopOpeBRepBuild_HBuilder const TopOpeBRepDS_BuildTool BT  ) 
 


Member Function Documentation

Standard_EXPORT const TopOpeBRepDS_BuildTool& TopOpeBRepBuild_HBuilder::BuildTool  )  const
 

Standard_EXPORT TopOpeBRepBuild_Builder& TopOpeBRepBuild_HBuilder::ChangeBuilder  ) 
 

Standard_EXPORT TopOpeBRepDS_BuildTool& TopOpeBRepBuild_HBuilder::ChangeBuildTool  ) 
 

Standard_EXPORT TopTools_ListOfShape& TopOpeBRepBuild_HBuilder::ChangeNewEdges const Standard_Integer  I  ) 
 

Standard_EXPORT void TopOpeBRepBuild_HBuilder::Clear  ) 
 

Standard_EXPORT const TopoDS_Shape& TopOpeBRepBuild_HBuilder::CurrentSection  )  const
 

Standard_EXPORT Handle_TopOpeBRepDS_HDataStructure TopOpeBRepBuild_HBuilder::DataStructure  )  const
 

Standard_EXPORT Standard_Boolean TopOpeBRepBuild_HBuilder::EdgeCurveAncestors const TopoDS_Shape &  E,
TopoDS_Shape &  F1,
TopoDS_Shape &  F2,
Standard_Integer &  IC
 

Standard_EXPORT Standard_Boolean TopOpeBRepBuild_HBuilder::EdgeSectionAncestors const TopoDS_Shape &  E,
TopTools_ListOfShape &  LF1,
TopTools_ListOfShape &  LF2,
TopTools_ListOfShape &  LE1,
TopTools_ListOfShape &  LE2
 

Standard_EXPORT Standard_Integer TopOpeBRepBuild_HBuilder::GetDSCurveFromSectEdge const TopoDS_Shape &  SectEdge  ) 
 

Standard_EXPORT Standard_Integer TopOpeBRepBuild_HBuilder::GetDSEdgeFromSectEdge const TopoDS_Shape &  E,
const Standard_Integer  rank
 

Standard_EXPORT Standard_Integer TopOpeBRepBuild_HBuilder::GetDSFaceFromDSCurve const Standard_Integer  indexCur,
const Standard_Integer  rank
 

Standard_EXPORT TColStd_ListOfInteger& TopOpeBRepBuild_HBuilder::GetDSFaceFromDSEdge const Standard_Integer  indexEdg,
const Standard_Integer  rank
 

Standard_EXPORT Standard_Integer TopOpeBRepBuild_HBuilder::GetDSPointFromNewVertex const TopoDS_Shape &  NewVert  ) 
 

Standard_EXPORT const TopOpeBRepBuild_HBuilder::Handle Standard_Type   )  const
 

Reimplemented in LocOpe_HBuilder.

Standard_EXPORT void TopOpeBRepBuild_HBuilder::InitExtendedSectionDS const Standard_Integer  k = 3  ) 
 

Standard_EXPORT void TopOpeBRepBuild_HBuilder::InitSection const Standard_Integer  k = 3  ) 
 

Standard_EXPORT Standard_Integer TopOpeBRepBuild_HBuilder::IsKPart  ) 
 

Standard_EXPORT Standard_Boolean TopOpeBRepBuild_HBuilder::IsMerged const TopoDS_Shape &  S,
const TopAbs_State  ToBuild
const
 

Standard_EXPORT Standard_Boolean TopOpeBRepBuild_HBuilder::IsSplit const TopoDS_Shape &  S,
const TopAbs_State  ToBuild
const
 

Standard_EXPORT void TopOpeBRepBuild_HBuilder::MakeCurveAncestorMap  )  [private]
 

Standard_EXPORT void TopOpeBRepBuild_HBuilder::MakeEdgeAncestorMap  )  [private]
 

Standard_EXPORT const TopTools_ListOfShape& TopOpeBRepBuild_HBuilder::Merged const TopoDS_Shape &  S,
const TopAbs_State  ToBuild
const
 

Standard_EXPORT void TopOpeBRepBuild_HBuilder::MergeKPart const TopAbs_State  TB1,
const TopAbs_State  TB2
 

Standard_EXPORT void TopOpeBRepBuild_HBuilder::MergeShapes const TopoDS_Shape &  S1,
const TopAbs_State  TB1,
const TopoDS_Shape &  S2,
const TopAbs_State  TB2
 

Standard_EXPORT void TopOpeBRepBuild_HBuilder::MergeSolid const TopoDS_Shape &  S,
const TopAbs_State  TB
 

Standard_EXPORT void TopOpeBRepBuild_HBuilder::MergeSolids const TopoDS_Shape &  S1,
const TopAbs_State  TB1,
const TopoDS_Shape &  S2,
const TopAbs_State  TB2
 

Standard_EXPORT Standard_Boolean TopOpeBRepBuild_HBuilder::MoreSection  )  const
 

Standard_EXPORT const TopTools_ListOfShape& TopOpeBRepBuild_HBuilder::NewEdges const Standard_Integer  I  )  const
 

Standard_EXPORT const TopTools_ListOfShape& TopOpeBRepBuild_HBuilder::NewFaces const Standard_Integer  I  )  const
 

Standard_EXPORT const TopoDS_Shape& TopOpeBRepBuild_HBuilder::NewVertex const Standard_Integer  I  )  const
 

Standard_EXPORT void TopOpeBRepBuild_HBuilder::NextSection  ) 
 

Standard_EXPORT void TopOpeBRepBuild_HBuilder::Perform const Handle(TopOpeBRepDS_HDataStructure)&  HDS,
const TopoDS_Shape &  S1,
const TopoDS_Shape &  S2
 

Standard_EXPORT void TopOpeBRepBuild_HBuilder::Perform const Handle(TopOpeBRepDS_HDataStructure)&  HDS  ) 
 

Standard_EXPORT const TopTools_ListOfShape& TopOpeBRepBuild_HBuilder::Section  ) 
 

Standard_EXPORT const TopTools_ListOfShape& TopOpeBRepBuild_HBuilder::Splits const TopoDS_Shape &  S,
const TopAbs_State  ToBuild
const
 


Field Documentation

TopOpeBRepBuild_Builder1 TopOpeBRepBuild_HBuilder::myBuilder [protected]
 

TColStd_DataMapOfIntegerListOfInteger TopOpeBRepBuild_HBuilder::myDSEdgesDSFaces1 [private]
 

TColStd_DataMapOfIntegerListOfInteger TopOpeBRepBuild_HBuilder::myDSEdgesDSFaces2 [private]
 

TColStd_ListOfInteger TopOpeBRepBuild_HBuilder::myEmptyIntegerList [private]
 

TopoDS_Shape TopOpeBRepBuild_HBuilder::myEmptyShape [private]
 

Standard_Boolean TopOpeBRepBuild_HBuilder::myMakeCurveAncestorIsDone [private]
 

Standard_Boolean TopOpeBRepBuild_HBuilder::myMakeEdgeAncestorIsDone [private]
 

Standard_Boolean TopOpeBRepBuild_HBuilder::myMakePointAncestorIsDone [private]
 

TopOpeBRepBuild_DataMapOfShapeInteger TopOpeBRepBuild_HBuilder::myNewVertexDSPoint [private]
 

TopOpeBRepBuild_DataMapOfShapeInteger TopOpeBRepBuild_HBuilder::mySectEdgeDSCurve [private]
 

TopOpeBRepBuild_DataMapOfShapeInteger TopOpeBRepBuild_HBuilder::mySectEdgeDSEdges1 [private]
 

TopOpeBRepBuild_DataMapOfShapeInteger TopOpeBRepBuild_HBuilder::mySectEdgeDSEdges2 [private]
 


The documentation for this class was generated from the following file:
Generated on Mon Aug 25 13:42:57 2008 for OpenCASCADE by  doxygen 1.4.1