iso::space::SpaceGrid Class Reference

#include <iso_space_grid.h>

List of all members.

Public Member Functions

 SpaceGrid (unsigned int pValueDim, const Vector< unsigned int > &pSubdivisionCount, const Vector< real > &pMinPos, const Vector< real > &pMaxPos)
 create space grid
 SpaceGrid (const SpaceGrid &pSpaceGrid)
 copy constructor
 SpaceGrid (const serialize::SerializeData &pSerializeData) throw (serialize::SerializeException)
 serialization based constructor
 ~SpaceGrid ()
 destructor
virtual serialize::SerializeData serialize (const base::String &pSerialName=sClassName) const
 create serializeData for space grid
const SpaceGridoperator= (const SpaceGrid &pSpaceGrid)
 assignment operator
unsigned int dim () const
 return dimension of space grid
unsigned int gridDim () const
 return dimension of space grid
unsigned int valueDim () const
 return dimension of values
const math::Vector< unsigned
int > & 
subdivisionCount () const
 return subdivision count
VectorField< real > & vectorField ()
 return vector field
const Vector< real > & minPos () const
 return minimum position
void setMinPos (const math::Vector< float > &pMinPos)
const Vector< real > & maxPos () const
 return maximum position
void setMaxPos (const math::Vector< float > &pMaxPos)
math::Vector< unsigned int > position2index (const math::Vector< real > &pPosition) const
 return grid index
void position2index (const math::Vector< real > &pPosition, unsigned int &pIndex) const
 calculate grid index
void position2index (const math::Vector< real > &pPosition, math::Vector< unsigned int > &pIndex) const
 calculate grid index
void position2index (const math::Vector< real > &pPosition, math::Vector< real > &pIndex) const
 calculate grid index
math::Vector< realindex2position (const math::Vector< unsigned int > &pIndex) const
math::Vector< realindex2position (const math::Vector< real > &pIndex) const
const VectorField< real > & vectorField () const
 return vector field
const math::Vector< real > & value (unsigned int pIndex) const
 get value at grid position
const math::Vector< real > & value (const math::Vector< unsigned int > &pGridPosition) const
 get value at grid position
math::Vector< realvalue (const math::Vector< real > &pPosition) const
 return interpolated value
void value (const math::Vector< real > &pPosition, math::Vector< real > &pValue) const
 return interpolated value
const math::Vector< real > & gridValue (unsigned int pIndex) const
 get value at grid position
const math::Vector< real > & gridValue (const math::Vector< unsigned int > &pGridPosition) const
 get value at grid position
void setValues (const math::VectorField< real > &pVectorField)
 set values
void setValues (const math::Vector< real > &pValue)
 set values
void changeValues (const math::Vector< real > &pValue)
 change values
void setValue (const math::Vector< real > &pPosition, const math::Vector< real > &pValue, GridValueSetMode pSetMode=Interpol)
 set value
void changeValue (const math::Vector< real > &pPosition, const math::Vector< real > &pValue, GridValueSetMode pSetMode=Interpol)
 change value
void setGridValue (unsigned int pIndex, const math::Vector< real > &pGridValue)
 set value at grid location
void setGridValue (const math::Vector< unsigned int > &pGridPosition, const math::Vector< real > &pGridValue)
 set value at grid location
virtual base::String info () const
 print grid information

Static Public Member Functions

static serialize::Serializable * deSerialize (const serialize::SerializeData &pSerializeData) throw (serialize::SerializeException)
 create space grid from SerializeData

Static Public Attributes

static const base::String sClassName
 default name

Protected Member Functions

 SpaceGrid ()
 default constructor

Protected Attributes

unsigned int mGridDim
 dimension of space grid
unsigned int mValueDim
 dimension of values
math::Vector< realmMinPos
 minimum position of grid
math::Vector< realmMaxPos
 maximum position of grid
math::VectorField< realmVectorField
 n dimensional field of vector values
