Open CASCADE Technology  6.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Protected Member Functions
BOPDS_IteratorSI Class Reference

The class BOPDS_IteratorSI is
1.to compute self-intersections between BRep sub-shapes
of each argument of an operation (see the class BOPDS_DS)
in terms of theirs bounding boxes
2.provides interface to iterare the pairs of
intersected sub-shapes of given type
More...

#include <BOPDS_IteratorSI.hxx>

Inheritance diagram for BOPDS_IteratorSI:
Inheritance graph
[legend]

Public Member Functions

 BOPDS_IteratorSI ()
 Empty contructor

More...
 
virtual ~BOPDS_IteratorSI ()
 
 BOPDS_IteratorSI (const BOPCol_BaseAllocator &theAllocator)
 
Contructor <br>

theAllocator - the allocator to manage the memory

More...

 
void UpdateByLevelOfCheck (const Standard_Integer theLevel)
 Updates the lists of possible intersections
according to the value of <theLevel>.
It defines which interferferences will be checked:
0 - only V/V;
1 - V/V and V/E;
2 - V/V, V/E and E/E;
3 - V/V, V/E, E/E and V/F;
4 - V/V, V/E, E/E, V/F and E/F;
other - all interferences.
More...
 
- Public Member Functions inherited from BOPDS_Iterator
 BOPDS_Iterator ()
 Empty contructor

More...
 
virtual ~BOPDS_Iterator ()
 
 BOPDS_Iterator (const BOPCol_BaseAllocator &theAllocator)
 
Contructor <br>

theAllocator - the allocator to manage the memory

More...

 
void SetDS (const BOPDS_PDS &pDS)
 Modifier
Sets the data structure <pDS> to process
More...
 
const BOPDS_DSDS () const
 Selector
Returns the data structure
More...
 
void Initialize (const TopAbs_ShapeEnum theType1, const TopAbs_ShapeEnum theType2)
 Initializes the iterator
theType1 - the first type of shape
theType2 - the second type of shape
More...
 
Standard_Boolean More () const
 Returns true if still there are pairs
of intersected shapes
More...
 
void Next ()
 Moves iterations ahead
More...
 
void Value (Standard_Integer &theIndex1, Standard_Integer &theIndex2, Standard_Boolean &theWithSubShape) const
 Returns indices (DS) of intersected shapes
theIndex1 - the index of the first shape
theIndex2 - the index of the second shape
theWithSubShape - flag. True if the sub-shapes of
shapes are intersected
More...
 
virtual void Prepare ()
 Perform the intersection algorithm and prepare
the results to be used
More...
 
Standard_Integer ExpectedLength () const
 Returns the number of intersections founded
More...
 
Standard_Integer BlockLength () const
 Returns the block length
More...
 

Protected Member Functions

virtual void Intersect ()
 

Additional Inherited Members

- Protected Attributes inherited from BOPDS_Iterator
BOPCol_BaseAllocator myAllocator
 
Standard_Integer myLength
 
BOPDS_PDS myDS
 
BOPDS_VectorOfListOfPassKeyBoolean myLists
 
BOPDS_ListIteratorOfListOfPassKeyBoolean myIterator
 

Detailed Description

The class BOPDS_IteratorSI is
1.to compute self-intersections between BRep sub-shapes
of each argument of an operation (see the class BOPDS_DS)
in terms of theirs bounding boxes
2.provides interface to iterare the pairs of
intersected sub-shapes of given type

Constructor & Destructor Documentation

BOPDS_IteratorSI::BOPDS_IteratorSI ( )

Empty contructor

virtual BOPDS_IteratorSI::~BOPDS_IteratorSI ( )
virtual
BOPDS_IteratorSI::BOPDS_IteratorSI ( const BOPCol_BaseAllocator theAllocator)

Contructor <br>

theAllocator - the allocator to manage the memory

Member Function Documentation

virtual void BOPDS_IteratorSI::Intersect ( )
protectedvirtual

Reimplemented from BOPDS_Iterator.

void BOPDS_IteratorSI::UpdateByLevelOfCheck ( const Standard_Integer  theLevel)

Updates the lists of possible intersections
according to the value of <theLevel>.
It defines which interferferences will be checked:
0 - only V/V;
1 - V/V and V/E;
2 - V/V, V/E and E/E;
3 - V/V, V/E, E/E and V/F;
4 - V/V, V/E, E/E, V/F and E/F;
other - all interferences.


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