Flow Visualization 1.0
Public Member Functions

FlowChannel Class Reference

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

#include <FlowChannel.h>

List of all members.

Public Member Functions

 FlowChannel (FlowGeometry *g)
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 minimum 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
GLuint get2DTexture ()
 returns a 2D OpenGL texture containing channeldata floats inside of <0,1>.

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.


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 method is used by the loading of data sets.

Parameters:
rawdatadata gained directly from the file, without any processing. It contains all channels for all cells. Please note, there is no time information considered here.
vtxSizenumber of channels per cell (incl. velocity vector size)
offsetoffset of the parameter loaded into this channel
GLuint FlowChannel::get2DTexture ( )

returns a 2D OpenGL texture containing channeldata floats inside of <0,1>.

This texture will be used to do a lookup from geometry vertices that have the grid location coded into uv texcoords.

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 ( vec3  pos)

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

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

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 minimum and maximum, so that it lies inside of <0,1>

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

sets the value of the given vertex


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