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

The class BOPDS_Iterator is
1.to compute intersections between BRep sub-shapes
of arguments 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

#include <BOPDS_Iterator.hxx>

Inheritance diagram for BOPDS_Iterator:
Inheritance graph
[legend]

Public Member Functions

 BOPDS_Iterator ()
 Empty contructor


virtual ~BOPDS_Iterator ()
 BOPDS_Iterator (const BOPCol_BaseAllocator &theAllocator)
 Contructor
theAllocator - the allocator to manage the memory


void SetDS (const BOPDS_PDS &pDS)
 Modifier
Sets the data structure <pDS> to process

const BOPDS_DSDS () const
 Selector
Returns the data structure

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

Standard_Boolean More () const
 Returns true if still there are pairs
of intersected shapes

void Next ()
 Moves iterations ahead

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

virtual void Prepare ()
 Perform the intersection algorithm and prepare
the results to be used

Standard_Integer ExpectedLength () const
 Returns the number of intersections founded

Standard_Integer BlockLength () const
 Returns the block length

Protected Member Functions

virtual void Intersect ()

Protected Attributes

BOPCol_BaseAllocator myAllocator
Standard_Integer myLength
BOPDS_PDS myDS
BOPDS_VectorOfListOfPassKeyBoolean myLists
BOPDS_ListIteratorOfListOfPassKeyBoolean myIterator

Constructor & Destructor Documentation

BOPDS_Iterator::BOPDS_Iterator ( )
virtual BOPDS_Iterator::~BOPDS_Iterator ( ) [virtual]
BOPDS_Iterator::BOPDS_Iterator ( const BOPCol_BaseAllocator theAllocator)

Member Function Documentation

Standard_Integer BOPDS_Iterator::BlockLength ( ) const
const BOPDS_DS& BOPDS_Iterator::DS ( ) const
Standard_Integer BOPDS_Iterator::ExpectedLength ( ) const
void BOPDS_Iterator::Initialize ( const TopAbs_ShapeEnum  theType1,
const TopAbs_ShapeEnum  theType2 
)
virtual void BOPDS_Iterator::Intersect ( ) [protected, virtual]

Reimplemented in BOPDS_IteratorSI.

Standard_Boolean BOPDS_Iterator::More ( ) const
void BOPDS_Iterator::Next ( )
virtual void BOPDS_Iterator::Prepare ( ) [virtual]
void BOPDS_Iterator::SetDS ( const BOPDS_PDS pDS)
void BOPDS_Iterator::Value ( Standard_Integer theIndex1,
Standard_Integer theIndex2,
Standard_Boolean theWithSubShape 
) 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