sspt_StaggeredHexGrid< T > Class Template Reference

two-dimensional hexagonal grid data structure More...

#include <sspt_staggeredhexgrid.h>

List of all members.

Public Member Functions

 sspt_StaggeredHexGrid ()
 sspt_StaggeredHexGrid (int rows, int cols)
 sspt_StaggeredHexGrid (const sspt_StaggeredHexGrid< T > &)
sspt_StaggeredHexGridoperator= (const sspt_StaggeredHexGrid< T > &)
 ~sspt_StaggeredHexGrid ()
T & operator() (int row, int col)
operator() (int row, int col) const
T & operator() (const sspt_GridCoordinate &c)
operator() (const sspt_GridCoordinate &c) const
int rows () const
int cols () const
bool neighboringCells (sspt_List< sspt_GridCoordinate > *list, const sspt_GridCoordinate &c, int distance, bool inclusive) const
bool interpolatedCells (sspt_List< sspt_GridCoordinate > *list, const sspt_GridCoordinate &start, const sspt_GridCoordinate &end) const
bool intersectedCells (sspt_List< sspt_GridCoordinate > *list, const sspt_GridCoordinate &start, const sspt_GridCoordinate &end) const
bool mapXY (sspt_GridCoordinate *c, const sspt_HomogeneousVector &p, const sspt_HomogeneousVector &gridOrigin, double radius) const
bool adjacent (const sspt_GridCoordinate &a, const sspt_GridCoordinate &b) const
bool center (sspt_Vector3 *v, const sspt_GridCoordinate &c, double radius) const
bool center (sspt_HomogeneousVector *v, const sspt_GridCoordinate &c, double radius) const
int hexes (const sspt_GridCoordinate &a, const sspt_GridCoordinate &b) const
bool validateConnection (const sspt_List< sspt_GridCoordinate > &list, const sspt_GridCoordinate &start, const sspt_GridCoordinate &end) const
bool axes (enum sspt_HexDirection *majorAxis, enum sspt_HexDirection *minorAxis, int *majorDistance, int *minorDistance, const sspt_GridCoordinate &start, const sspt_GridCoordinate &end) const


Detailed Description

template<class T>
class sspt_StaggeredHexGrid< T >

two-dimensional hexagonal grid data structure

Constructor & Destructor Documentation

template<class T >
sspt_StaggeredHexGrid< T >::sspt_StaggeredHexGrid (  )  [inline]

template<class T >
sspt_StaggeredHexGrid< T >::sspt_StaggeredHexGrid ( int  rows,
int  cols 
) [inline]

template<class T >
sspt_StaggeredHexGrid< T >::sspt_StaggeredHexGrid ( const sspt_StaggeredHexGrid< T > &  a  )  [inline]

template<class T >
sspt_StaggeredHexGrid< T >::~sspt_StaggeredHexGrid (  )  [inline]


Member Function Documentation

template<class T >
bool sspt_StaggeredHexGrid< T >::adjacent ( const sspt_GridCoordinate a,
const sspt_GridCoordinate b 
) const [inline]

template<class T >
bool sspt_StaggeredHexGrid< T >::axes ( enum sspt_HexDirection *  majorAxis,
enum sspt_HexDirection *  minorAxis,
int *  majorDistance,
int *  minorDistance,
const sspt_GridCoordinate start,
const sspt_GridCoordinate end 
) const [inline]

template<class T >
bool sspt_StaggeredHexGrid< T >::center ( sspt_HomogeneousVector v,
const sspt_GridCoordinate c,
double  radius 
) const [inline]

template<class T >
bool sspt_StaggeredHexGrid< T >::center ( sspt_Vector3 v,
const sspt_GridCoordinate c,
double  radius 
) const [inline]

template<class T >
int sspt_StaggeredHexGrid< T >::cols (  )  const [inline]

template<class T >
int sspt_StaggeredHexGrid< T >::hexes ( const sspt_GridCoordinate a,
const sspt_GridCoordinate b 
) const [inline]

template<class T >
bool sspt_StaggeredHexGrid< T >::interpolatedCells ( sspt_List< sspt_GridCoordinate > *  list,
const sspt_GridCoordinate start,
const sspt_GridCoordinate end 
) const [inline]

template<class T >
bool sspt_StaggeredHexGrid< T >::intersectedCells ( sspt_List< sspt_GridCoordinate > *  list,
const sspt_GridCoordinate start,
const sspt_GridCoordinate end 
) const [inline]

template<class T >
bool sspt_StaggeredHexGrid< T >::mapXY ( sspt_GridCoordinate c,
const sspt_HomogeneousVector p,
const sspt_HomogeneousVector gridOrigin,
double  radius 
) const [inline]

template<class T >
bool sspt_StaggeredHexGrid< T >::neighboringCells ( sspt_List< sspt_GridCoordinate > *  list,
const sspt_GridCoordinate c,
int  distance,
bool  inclusive 
) const [inline]

template<class T >
T sspt_StaggeredHexGrid< T >::operator() ( const sspt_GridCoordinate c  )  const [inline]

template<class T >
T & sspt_StaggeredHexGrid< T >::operator() ( const sspt_GridCoordinate c  )  [inline]

template<class T >
T sspt_StaggeredHexGrid< T >::operator() ( int  row,
int  col 
) const [inline]

template<class T >
T & sspt_StaggeredHexGrid< T >::operator() ( int  row,
int  col 
) [inline]

template<class T >
sspt_StaggeredHexGrid< T > & sspt_StaggeredHexGrid< T >::operator= ( const sspt_StaggeredHexGrid< T > &  a  )  [inline]

template<class T >
int sspt_StaggeredHexGrid< T >::rows (  )  const [inline]

template<class T >
bool sspt_StaggeredHexGrid< T >::validateConnection ( const sspt_List< sspt_GridCoordinate > &  list,
const sspt_GridCoordinate start,
const sspt_GridCoordinate end 
) const [inline]


doxygen