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

ModelingAlgorithms
TKBool
TopOpeBRep


TopOpeBRep_FacesIntersector Class Reference

#include <TopOpeBRep_FacesIntersector.hxx>


Public Member Functions

void * operator new (size_t, void *anAddress)
void * operator new (size_t size)
void operator delete (void *anAddress)
Standard_EXPORT TopOpeBRep_FacesIntersector ()
Standard_EXPORT void Perform (const TopoDS_Shape &S1, const TopoDS_Shape &S2)
 Computes the intersection of faces S1 and S2.
.
Standard_EXPORT void Perform (const TopoDS_Shape &S1, const TopoDS_Shape &S2, const Bnd_Box &B1, const Bnd_Box &B2)
 Computes the intersection of faces S1 and S2.
.
Standard_EXPORT Standard_Boolean IsEmpty ()
Standard_EXPORT Standard_Boolean IsDone () const
Standard_EXPORT Standard_Boolean SameDomain () const
 Returns True if Perform() arguments are two faces with the
same surface.
.
Standard_EXPORT const TopoDS_Shape & Face (const Standard_Integer Index) const
 returns first or second intersected face.

Standard_EXPORT Standard_Boolean SurfacesSameOriented () const
 Returns True if Perform() arguments are two faces
SameDomain() and normals on both side.
Raise if SameDomain is False
.
Standard_EXPORT Standard_Boolean IsRestriction (const TopoDS_Shape &E) const
 returns true if edge <e> is found as same as the edge
associated with a RESTRICTION line.

Standard_EXPORT const TopTools_IndexedMapOfShape & Restrictions () const
 returns the map of edges found as TopeBRepBRep_RESTRICTION

Standard_EXPORT void PrepareLines ()
Standard_EXPORT Handle_TopOpeBRep_HArray1OfLineInter Lines ()
Standard_EXPORT Standard_Integer NbLines () const
Standard_EXPORT void InitLine ()
Standard_EXPORT Standard_Boolean MoreLine () const
Standard_EXPORT void NextLine ()
Standard_EXPORT TopOpeBRep_LineInterCurrentLine ()
Standard_EXPORT Standard_Integer CurrentLineIndex () const
Standard_EXPORT TopOpeBRep_LineInterChangeLine (const Standard_Integer IL)
Standard_EXPORT void ForceTolerances (const Standard_Real tolarc, const Standard_Real toltang)
 Force the tolerance values used by the next Perform(S1,S2) call.
.
Standard_EXPORT void GetTolerances (Standard_Real &tolarc, Standard_Real &toltang) const
 Return the tolerance values used in the last Perform() call
If ForceTolerances() has been called, return the given values.
If not, return values extracted from shapes.
.

Private Member Functions

Standard_EXPORT void FindLine ()
Standard_EXPORT void ResetIntersection ()
Standard_EXPORT void ShapeTolerances (const TopoDS_Shape &S1, const TopoDS_Shape &S2)
 extract tolerance values from shapes <s1>,<s2>,
in order to perform intersection between <s1> and <s2>
with tolerance values "fitting" the shape tolerances.
(called by Perform() by default, when ForceTolerances() has not
been called)

Standard_EXPORT Standard_Real ToleranceMax (const TopoDS_Shape &S, const TopAbs_ShapeEnum T) const
 returns the max tolerance of sub-shapes of type <t>
found in shape <s>. If no such sub-shape found, return
Precision::Intersection()
(called by ShapeTolerances())


Private Attributes

IntPatch_Intersection myIntersector
Standard_Boolean myIntersectionDone
Standard_Real myTol1
Standard_Real myTol2
Standard_Boolean myForceTolerances
Handle_TopOpeBRep_HArray1OfLineInter myHAL
TopOpeBRep_LineInter myLine
Standard_Integer myLineIndex
Standard_Boolean myLineFound
Standard_Integer myLineNb
TopoDS_Face myFace1
TopoDS_Face myFace2
Handle_BRepAdaptor_HSurface mySurface1
Handle_BRepAdaptor_HSurface mySurface2
GeomAbs_SurfaceType mySurfaceType1
GeomAbs_SurfaceType mySurfaceType2
Standard_Boolean mySurfacesSameOriented
Handle_BRepTopAdaptor_TopolTool myDomain1
Handle_BRepTopAdaptor_TopolTool myDomain2
TopTools_IndexedMapOfShape myEdgeRestrictionMap
TopoDS_Shape myNullShape


Constructor & Destructor Documentation

Standard_EXPORT TopOpeBRep_FacesIntersector::TopOpeBRep_FacesIntersector  ) 
 


Member Function Documentation

Standard_EXPORT TopOpeBRep_LineInter& TopOpeBRep_FacesIntersector::ChangeLine const Standard_Integer  IL  ) 
 

Standard_EXPORT TopOpeBRep_LineInter& TopOpeBRep_FacesIntersector::CurrentLine  ) 
 

Standard_EXPORT Standard_Integer TopOpeBRep_FacesIntersector::CurrentLineIndex  )  const
 

Standard_EXPORT const TopoDS_Shape& TopOpeBRep_FacesIntersector::Face const Standard_Integer  Index  )  const
 

