FlowChannel Class Reference

Handles one scalar field of floats defined for each cell. More...

#include <FlowChannel.h>

Collaboration diagram for FlowChannel:
[legend]

List of all members.

Public Member Functions

 FlowChannel (FlowGeometry *g)
 ~FlowChannel ()
void setValue (int vtxID, float val)
 sets the value of the given vertex
void copyValues (float *rawdata, int vtxSize, int offset)
 takes an array containing all attributes for a vertex and copies the j-th attribute to this channel
float getValue (vec3 pos)
 returns the value at given position in data set coordinates (from 0 to dimX or dimY)
float getValue (int vtxID)
 returns the value of the given vertex
float getValueNormPos (vec3 pos)
 returns the value at given position in normalized coordinates for each dimension <0..1>
float getValueNormPos (float x, float y)
 returns the value at given position in normalized coordinates for each dimension <0..1>
float normalizeValue (float val)
 scales the value according to the channel minimim and maximum, so that it lies inside of <0,1>
float getMin ()
 returns the minimum value found in the channel
float getMax ()
 returns the maximum value found in the channel
float getRange ()
 returns the range = max - min

Private Attributes

FlowGeometrygeom
 reference to the geometry structure
float * values
 channel data storage
float minimum
 minimum value (of all cells in a single time step)
float maximum
 maximum value (of all cells in a single time step)


Detailed Description

Handles one scalar field of floats defined for each cell.

More dimensional vectors are split into components. E.g. a 3D velocity vector gets stored in three FlowChannels. A FlowChannel stores data only from one time step, it is not aware of any time related information.


Constructor & Destructor Documentation

FlowChannel::FlowChannel ( FlowGeometry g  ) 

FlowChannel::~FlowChannel (  ) 


Member Function Documentation

void FlowChannel::copyValues ( float *  rawdata,
int  vtxSize,
int  offset 
)

takes an array containing all attributes for a vertex and copies the j-th attribute to this channel

This methos is used by the loading of data sets.

Parameters:
rawdata data gained directly from the file, without any processing. It contains all channels for all cells. Please note, there is no time information considered here.
vtxSize number of channels per cell (incl. velocity vector size)
offset offset of the parameter loaded into this channel

float FlowChannel::getMax (  ) 

returns the maximum value found in the channel

float FlowChannel::getMin (  ) 

returns the minimum value found in the channel

float FlowChannel::getRange (  ) 

returns the range = max - min

float FlowChannel::getValue ( int  vtxID  ) 

returns the value of the given vertex

float FlowChannel::getValue ( vec3  pos  ) 

returns the value at given position in data set coordinates (from 0 to dimX or dimY)

float FlowChannel::getValueNormPos ( float  x,
float  y 
)

returns the value at given position in normalized coordinates for each dimension <0..1>

float FlowChannel::getValueNormPos ( vec3  pos  ) 

returns the value at given position in normalized coordinates for each dimension <0..1>

float FlowChannel::normalizeValue ( float  val  ) 

scales the value according to the channel minimim and maximum, so that it lies inside of <0,1>

void FlowChannel::setValue ( int  vtxID,
float  val 
)

sets the value of the given vertex


Member Data Documentation

reference to the geometry structure

float FlowChannel::maximum [private]

maximum value (of all cells in a single time step)

float FlowChannel::minimum [private]

minimum value (of all cells in a single time step)

float* FlowChannel::values [private]

channel data storage


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

Generated on Mon Jan 26 22:10:05 2009 for FlowVis by  doxygen 1.5.7.1