ESyS-Particle  2.3.2
esys::lsm::GridIterator Class Reference

#include <GridIterator.h>

Collaboration diagram for esys::lsm::GridIterator:

Public Member Functions

 GridIterator ()
 GridIterator (int numPtsX, int numPtsY, int numPtsZ, double sphereRadius)
 GridIterator (const BoundingBox &particleBBox, double sphereRadius, bool hard_limit=false)
 ~GridIterator ()
const BoundingBoxgetBoundingBox () const
BoundingBox getSphereBBox () const
bool hasNext () const
bool is2d () const
Vec3 getPoint () const
void increment ()
Vec3 next ()

Private Attributes

double m_sphereRadius
int m_minI
int m_minJ
int m_minK
int m_maxI
int m_maxJ
int m_maxK
int m_i
int m_j
 index in x-direction
int m_k
 index in y-direction
BoundingBox m_centrePtBBox
 index in z-direction

Detailed Description

Class for iterating over the centre-points of spheres arranged in a regular lattice within a specified bounding box.

Constructor & Destructor Documentation

esys::lsm::GridIterator::GridIterator ( )
inline
esys::lsm::GridIterator::GridIterator ( int  numPtsX,
int  numPtsY,
int  numPtsZ,
double  sphereRadius 
)
inline

References m_centrePtBBox, m_maxJ, and m_minJ.

esys::lsm::GridIterator::GridIterator ( const BoundingBox particleBBox,
double  sphereRadius,
bool  hard_limit = false 
)
inline
esys::lsm::GridIterator::~GridIterator ( )
inline

Member Function Documentation

const BoundingBox& esys::lsm::GridIterator::getBoundingBox ( ) const
inline

References m_centrePtBBox.

Vec3 esys::lsm::GridIterator::getPoint ( ) const
inline

References esys::lsm::BoundingBox::getMinPt(), is2d(), m_centrePtBBox, m_i, m_j, m_k, m_sphereRadius, Vec3::X(), Vec3::Y(), and Vec3::Z().

Referenced by next().

Here is the call graph for this function:

Here is the caller graph for this function:

BoundingBox esys::lsm::GridIterator::getSphereBBox ( ) const
inline
void esys::lsm::GridIterator::increment ( )
inline

References m_i, m_j, m_k, m_maxJ, m_maxK, m_minJ, and m_minK.

Referenced by next().

Here is the caller graph for this function:

bool esys::lsm::GridIterator::is2d ( ) const
inline

References m_maxJ, and m_minJ.

Referenced by getPoint(), and getSphereBBox().

Here is the caller graph for this function:

Member Data Documentation

BoundingBox esys::lsm::GridIterator::m_centrePtBBox
private

index in z-direction

Referenced by getBoundingBox(), getPoint(), getSphereBBox(), and GridIterator().

int esys::lsm::GridIterator::m_i
private
int esys::lsm::GridIterator::m_j
private

index in x-direction

Referenced by getPoint(), GridIterator(), and increment().

int esys::lsm::GridIterator::m_k
private

index in y-direction

Referenced by getPoint(), GridIterator(), and increment().

int esys::lsm::GridIterator::m_maxI
private

Referenced by GridIterator(), and hasNext().

int esys::lsm::GridIterator::m_maxJ
private

Referenced by GridIterator(), increment(), and is2d().

int esys::lsm::GridIterator::m_maxK
private

Referenced by GridIterator(), and increment().

int esys::lsm::GridIterator::m_minI
private

Referenced by GridIterator().

int esys::lsm::GridIterator::m_minJ
private

Referenced by GridIterator(), increment(), and is2d().

int esys::lsm::GridIterator::m_minK
private

Referenced by GridIterator(), and increment().

double esys::lsm::GridIterator::m_sphereRadius
private

Referenced by getPoint(), and getSphereBBox().


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