Standard_EXPORT void TopOpeBRep_FacesIntersector::FindLine  )  [private]
 

Standard_EXPORT void TopOpeBRep_FacesIntersector::ForceTolerances const Standard_Real  tolarc,
const Standard_Real  toltang
 

Standard_EXPORT void TopOpeBRep_FacesIntersector::GetTolerances Standard_Real &  tolarc,
Standard_Real &  toltang
const
 

Standard_EXPORT void TopOpeBRep_FacesIntersector::InitLine  ) 
 

Standard_EXPORT Standard_Boolean TopOpeBRep_FacesIntersector::IsDone  )  const
 

Standard_EXPORT Standard_Boolean TopOpeBRep_FacesIntersector::IsEmpty  ) 
 

Standard_EXPORT Standard_Boolean TopOpeBRep_FacesIntersector::IsRestriction const TopoDS_Shape &  E  )  const
 

Standard_EXPORT Handle_TopOpeBRep_HArray1OfLineInter TopOpeBRep_FacesIntersector::Lines  ) 
 

Standard_EXPORT Standard_Boolean TopOpeBRep_FacesIntersector::MoreLine  )  const
 

Standard_EXPORT Standard_Integer TopOpeBRep_FacesIntersector::NbLines  )  const
 

Standard_EXPORT void TopOpeBRep_FacesIntersector::NextLine  ) 
 

void TopOpeBRep_FacesIntersector::operator delete void *  anAddress  )  [inline]
 

void* TopOpeBRep_FacesIntersector::operator new size_t  size  )  [inline]
 

void* TopOpeBRep_FacesIntersector::operator new size_t  ,
void *  anAddress
[inline]
 

Standard_EXPORT void TopOpeBRep_FacesIntersector::Perform const TopoDS_Shape &  S1,
const TopoDS_Shape &  S2,
const Bnd_Box &  B1,
const Bnd_Box &  B2
 

Standard_EXPORT void TopOpeBRep_FacesIntersector::Perform const TopoDS_Shape &  S1,
const TopoDS_Shape &  S2
 

Standard_EXPORT void TopOpeBRep_FacesIntersector::PrepareLines  ) 
 

Standard_EXPORT void TopOpeBRep_FacesIntersector::ResetIntersection  )  [private]
 

Standard_EXPORT const TopTools_IndexedMapOfShape& TopOpeBRep_FacesIntersector::Restrictions  )  const
 

Standard_EXPORT Standard_Boolean TopOpeBRep_FacesIntersector::SameDomain  )  const
 

Standard_EXPORT void TopOpeBRep_FacesIntersector::ShapeTolerances const TopoDS_Shape &  S1,
const TopoDS_Shape &  S2
[private]
 

Standard_EXPORT Standard_Boolean TopOpeBRep_FacesIntersector::SurfacesSameOriented  )  const
 

Standard_EXPORT Standard_Real TopOpeBRep_FacesIntersector::ToleranceMax const TopoDS_Shape &  S,
const TopAbs_ShapeEnum  T
const [private]
 


Field Documentation

Handle_BRepTopAdaptor_TopolTool TopOpeBRep_FacesIntersector::myDomain1 [private]
 

Handle_BRepTopAdaptor_TopolTool TopOpeBRep_FacesIntersector::myDomain2 [private]
 

TopTools_IndexedMapOfShape TopOpeBRep_FacesIntersector::myEdgeRestrictionMap [private]
 

TopoDS_Face TopOpeBRep_FacesIntersector::myFace1 [private]
 

TopoDS_Face TopOpeBRep_FacesIntersector::myFace2 [private]
 

Standard_Boolean TopOpeBRep_FacesIntersector::myForceTolerances [private]
 

Handle_TopOpeBRep_HArray1OfLineInter TopOpeBRep_FacesIntersector::myHAL [private]
 

Standard_Boolean TopOpeBRep_FacesIntersector::myIntersectionDone [private]
 

IntPatch_Intersection TopOpeBRep_FacesIntersector::myIntersector [private]
 

TopOpeBRep_LineInter TopOpeBRep_FacesIntersector::myLine [private]
 

Standard_Boolean TopOpeBRep_FacesIntersector::myLineFound [private]
 

Standard_Integer TopOpeBRep_FacesIntersector::myLineIndex [private]
 

Standard_Integer TopOpeBRep_FacesIntersector::myLineNb [private]
 

TopoDS_Shape TopOpeBRep_FacesIntersector::myNullShape [private]
 

Handle_BRepAdaptor_HSurface TopOpeBRep_FacesIntersector::mySurface1 [private]
 

Handle_BRepAdaptor_HSurface TopOpeBRep_FacesIntersector::mySurface2 [private]
 

Standard_Boolean TopOpeBRep_FacesIntersector::mySurfacesSameOriented [private]
 

GeomAbs_SurfaceType TopOpeBRep_FacesIntersector::mySurfaceType1 [private]
 

GeomAbs_SurfaceType TopOpeBRep_FacesIntersector::mySurfaceType2 [private]
 

Standard_Real TopOpeBRep_FacesIntersector::myTol1 [private]
 

Standard_Real TopOpeBRep_FacesIntersector::myTol2 [private]
 


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