00001 #ifndef FLOWCHANNEL_H 00002 #define FLOWCHANNEL_H 00003 00004 #include "common.h" 00005 #include "FlowGeometry.h" 00006 00007 #include <iostream> 00008 00009 class FlowChannel 00010 { 00011 private: 00012 00014 FlowGeometry* geom; 00015 00017 float* values; 00018 00020 float minimum; 00021 00023 float maximum; 00024 00025 public: 00026 00027 FlowChannel(FlowGeometry* g); 00028 00029 ~FlowChannel(); 00030 00032 void FlowChannel::moveMinimumToZero(); 00033 00035 void setValue(int vtxID, float val); 00036 00038 void copyValues(float* rawdata, int vtxSize, int offset); 00039 00041 void copyValues( float* rawData ); 00042 00044 float getValue(vec3 pos); 00045 00047 float getValue(int vtxID); 00048 00050 float getValueNormPos(vec3 pos); 00051 00053 float getValueNormPos(float x, float y); 00054 00056 float normalizeValue(float val); 00057 00058 // set new max values after normalization of scalar channels 00059 void setMax(float val); 00060 // set new min values after normalization of scalar channels 00061 void setMin(float val); 00062 00064 float getMin(); 00066 float getMax(); 00068 float getRange(); 00069 00070 float* getData() const; 00071 }; 00072 #endif