math::Vector< realmPositionScale
 input position to grid position scale

Friends

std::ostream & operator<< (std::ostream &pOstream, const SpaceGrid &pGrid)
 retrieve textual space grid info


Constructor & Destructor Documentation

SpaceGrid::SpaceGrid ( unsigned int  pValueDim,
const Vector< unsigned int > &  pSubdivisionCount,
const Vector< real > &  pMinPos,
const Vector< real > &  pMaxPos 
)

create space grid

Parameters:
pValueDim dimension of values stored at each grid location
pSubdivisionCount number of gread subdivisions in each dimension
pMinPos minimum position of grid
pMaxPos maximum position of grid

SpaceGrid::SpaceGrid ( const SpaceGrid pSpaceGrid  ) 

copy constructor

Parameters:
pSpaceGrid space grid

SpaceGrid::SpaceGrid ( const serialize::SerializeData &  pSerializeData  )  throw (serialize::SerializeException)

serialization based constructor

Parameters:
pSerializeData serialization data
Exceptions:
SerializeException failed to create buffer

SpaceGrid::~SpaceGrid (  ) 

destructor

SpaceGrid::SpaceGrid (  )  [protected]

default constructor


Member Function Documentation

serialize::SerializeData SpaceGrid::serialize ( const base::String &  pSerialName = sClassName  )  const [virtual]

create serializeData for space grid

Returns:
serializeData

serialize::Serializable * SpaceGrid::deSerialize ( const serialize::SerializeData &  pSerializeData  )  throw (serialize::SerializeException) [static]

create space grid from SerializeData

Parameters:
pSerializeData SerializeData
Returns:
Serializable
Exceptions:
SerializeException incompatible SerializeData

const SpaceGrid & SpaceGrid::operator= ( const SpaceGrid pSpaceGrid  ) 

assignment operator

Parameters:
pSpaceGrid space grid to copy
Returns:
SpaceGrid
Remarks:
fails if space grids are not compatible

unsigned int SpaceGrid::dim (  )  const

return dimension of space grid

Returns:
dimension of space grid

unsigned int SpaceGrid::gridDim (  )  const

return dimension of space grid

Returns:
dimension of space grid

unsigned int SpaceGrid::valueDim (  )  const

return dimension of values

Returns:
dimension of values

const math::Vector< unsigned int > & SpaceGrid::subdivisionCount (  )  const

return subdivision count

Returns:
subdivision count

VectorField< real > & SpaceGrid::vectorField (  ) 

return vector field

Returns:
vector field

const Vector< real > & SpaceGrid::minPos (  )  const

return minimum position

Returns:
minimum position

void SpaceGrid::setMinPos ( const math::Vector< float > &  pMinPos  ) 

const Vector< real > & SpaceGrid::maxPos (  )  const

return maximum position

Returns:
maximum position

void SpaceGrid::setMaxPos ( const math::Vector< float > &  pMaxPos  ) 

math::Vector< unsigned int > SpaceGrid::position2index ( const math::Vector< real > &  pPosition  )  const

return grid index

Parameters:
pPosition position

void SpaceGrid::position2index ( const math::Vector< real > &  pPosition,
unsigned int &  pIndex 
) const

calculate grid index

Parameters:
pPosition position
pIndex resulting index

void SpaceGrid::position2index ( const math::Vector< real > &  pPosition,
math::Vector< unsigned int > &  pIndex 
) const

calculate grid index

Parameters:
pPosition position
pIndex resulting index

void SpaceGrid::position2index ( const math::Vector< real > &  pPosition,
math::Vector< real > &  pIndex 
) const

calculate grid index

Parameters:
pPosition position
pIndex resulting index

math::Vector< real > SpaceGrid::index2position ( const math::Vector< unsigned int > &  pIndex  )  const

math::Vector< real > SpaceGrid::index2position ( const math::Vector< real > &  pIndex  )  const

