#include <FlowVis_.h>
Public Member Functions | |
FlowData (CString aGridFileName, CString aDatFileName) | |
~FlowData () | |
bool | isValid () |
FlowPosition | operator() (int anXIndex, int aYIndex) |
float | operator() (int anXIndex, int aYIndex, int aSetNumber) |
int | getXDim () |
int | getYDim () |
int | getAddedSetNo () |
float | getMinXPos () |
float | getMaxXPos () |
float | getMinYPos () |
float | getMaxYPos () |
float | getMaxMagnitude () |
float | getMinMagnitude () |
float | getMaxAdditionalData1 () |
float | getMinAdditionalData1 () |
float | getMaxAdditionalData2 () |
float | getMinAdditionalData2 () |
FlowPosition | operator() (float anXPos, float aYPos) |
float | operator() (float anXPos, float aYPos, int aSetNumber) |
Pos2d | getDataEnd () |
Public Attributes | |
double | vx |
double | vy |
double | vz |
Private Member Functions | |
void | loadGrid (CString aFileName) |
void | loadData (CString aFileName) |
void | sortData () |
void | getPosition (float *aPosition, float *aWeightResult, int *anIndexToWeight) |
Private Attributes | |
bool | loadSuccessful |
FlowPosition * | theMainData |
float * | theAdditionalData |
int | theXSize |
int | theYSize |
int | theNumberOfAdditionalSets |
float | theMinXPos |
float | theMaxXPos |
float | theMinYPos |
float | theMaxYPos |
Pos2d | theDataEnd |
float | theMinMagnitude |
float | theMaxMagnitude |
float | theMinAdditionalData1 |
float | theMaxAdditionalData1 |
float | theMinAdditionalData2 |
float | theMaxAdditionalData2 |
FlowData::FlowData | ( | CString | aGridFileName, | |
CString | aDatFileName | |||
) |
the constructor
aGridFileName | the path to the grid file | |
aDatFileName | the path to the dat file |
FlowData::~FlowData | ( | ) |
the destructor
int FlowData::getAddedSetNo | ( | ) |
the number of additional sets
Pos2d FlowData::getDataEnd | ( | ) |
size of the dataset
float FlowData::getMaxAdditionalData1 | ( | ) |
the maximum pressure value
float FlowData::getMaxAdditionalData2 | ( | ) |
the maximum vorticity value
float FlowData::getMaxMagnitude | ( | ) |
the maximum magnitude of a vector
float FlowData::getMaxXPos | ( | ) |
the maximum x-position of a vector
float FlowData::getMaxYPos | ( | ) |
the maximum y-position of a vector
float FlowData::getMinAdditionalData1 | ( | ) |
the minimum pressure value
float FlowData::getMinAdditionalData2 | ( | ) |
the minimum vorticity value
float FlowData::getMinMagnitude | ( | ) |
the minimum magnitude of a vector
float FlowData::getMinXPos | ( | ) |
the minimum x-position of a vector
float FlowData::getMinYPos | ( | ) |
the minimum y-position of a vector
void FlowData::getPosition | ( | float * | aPosition, | |
float * | aWeightResult, | |||
int * | anIndexToWeight | |||
) | [private] |
casculates the weights of nearest values to interpolate a position based on the fact that the given positions form a grid with no holes xPos(x(i)y(j)) == xPos(x(i)y(k)) yPos(x(i)y(k)) == yPos(x(j)y(k)) will not work otherwise
aPosition | position to search (x, y) | |
aWeightResult | the resulting weights will be stored here |
int FlowData::getXDim | ( | ) |
the x dimension of the set
int FlowData::getYDim | ( | ) |
the y dimension of the set
bool FlowData::isValid | ( | ) |
returns whether this object is valid or not (it is valid if the grid and dat files were loaded successfully)
void FlowData::loadData | ( | CString | aFileName | ) | [private] |
loads the dat data
aFileName | the path to the dat file |
void FlowData::loadGrid | ( | CString | aFileName | ) | [private] |
loads the grid data
aFileName | the path to the grid file |
float FlowData::operator() | ( | float | anXPos, | |
float | aYPos, | |||
int | aSetNumber | |||
) |
returns an additional data set
anXPos | the x index of the data to return | |
aYPos | the y index of the data to return | |
aSetNumber | the number of the data set |
FlowPosition FlowData::operator() | ( | float | anXPos, | |
float | aYPos | |||
) |
returns the interpolated position and direction of a flow value
anXPos | the x position of the data to return | |
aYPos | the y position of the data to return |
float FlowData::operator() | ( | int | anXIndex, | |
int | aYIndex, | |||
int | aSetNumber | |||
) |
returns an additional data set
anXIndex | the x index of the data to return | |
aYIndex | the y index of the data to return | |
aSetNumber | the number of the data set |
FlowPosition FlowData::operator() | ( | int | anXIndex, | |
int | aYIndex | |||
) |
returns the position and direction of a flow value
anXIndex | the x index of the data to return | |
aYIndex | the y index of the data to return |
void FlowData::sortData | ( | ) | [private] |
sorts the loaded data to get a (non-aequidistant) grid accessable by index
bool FlowData::loadSuccessful [private] |
float* FlowData::theAdditionalData [private] |
Pos2d FlowData::theDataEnd [private] |
FlowPosition* FlowData::theMainData [private] |
float FlowData::theMaxAdditionalData1 [private] |
float FlowData::theMaxAdditionalData2 [private] |
float FlowData::theMaxMagnitude [private] |
float FlowData::theMaxXPos [private] |
float FlowData::theMaxYPos [private] |
float FlowData::theMinAdditionalData1 [private] |
float FlowData::theMinAdditionalData2 [private] |
float FlowData::theMinMagnitude [private] |
float FlowData::theMinXPos [private] |
float FlowData::theMinYPos [private] |
int FlowData::theNumberOfAdditionalSets [private] |
int FlowData::theXSize [private] |
int FlowData::theYSize [private] |
double FlowData::vx |
double FlowData::vy |
double FlowData::vz |