const VectorField< real > & SpaceGrid::vectorField (  )  const

return vector field

Returns:
vector field

const math::Vector< real > & SpaceGrid::value ( unsigned int  pIndex  )  const

get value at grid position

Parameters:
pIndex grid index
Returns:
pGridValue grid value

const math::Vector< real > & SpaceGrid::value ( const math::Vector< unsigned int > &  pGridPosition  )  const

get value at grid position

Parameters:
pGridPosition grid position (with regard to subdivision count)
Returns:
pGridValue grid value

math::Vector< real > SpaceGrid::value ( const math::Vector< real > &  pPosition  )  const

return interpolated value

Parameters:
pPosition position (with regard to grid size)
Returns:
interpolated value

void SpaceGrid::value ( const math::Vector< real > &  pPosition,
math::Vector< real > &  pValue 
) const

return interpolated value

Parameters:
pPosition position (with regard to grid size)
pValue interpolated value (written)

const math::Vector< real > & SpaceGrid::gridValue ( unsigned int  pIndex  )  const

get value at grid position

Parameters:
pIndex grid index
Returns:
pGridValue grid value

const math::Vector< real > & SpaceGrid::gridValue ( const math::Vector< unsigned int > &  pGridPosition  )  const

get value at grid position

Parameters:
pGridPosition grid position (with regard to subdivision count)
Returns:
pGridValue grid value

void SpaceGrid::setValues ( const math::VectorField< real > &  pVectorField  ) 

set values

Parameters:
pVectorField vector field
Remarks:
fails if vector field doesn't match grid settings

void SpaceGrid::setValues ( const math::Vector< real > &  pValue  ) 

set values

Parameters:
pValue set all grid values

void SpaceGrid::changeValues ( const math::Vector< real > &  pValue  ) 

change values

Parameters:
pValue change all grid values

void SpaceGrid::setValue ( const math::Vector< real > &  pPosition,
const math::Vector< real > &  pValue,
GridValueSetMode  pSetMode = Interpol 
)

set value

Parameters:
pPosition position
pValue 
pSetMode value set mode

void SpaceGrid::changeValue ( const math::Vector< real > &  pPosition,
const math::Vector< real > &  pValue,
GridValueSetMode  pSetMode = Interpol 
)

change value

Parameters:
pPosition position
pValue 
pSetMode value set mode

void SpaceGrid::setGridValue ( unsigned int  pIndex,
const math::Vector< real > &  pGridValue 
)

set value at grid location

Parameters:
pIndex grid index
pGridValue grid value

void SpaceGrid::setGridValue ( const math::Vector< unsigned int > &  pGridPosition,
const math::Vector< real > &  pGridValue 
)

set value at grid location

Parameters:
pGridPosition grid position
pGridValue grid value

base::String SpaceGrid::info (  )  const [virtual]

print grid information


Friends And Related Function Documentation

std::ostream& operator<< ( std::ostream &  pOstream,
const SpaceGrid pGrid 
) [friend]

retrieve textual space grid info

Parameters:
pOstream output text stream
pGrid space grid


Member Data Documentation

const base::String SpaceGrid::sClassName [static]

default name

unsigned int iso::space::SpaceGrid::mGridDim [protected]

dimension of space grid

unsigned int iso::space::SpaceGrid::mValueDim [protected]

dimension of values

math::Vector<real> iso::space::SpaceGrid::mMinPos [protected]

minimum position of grid

math::Vector<real> iso::space::SpaceGrid::mMaxPos [protected]

maximum position of grid

math::VectorField<real> iso::space::SpaceGrid::mVectorField [protected]

n dimensional field of vector values

math::Vector<real> iso::space::SpaceGrid::mPositionScale [protected]

input position to grid position scale


The documentation for this class was generated from the following files:
Generated on Fri Feb 25 14:08:15 2011 for iso_space by  doxygen 1.5.1