QVolRendCanvas Class Reference

#include <QVolRendCanvas.h>

List of all members.

Public Member Functions

 QVolRendCanvas (QWidget *parent=0)
virtual ~QVolRendCanvas ()
void setObjectName (const QString &name)
float getNumTimeSteps ()
float getNumDataValues ()
float getFlowDataMin ()
float getFlowDataMax ()
void timestep_changed_event (int val)
void coloringproperty_changed_event (int val)
void arrowscale_valuechanged (int val)
void iconscale_valuechanged (int val)
void icontail_valuechanged (int val)
void arrowspacing_valuechanged (int val)
void arrowalpha_changed_event (float val)
void salpha_changed_event (float val)
void licalpha_changed_event (float val)
void licsteps_changed_event (int val)
void licstepsize_changed_event (int val)
void dsep_valuechanged (int val)
void dtest_valuechanged (int val)
void steps_valuechanged (int val)
void dt_valuechanged (int val)
void setGlyph (bool val)
virtual void resizeGL (int w, int h)
virtual void paintEvent (QPaintEvent *e)
virtual void mousePressEvent (QMouseEvent *e)
virtual void mouseReleaseEvent (QMouseEvent *e)
virtual void mouseMoveEvent (QMouseEvent *e)
virtual void mouseDoubleClickEvent (QMouseEvent *e)
virtual void keyPressEvent (QKeyEvent *e)
virtual void keyReleaseEvent (QKeyEvent *e)
const VMouseEvent getMouseEvent (QMouseEvent *e)
const VKeyboardEvent getKeyboardEvent (QKeyEvent *e)
virtual void redraw ()
void setStreamlinesColorPtr (VVector *v)
void setArrowsColorPtr (VVector *v)
void setArrowplotState (bool state)
void setLicplotState (bool state)
void enableIcons (bool state)
void setTaperingState (bool state)
void setStrGlyphes (bool state)
void setTaperingScale (float val)
void setStreamlinesState (bool state)
void setArrowScaleModus (bool state)
void setIntegrationMethod (bool state)
void computeStreamlines ()
void computeCPUStreamlines ()
void setPlacingMethod (int val)
bool getLoaded ()
void setTransferFunctionPtr (VTransferFunction *transfunc)
void setArrowTransferFunctionPtr (VTransferFunction *transfunc)
void setArrowTF (bool val)
void setLicTF (bool val)
void animateLic (bool val)
void setStrTF (bool val)
void setStreamLineTransferFunctionPtr (VTransferFunction *transfunc)
void setLicTransferFunctionPtr (VTransferFunction *transfunc)
void modifyLight (bool val)
virtual bool load_data (QString filename, int *volsize)
virtual bool load_single_data (QString filename, QString datfilename)
bool save_data (std::string filename)
virtual void saveImage (std::string filename)
virtual void saveBigImage (std::string filename)
virtual void saveStreamLines (std::string filename)
virtual void loadStreamLines (std::string filename)
void setOrthoProjection (bool m_orth)

Public Attributes

VTransferFunctionm_TransferFunction
VTransferFunctionm_ArrowTransferFunction
VTransferFunctionm_StreamLineTransferFunction
VTransferFunctionm_LicTransferFunction
float m_bgColor [4]
VVector up
VVector view
VVector side
VVector lup
VVector lview
VVector lside
VVector m_lightDir
bool m_modifyLight
VImage testImage

Protected Member Functions

virtual void initializeGL ()
virtual void paintGL ()

Private Member Functions

VVector getSphereProjection (float x, float y)
VVector getPlaneProjection (float x, float y)
void computeGlyphs ()
double round (double Zahl, int Stellen)

Private Attributes

bool sliceview_active
bool data_loaded
int apply_tf_in_sv
int apply_tf_in_vv
VFramebufferObjectm_FramebufferObject
VVectorm_ArrowsColor
VVectorm_StreamlinesColor
VVector m_MouseLastPos
MouseState m_MouseState
VVector m_CamDat
VVector m_LookAtPoint
VVector m_Position
VVector m_LookAt
float m_Distance
VVector m_vecPosition
VVector m_PanOffset
VVector m_Rotation
float m_fAngle
bool m_EnableSeedpointsSetting
bool m_EnableEvenSeedpointsSetting
VFramebufferObjectm_SaveImageFBO
bool m_IsSaving
std::string m_SaveFileName
VFlowData m_FlowData
VFlowRenderer m_FlowRenderer
float mArrowSize
float mArrowSpacing
float mStreamSeedSpacing
float mStreamTestSpacing
float mStremSteps
float mStreamDT
bool arrows_activated
bool streamlines_activated
int timestep_activated
int coloring_property
bool lic_activated
bool tapering_activated
float m_EnableIconSetting


Detailed Description

class representing the Main render Canvas

Definition at line 38 of file QVolRendCanvas.h.


Constructor & Destructor Documentation

QVolRendCanvas::QVolRendCanvas ( QWidget *  parent = 0  ) 

constructor with given parent Widget

Parameters:
parent Widget

Definition at line 7 of file QVolRendCanvas.cpp.

References apply_tf_in_sv, apply_tf_in_vv, arrows_activated, coloring_property, data_loaded, VVector::getCross(), getSphereProjection(), lside, lup, lview, m_Distance, m_fAngle, m_LookAt, m_MouseState, m_PanOffset, m_Position, m_Rotation, m_vecPosition, NO_DRAGGING, VVector::normalize(), side, sliceview_active, streamlines_activated, timestep_activated, up, and view.

QVolRendCanvas::~QVolRendCanvas (  )  [virtual]

standard destructor

Definition at line 79 of file QVolRendCanvas.cpp.

References m_ArrowsColor, m_FramebufferObject, m_StreamlinesColor, and m_TransferFunction.


Member Function Documentation

void QVolRendCanvas::setObjectName ( const QString &  name  ) 

sets the name of the current Object

Parameters:
name QString containing the widgets name

Definition at line 94 of file QVolRendCanvas.cpp.

Referenced by Ui_QMain::setupUi().

float QVolRendCanvas::getNumTimeSteps (  )  [inline]

gets the number of the time steps depending on the data set

Returns:
the number of the time steps

Definition at line 65 of file QVolRendCanvas.h.

References VFlowData::getNumTimeSteps(), and m_FlowData.

Referenced by QMain::load_data_file(), and QMain::load_single_file().

float QVolRendCanvas::getNumDataValues (  )  [inline]

gets the number of triplets depending on the data set

Returns:
the number of the triplets

Definition at line 75 of file QVolRendCanvas.h.

References VFlowData::getNumDataValues(), and m_FlowData.

Referenced by QMain::load_data_file(), and QMain::load_single_file().

float QVolRendCanvas::getFlowDataMin (  )  [inline]

returns the minimum of the current data val

Returns:
float containing the minimum

Definition at line 85 of file QVolRendCanvas.h.

References VFlowRenderer::getFlowDataMin(), and m_FlowRenderer.

Referenced by QMain::load_data_file(), QMain::load_single_file(), and QMain::slider_colprop_valuechanged().

float QVolRendCanvas::getFlowDataMax (  )  [inline]

returns the maximum of the current data val

Returns:
float containing the maximum

Definition at line 95 of file QVolRendCanvas.h.

References VFlowRenderer::getFlowDataMax(), and m_FlowRenderer.

Referenced by QMain::load_data_file(), QMain::load_single_file(), and QMain::slider_colprop_valuechanged().

void QVolRendCanvas::timestep_changed_event ( int  val  ) 

sets the active time step

Parameters:
the active time step

Definition at line 98 of file QVolRendCanvas.cpp.

References VFlowData::computeIcons(), m_EnableIconSetting, m_FlowData, VFlowData::setTimeStep(), and timestep_activated.

Referenced by QMain::slider_timestep_valuechanged().

void QVolRendCanvas::coloringproperty_changed_event ( int  val  ) 

sets the active color mapping property

Parameters:
the color mapping property

Definition at line 110 of file QVolRendCanvas.cpp.

References coloring_property, m_FlowRenderer, and VFlowRenderer::setCurrentShader().

Referenced by QMain::slider_colprop_valuechanged().

void QVolRendCanvas::arrowscale_valuechanged ( int  val  ) 

method for capturing the event of the arrow scale

Parameters:
val value of slider

Definition at line 843 of file QVolRendCanvas.cpp.

References computeGlyphs(), and mArrowSize.

Referenced by QMain::slider_arrowscale_valuechanged().

void QVolRendCanvas::iconscale_valuechanged ( int  val  ) 

method for capturing the event of the icon scale

Parameters:
val value of slider

Definition at line 849 of file QVolRendCanvas.cpp.

References m_FlowData, and VFlowData::setIconScale().

Referenced by QMain::slider_iconscale_valuechanged().

void QVolRendCanvas::icontail_valuechanged ( int  val  ) 

method for capturing the event of the icon tails length

Parameters:
val value of slider

Definition at line 854 of file QVolRendCanvas.cpp.

References m_FlowData, and VFlowData::setTailLength().

Referenced by QMain::slider_icontail_valuechanged().

void QVolRendCanvas::arrowspacing_valuechanged ( int  val  ) 

method for capturing the event of the arrow scale

Parameters:
val value of slider

Definition at line 859 of file QVolRendCanvas.cpp.

References computeGlyphs(), and mArrowSpacing.

Referenced by QMain::slider_arrowspacing_valuechanged().

void QVolRendCanvas::arrowalpha_changed_event ( float  val  ) 

method for capturing the event of the arrow alpha

Parameters:
val value of slider

Definition at line 865 of file QVolRendCanvas.cpp.

References m_FlowRenderer, and VFlowRenderer::setArrowAlpha().

Referenced by QMain::slider_arrowalpha_valuechanged().

void QVolRendCanvas::salpha_changed_event ( float  val  ) 

method for capturing the event of the arrow alpha

Parameters:
val value of slider

Definition at line 870 of file QVolRendCanvas.cpp.

References m_FlowRenderer, and VFlowRenderer::setStreamLineAlpha().

Referenced by QMain::slider_salpha_valuechanged().

void QVolRendCanvas::licalpha_changed_event ( float  val  ) 

method for capturing the event of the lic alpha

Parameters:
val value of slider

Definition at line 875 of file QVolRendCanvas.cpp.

References m_FlowRenderer, and VFlowRenderer::setLicAlpha().

Referenced by QMain::slider_licalpha_valuechanged().

void QVolRendCanvas::licsteps_changed_event ( int  val  ) 

method for capturing the event of the lic steps

Parameters:
val value of slider

Definition at line 880 of file QVolRendCanvas.cpp.

References m_FlowRenderer, and VFlowRenderer::setLicSteps().

Referenced by QMain::slider_licsteps_valuechanged().

void QVolRendCanvas::licstepsize_changed_event ( int  val  ) 

method for capturing the event of the lic stepsize

Parameters:
val value of slider

Definition at line 885 of file QVolRendCanvas.cpp.

References m_FlowRenderer, and VFlowRenderer::setLicStepSize().

Referenced by QMain::slider_licstepsize_valuechanged().

void QVolRendCanvas::dsep_valuechanged ( int  val  ) 

method for capturing the event of the spacing of streamlines seedpoints

Parameters:
val value of slider

Definition at line 892 of file QVolRendCanvas.cpp.

References m_FlowData, mStreamSeedSpacing, and VFlowData::setStreamlinesSeedSeparation().

Referenced by QMain::slider_dsep_valuechanged().

void QVolRendCanvas::dtest_valuechanged ( int  val  ) 

method for capturing the event of the spacing of streamlines

Parameters:
val value of slider

Definition at line 902 of file QVolRendCanvas.cpp.

References m_FlowData, mStreamTestSpacing, and VFlowData::setStreamlinesTestSeparation().

Referenced by QMain::slider_dtest_valuechanged().

void QVolRendCanvas::steps_valuechanged ( int  val  ) 

method for capturing the event of the maximal number of steps for the integration

Parameters:
val value of slider

Definition at line 912 of file QVolRendCanvas.cpp.

References m_FlowData, mStremSteps, and VFlowData::setStreamlinesSteps().

Referenced by QMain::slider_steps_valuechanged().

void QVolRendCanvas::dt_valuechanged ( int  val  ) 

method for capturing the event of the dt for streamlines integration

Parameters:
val value of slider

Definition at line 922 of file QVolRendCanvas.cpp.

References m_FlowData, mStreamDT, and VFlowData::setStreamlinesDt().

Referenced by QMain::slider_dt_valuechanged().

void QVolRendCanvas::setGlyph ( bool  val  ) 

method to set the glyph mode

Parameters:
val if glyph or triangle

Definition at line 931 of file QVolRendCanvas.cpp.

References m_FlowRenderer, and VFlowRenderer::setGlyph().

Referenced by QMain::combo_choose_arrow().

void QVolRendCanvas::resizeGL ( int  w,
int  h 
) [virtual]

method called when resizing

Parameters:
w width of window
h height of window

Definition at line 144 of file QVolRendCanvas.cpp.

References data_loaded, VFlowRenderer::getCameraAspect(), VFlowRenderer::getCameraFOV(), VFlowData::getFlowCenter(), VFlowData::getFlowExtends(), VVector::getMagnitude(), VVector::getX(), VVector::getY(), VFramebufferObject::init(), m_Distance, m_FlowData, m_FlowRenderer, m_FramebufferObject, m_LookAt, m_PanOffset, m_Position, VFlowRenderer::processGuiInput(), VFlowRenderer::resize(), VVector::setZ(), up, and view.

Referenced by QMain::watch().

void QVolRendCanvas::paintEvent ( QPaintEvent *  e  )  [virtual]

method handling the paintEvent

Parameters:
e Pointer to QPaintEvent

Definition at line 374 of file QVolRendCanvas.cpp.

void QVolRendCanvas::mousePressEvent ( QMouseEvent *  e  )  [virtual]

method handling the mousePressEvent

Parameters:
e Pointer to QMouseEvent

Definition at line 379 of file QVolRendCanvas.cpp.

References VFlowData::addIconPoint(), VFlowData::addManualSeedpoint(), VFlowData::drawStreamlinesFromSeedpoints(), VFlowRenderer::getCameraProjMatrix(), VFlowRenderer::getCameraViewMatrix(), VMouseEvent::getLeftState(), VMouseEvent::getModifiers(), getMouseEvent(), getPlaneProjection(), VMouseEvent::getPosition(), VVector::getX(), VVector::getY(), VVector::getZ(), VFramebufferObject::init(), m_EnableEvenSeedpointsSetting, m_EnableIconSetting, m_EnableSeedpointsSetting, m_FlowData, m_FlowRenderer, m_FramebufferObject, m_MouseState, m_PanOffset, m_vecPosition, VMouseEvent::MODIFIER_ALT, mStremSteps, PAN, timestep_activated, view, and ZOOM.

void QVolRendCanvas::mouseReleaseEvent ( QMouseEvent *  e  )  [virtual]

method handling the mouseReleaseEvent

Parameters:
e Pointer to QMouseEvent

Definition at line 477 of file QVolRendCanvas.cpp.

References VFramebufferObject::init(), isfirstframe, m_EnableEvenSeedpointsSetting, m_EnableSeedpointsSetting, m_FramebufferObject, m_MouseState, and NO_DRAGGING.

void QVolRendCanvas::mouseMoveEvent ( QMouseEvent *  e  )  [virtual]

method handling the mouseMoveEvent

Parameters:
e Pointer to QMouseEvent

Definition at line 501 of file QVolRendCanvas.cpp.

References VFlowRenderer::getCameraSideVector(), VFlowRenderer::getCameraUpVector(), VVector::getDot(), VMouseEvent::getModifiers(), getMouseEvent(), getPlaneProjection(), VMouseEvent::getPosition(), VVector::getX(), VVector::getY(), m_Distance, m_FlowRenderer, m_LookAt, m_MouseState, m_PanOffset, m_Position, m_vecPosition, VMouseEvent::MODIFIER_ALT, PAN, VFlowRenderer::processGuiInput(), VVector::setX(), VVector::setY(), VVector::setZ(), side, up, view, and ZOOM.

void QVolRendCanvas::mouseDoubleClickEvent ( QMouseEvent *  e  )  [virtual]

method handling the mouseDoubleClickEvent

Parameters:
e Pointer to QMouseEvent

Definition at line 561 of file QVolRendCanvas.cpp.

References getMouseEvent(), and VMouseEvent::getPosition().

void QVolRendCanvas::keyPressEvent ( QKeyEvent *  e  )  [virtual]

method handling the keyPressEvent

Parameters:
e Pointer to QKeyEvent

Definition at line 572 of file QVolRendCanvas.cpp.

void QVolRendCanvas::keyReleaseEvent ( QKeyEvent *  e  )  [virtual]

method handling the keyReleaseEvent

Parameters:
e Pointer to QKeyEvent

Definition at line 578 of file QVolRendCanvas.cpp.

const VMouseEvent QVolRendCanvas::getMouseEvent ( QMouseEvent *  e  ) 

method that converts a QMouseEvent into a VMouseEvent

Parameters:
e Ptr to QMouseEvent
Returns:
VMouseEvent

Definition at line 584 of file QVolRendCanvas.cpp.

References VMouseEvent::BUTTON_LEFT, VMouseEvent::BUTTON_MIDDLE, VMouseEvent::BUTTON_NONE, VMouseEvent::BUTTON_RIGHT, VKeyboardEvent::MODIFIER_ALT, VKeyboardEvent::MODIFIER_CTRL, VKeyboardEvent::MODIFIER_SHIFT, VMouseEvent::STATE_DOWN, and VMouseEvent::STATE_UP.

Referenced by mouseDoubleClickEvent(), mouseMoveEvent(), and mousePressEvent().

const VKeyboardEvent QVolRendCanvas::getKeyboardEvent ( QKeyEvent *  e  ) 

method that converts a QKeyEvent into a VKeybardEvent

Parameters:
e Ptr to QMouseEvent
Returns:
VKeyboardEvent

Definition at line 606 of file QVolRendCanvas.cpp.

References VKeyboardEvent::key, VKeyboardEvent::MODIFIER_ALT, VKeyboardEvent::MODIFIER_CTRL, and VKeyboardEvent::MODIFIER_SHIFT.

void QVolRendCanvas::redraw (  )  [virtual]

method handling the redraw

Definition at line 618 of file QVolRendCanvas.cpp.

References paintGL().

void QVolRendCanvas::setStreamlinesColorPtr ( VVector v  ) 

method for setting the pointer to the streamlines color

Parameters:
v Pointer to VVector

Definition at line 119 of file QVolRendCanvas.cpp.

References m_FlowRenderer, m_StreamlinesColor, and VFlowRenderer::setStreamlinesColorPtr().

Referenced by QMain::QMain().

void QVolRendCanvas::setArrowsColorPtr ( VVector v  ) 

method for setting the pointer to the arrows color

Parameters:
v Pointer to VVector

Definition at line 126 of file QVolRendCanvas.cpp.

References m_ArrowsColor, m_FlowRenderer, and VFlowRenderer::setArrowColorPtr().

Referenced by QMain::QMain().

void QVolRendCanvas::setArrowplotState ( bool  state  )  [inline]

method that activates the arrow plot

Parameters:
state is the arrow mode

Definition at line 284 of file QVolRendCanvas.h.

References arrows_activated.

Referenced by QMain::activate_arrows().

void QVolRendCanvas::setLicplotState ( bool  state  )  [inline]

method that activates the arrow plot

Parameters:
state is the arrow mode

Definition at line 293 of file QVolRendCanvas.h.

References lic_activated.

Referenced by QMain::activateLIC().

void QVolRendCanvas::enableIcons ( bool  state  )  [inline]

method that activates the arrow plot

Parameters:
state is the arrow mode

Definition at line 302 of file QVolRendCanvas.h.

References VFlowData::computeIcons(), m_EnableIconSetting, and m_FlowData.

Referenced by QMain::enableIcons().

void QVolRendCanvas::setTaperingState ( bool  state  )  [inline]

method that activates the tapering

Parameters:
state is the arrow mode

Definition at line 312 of file QVolRendCanvas.h.

References m_FlowData, VFlowData::setTaperingState(), and tapering_activated.

Referenced by QMain::activateTapering().

void QVolRendCanvas::setStrGlyphes ( bool  state  )  [inline]

method that activates the tapering

Parameters:
state is the arrow mode

Definition at line 322 of file QVolRendCanvas.h.

References m_FlowData, m_FlowRenderer, VFlowRenderer::setStrGlyphes(), and VFlowData::setStrGlyphes().

Referenced by QMain::activateStrGlyphes().

void QVolRendCanvas::setTaperingScale ( float  val  )  [inline]

method that sets tapering's scale

Parameters:
val is the factor for scaling

Definition at line 333 of file QVolRendCanvas.h.

References m_FlowData, and VFlowData::setTaperingScale().

Referenced by QMain::slider_tapering_scale().

void QVolRendCanvas::setStreamlinesState ( bool  state  )  [inline]

method that activates the streamlines plot

Parameters:
state is the arrow mode

Definition at line 342 of file QVolRendCanvas.h.

References streamlines_activated.

Referenced by QMain::activate_streamlines().

void QVolRendCanvas::setArrowScaleModus ( bool  state  )  [inline]

method that changes the arrow scale modus

Parameters:
state is the arrow scale mode

Definition at line 351 of file QVolRendCanvas.h.

References m_FlowRenderer, and VFlowRenderer::setArrowScaleMode().

Referenced by QMain::rb_arrowscale_norm_clicked().

void QVolRendCanvas::setIntegrationMethod ( bool  state  )  [inline]

method that changes the integration method modus

Parameters:
state is integration method modus

Definition at line 362 of file QVolRendCanvas.h.

References m_FlowData, and VFlowData::setIntegrationMethod().

Referenced by QMain::rb_euler_clicked().

void QVolRendCanvas::computeStreamlines (  )  [inline]

method - a callback for (re)computing the streamlines

Definition at line 370 of file QVolRendCanvas.h.

References streamlines_activated.

void QVolRendCanvas::computeCPUStreamlines (  )  [inline]

method - a callback for (re)computing the streamlines on the CPU

Definition at line 381 of file QVolRendCanvas.h.

References VFlowData::generateCPUStreamLines(), m_FlowData, mStreamSeedSpacing, mStremSteps, streamlines_activated, and timestep_activated.

Referenced by QMain::button_computecpu_clicked(), QMain::combo_seedsplacing_switched(), QMain::rb_euler_clicked(), QMain::slider_dsep_valuechanged(), QMain::slider_dt_valuechanged(), QMain::slider_dtest_valuechanged(), QMain::slider_steps_valuechanged(), and QMain::slider_timestep_valuechanged().

void QVolRendCanvas::setPlacingMethod ( int  val  )  [inline]

sets the placing method for placing seedpoinds for streamlines

Parameters:
val is the index of the activated mode

Definition at line 394 of file QVolRendCanvas.h.

References VFlowData::isIndexOfEvenPlacingMethod(), VFlowData::isIndexOfManualPlacingMethod(), m_EnableEvenSeedpointsSetting, m_EnableSeedpointsSetting, m_FlowData, and VFlowData::setPlacingMethod().

Referenced by QMain::combo_seedsplacing_switched().

bool QVolRendCanvas::getLoaded (  )  [inline]

returns if data is loaded

Returns:
data_loaded

Definition at line 425 of file QVolRendCanvas.h.

References data_loaded.

Referenced by QMain::slider_colprop_valuechanged().

void QVolRendCanvas::setTransferFunctionPtr ( VTransferFunction transfunc  ) 

sets the pointer to the Transferfunction

Parameters:
transfunc VTransferFunction Ptr

Definition at line 750 of file QVolRendCanvas.cpp.

References m_TransferFunction, and VTransferFunction::setMainCanvas().

Referenced by QMain::QMain(), and QMain::slider_colprop_valuechanged().

void QVolRendCanvas::setArrowTransferFunctionPtr ( VTransferFunction transfunc  ) 

sets the pointer to the ArrowTransferfunction

Parameters:
transfunc VTransferFunction Ptr

Definition at line 732 of file QVolRendCanvas.cpp.

References m_ArrowTransferFunction, and VTransferFunction::setMainCanvas().

Referenced by QMain::enableArrowTF().

void QVolRendCanvas::setArrowTF ( bool  val  ) 

sets if Arrow color should be out of the tf

Parameters:
val if true

Definition at line 756 of file QVolRendCanvas.cpp.

References VFlowRenderer::enableArrowTF(), and m_FlowRenderer.

Referenced by QMain::rb_arrowcol_tf().

void QVolRendCanvas::setLicTF ( bool  val  ) 

sets if Lic color should be taken out of tf

Parameters:
val if true

Definition at line 761 of file QVolRendCanvas.cpp.

References VFlowRenderer::enableLicTF(), and m_FlowRenderer.

Referenced by QMain::enableLicTF().

void QVolRendCanvas::animateLic ( bool  val  ) 

sets if Lic color should modulated

Parameters:
val if true

Definition at line 766 of file QVolRendCanvas.cpp.

References VFlowRenderer::animateLic(), and m_FlowRenderer.

Referenced by QMain::animateLic().

void QVolRendCanvas::setStrTF ( bool  val  ) 

sets if StreamLine color should be out of the tf

Parameters:
val if true

Definition at line 771 of file QVolRendCanvas.cpp.

References VFlowRenderer::enableStrTF(), and m_FlowRenderer.

Referenced by QMain::rb_strcol_tf().

void QVolRendCanvas::setStreamLineTransferFunctionPtr ( VTransferFunction transfunc  ) 

sets the pointer to the ArrowTransferfunction

Parameters:
transfunc VTransferFunction Ptr

Definition at line 738 of file QVolRendCanvas.cpp.

References m_StreamLineTransferFunction, and VTransferFunction::setMainCanvas().

Referenced by QMain::enableStreamLineTF().

void QVolRendCanvas::setLicTransferFunctionPtr ( VTransferFunction transfunc  ) 

sets the pointer to the LICTransferfunction

Parameters:
transfunc VTransferFunction Ptr

Definition at line 744 of file QVolRendCanvas.cpp.

References m_LicTransferFunction, and VTransferFunction::setMainCanvas().

Referenced by QMain::enableLicTF().

void QVolRendCanvas::modifyLight ( bool  val  ) 

sets if the light should be modified

Parameters:
val if enabled

bool QVolRendCanvas::load_data ( QString  filename,
int *  volsize 
) [virtual]

loads the chosen data

Parameters:
filename filename of data
volsize Ptr to size of Volume
Returns:
bool if success

Definition at line 624 of file QVolRendCanvas.cpp.

References computeGlyphs(), data_loaded, VFlowRenderer::getCameraAspect(), VFlowRenderer::getCameraFOV(), VFlowData::getFlowCenter(), VFlowData::getFlowExtends(), VVector::getMagnitude(), VVector::getX(), VVector::getY(), VFlowData::loadData(), m_Distance, m_FlowData, m_FlowRenderer, m_LookAt, m_PanOffset, m_Position, VFlowRenderer::processGuiInput(), VFlowRenderer::setFlowData(), VVector::setZ(), up, and view.

Referenced by QMain::load_data_file().

bool QVolRendCanvas::load_single_data ( QString  filename,
QString  datfilename 
) [virtual]

loads the chosen data

Parameters:
filename filename of data
volsize Ptr to size of Volume
Returns:
bool if success

Definition at line 673 of file QVolRendCanvas.cpp.

References computeGlyphs(), data_loaded, VFlowRenderer::getCameraAspect(), VFlowRenderer::getCameraFOV(), VFlowData::getFlowCenter(), VFlowData::getFlowExtends(), VVector::getMagnitude(), VVector::getX(), VVector::getY(), VFlowData::loadData(), m_Distance, m_FlowData, m_FlowRenderer, m_LookAt, m_PanOffset, m_Position, VFlowRenderer::processGuiInput(), VFlowRenderer::setFlowData(), VVector::setZ(), up, and view.

Referenced by QMain::load_single_file().

bool QVolRendCanvas::save_data ( std::string  filename  ) 

saves data to the given file

Parameters:
filename location of file

Definition at line 722 of file QVolRendCanvas.cpp.

Referenced by QMain::save_data_file().

void QVolRendCanvas::saveImage ( std::string  filename  )  [virtual]

saves the current image to disc

Parameters:
filename location of file

Definition at line 776 of file QVolRendCanvas.cpp.

References data_loaded, m_FramebufferObject, and VFramebufferObject::saveImage().

Referenced by QMain::save_image().

void QVolRendCanvas::saveBigImage ( std::string  filename  )  [virtual]

saves the current image to disc

Parameters:
filename location of file

Definition at line 812 of file QVolRendCanvas.cpp.

References VFramebufferObject::bind(), VFramebufferObject::init(), m_IsSaving, m_SaveFileName, m_SaveImageFBO, and VFramebufferObject::unbind().

Referenced by QMain::save_big_image().

void QVolRendCanvas::saveStreamLines ( std::string  filename  )  [virtual]

saves the Streamlines to disc

Parameters:
filename of file

Definition at line 827 of file QVolRendCanvas.cpp.

References data_loaded, m_FlowData, and VFlowData::saveStreamLines().

Referenced by QMain::saveStreamLines().

void QVolRendCanvas::loadStreamLines ( std::string  filename  )  [virtual]

loads the Streamlines to disc

Parameters:
filename of file

Definition at line 835 of file QVolRendCanvas.cpp.

References data_loaded, VFlowData::loadStreamLines(), and m_FlowData.

Referenced by QMain::loadStreamLines().

void QVolRendCanvas::setOrthoProjection ( bool  m_orth  ) 

enables/disables Orthographical projection

Parameters:
m_orth if enabled

Definition at line 727 of file QVolRendCanvas.cpp.

void QVolRendCanvas::initializeGL (  )  [protected, virtual]

method to initialise opengl

Definition at line 133 of file QVolRendCanvas.cpp.

void QVolRendCanvas::paintGL (  )  [protected, virtual]

method called when repainting

Definition at line 206 of file QVolRendCanvas.cpp.

References arrows_activated, VFramebufferObject::bind(), data_loaded, VFramebufferObject::destroy(), VFlowRenderer::draw(), VFlowRenderer::drawGlyphes(), VFlowRenderer::drawIcons(), VFlowRenderer::drawLic(), VFlowRenderer::drawStreamLines(), VFlowData::generateTextures(), VTransferFunction::getGLHandle(), VFlowRenderer::getProgramLoaded(), VFlowData::getTexturesGenerated(), VFramebufferObject::init(), lic_activated, VFlowRenderer::loadProgram(), m_ArrowTransferFunction, m_EnableIconSetting, m_FlowData, m_FlowRenderer, m_FramebufferObject, m_IsSaving, m_LicTransferFunction, m_SaveFileName, m_SaveImageFBO, m_StreamLineTransferFunction, m_TransferFunction, VFramebufferObject::renderToFullScreen(), VFramebufferObject::saveImage(), VFlowRenderer::setArrowTransferFunctionHandle(), VFlowRenderer::setLicTransferFunctionHandle(), VFlowRenderer::setStreamLineTransferFunctionHandle(), VFlowRenderer::setTransferFunctionHandle(), sliceview_active, streamlines_activated, timestep_activated, and VFramebufferObject::unbind().

Referenced by redraw().

VVector QVolRendCanvas::getSphereProjection ( float  x,
float  y 
) [private]

method that projects a window position onto a sphere

Parameters:
x dimension of the window
y dimension of the window

Definition at line 184 of file QVolRendCanvas.cpp.

References VVector::getX(), VVector::getY(), VVector::normalize(), VVector::setX(), VVector::setY(), and VVector::setZ().

Referenced by QVolRendCanvas().

VVector QVolRendCanvas::getPlaneProjection ( float  x,
float  y 
) [private]

method that projects a window position onto a plane

Parameters:
x dimension of the window
y dimension of the window

Definition at line 196 of file QVolRendCanvas.cpp.

References VVector::setX(), VVector::setY(), and VVector::setZ().

Referenced by mouseMoveEvent(), and mousePressEvent().

void QVolRendCanvas::computeGlyphs (  )  [private]

method that triggers recomputation of the glyphes

Definition at line 936 of file QVolRendCanvas.cpp.

References data_loaded, VFlowData::generateGlyphIndices(), VFlowData::getExtends(), VVector::getX(), VVector::getY(), m_FlowData, m_FlowRenderer, mArrowSize, mArrowSpacing, round(), and VFlowRenderer::setBasicGlyphSize().

Referenced by arrowscale_valuechanged(), arrowspacing_valuechanged(), load_data(), and load_single_data().

double QVolRendCanvas::round ( double  Zahl,
int  Stellen 
) [inline, private]

method for rounding a double to certain steps

Parameters:
Zahl the value to round
Stellen numbers behind the coma
Returns:
double containing the rounded value

Definition at line 596 of file QVolRendCanvas.h.

Referenced by computeGlyphs().


Member Data Documentation

VTransferFunction* QVolRendCanvas::m_TransferFunction

Pointer to the 1D Transferfunction.

Definition at line 536 of file QVolRendCanvas.h.

Referenced by paintGL(), setTransferFunctionPtr(), and ~QVolRendCanvas().

VTransferFunction* QVolRendCanvas::m_ArrowTransferFunction

Transferfunction for Arrows.

Definition at line 537 of file QVolRendCanvas.h.

Referenced by paintGL(), and setArrowTransferFunctionPtr().

VTransferFunction* QVolRendCanvas::m_StreamLineTransferFunction

Transferfunction for StreamLines.

Definition at line 538 of file QVolRendCanvas.h.

Referenced by paintGL(), and setStreamLineTransferFunctionPtr().

VTransferFunction* QVolRendCanvas::m_LicTransferFunction

Transferfunction for LIC.

Definition at line 539 of file QVolRendCanvas.h.

Referenced by paintGL(), and setLicTransferFunctionPtr().

float QVolRendCanvas::m_bgColor[4]

Color of Background.

Definition at line 541 of file QVolRendCanvas.h.

VVector QVolRendCanvas::up

Up Vector of Camera.

Definition at line 543 of file QVolRendCanvas.h.

Referenced by load_data(), load_single_data(), mouseMoveEvent(), QVolRendCanvas(), and resizeGL().

VVector QVolRendCanvas::view

View Vector of Camera.

Definition at line 544 of file QVolRendCanvas.h.

Referenced by load_data(), load_single_data(), mouseMoveEvent(), mousePressEvent(), QVolRendCanvas(), and resizeGL().

VVector QVolRendCanvas::side

Side Vector of Camera.

Definition at line 545 of file QVolRendCanvas.h.

Referenced by mouseMoveEvent(), and QVolRendCanvas().

VVector QVolRendCanvas::lup

Up Vector of Light.

Definition at line 547 of file QVolRendCanvas.h.

Referenced by QVolRendCanvas().

VVector QVolRendCanvas::lview

View Vector of Light.

Definition at line 548 of file QVolRendCanvas.h.

Referenced by QVolRendCanvas().

VVector QVolRendCanvas::lside

Side Vector of Light.

Definition at line 549 of file QVolRendCanvas.h.

Referenced by QVolRendCanvas().

VVector QVolRendCanvas::m_lightDir

Direction of Light.

Definition at line 551 of file QVolRendCanvas.h.

bool QVolRendCanvas::m_modifyLight

if light is modified.

Definition at line 552 of file QVolRendCanvas.h.

VImage QVolRendCanvas::testImage

Image only for testing.

Definition at line 554 of file QVolRendCanvas.h.

bool QVolRendCanvas::sliceview_active [private]

if sliceview is active.

Definition at line 603 of file QVolRendCanvas.h.

Referenced by paintGL(), and QVolRendCanvas().

bool QVolRendCanvas::data_loaded [private]

if data is loaded.

Definition at line 604 of file QVolRendCanvas.h.

Referenced by computeGlyphs(), getLoaded(), load_data(), load_single_data(), loadStreamLines(), paintGL(), QVolRendCanvas(), resizeGL(), saveImage(), and saveStreamLines().

int QVolRendCanvas::apply_tf_in_sv [private]

if tf should be applied in sliceviewer.

Definition at line 605 of file QVolRendCanvas.h.

Referenced by QVolRendCanvas().

int QVolRendCanvas::apply_tf_in_vv [private]

if tf should be applied in volumeviewer.

Definition at line 606 of file QVolRendCanvas.h.

Referenced by QVolRendCanvas().

VFramebufferObject* QVolRendCanvas::m_FramebufferObject [private]

Pointer to the main FBO.

Definition at line 607 of file QVolRendCanvas.h.

Referenced by mousePressEvent(), mouseReleaseEvent(), paintGL(), resizeGL(), saveImage(), and ~QVolRendCanvas().

VVector* QVolRendCanvas::m_ArrowsColor [private]

Pointer to the arrows color.

Definition at line 608 of file QVolRendCanvas.h.

Referenced by setArrowsColorPtr(), and ~QVolRendCanvas().

VVector* QVolRendCanvas::m_StreamlinesColor [private]

Pointer to the streamlines color.

Definition at line 609 of file QVolRendCanvas.h.

Referenced by setStreamlinesColorPtr(), and ~QVolRendCanvas().

VVector QVolRendCanvas::m_MouseLastPos [private]

Position of the mouse when it was last sampled.

Definition at line 610 of file QVolRendCanvas.h.

MouseState QVolRendCanvas::m_MouseState [private]

Current Mousestate.

Definition at line 612 of file QVolRendCanvas.h.

Referenced by mouseMoveEvent(), mousePressEvent(), mouseReleaseEvent(), and QVolRendCanvas().

VVector QVolRendCanvas::m_CamDat [private]

stores x,y = rotation along x,y axis, z stores the distance.

Definition at line 614 of file QVolRendCanvas.h.

VVector QVolRendCanvas::m_LookAtPoint [private]

Lookat Point of the Camera.

Definition at line 615 of file QVolRendCanvas.h.

VVector QVolRendCanvas::m_Position [private]

Position of the Camera.

Definition at line 617 of file QVolRendCanvas.h.

Referenced by load_data(), load_single_data(), mouseMoveEvent(), QVolRendCanvas(), and resizeGL().

VVector QVolRendCanvas::m_LookAt [private]

Direction where camera looks at.

Definition at line 618 of file QVolRendCanvas.h.

Referenced by load_data(), load_single_data(), mouseMoveEvent(), QVolRendCanvas(), and resizeGL().

float QVolRendCanvas::m_Distance [private]

distance of Camera to the origin.

Definition at line 619 of file QVolRendCanvas.h.

Referenced by load_data(), load_single_data(), mouseMoveEvent(), QVolRendCanvas(), and resizeGL().

VVector QVolRendCanvas::m_vecPosition [private]

Vector containing the position.

Definition at line 620 of file QVolRendCanvas.h.

Referenced by mouseMoveEvent(), mousePressEvent(), and QVolRendCanvas().

VVector QVolRendCanvas::m_PanOffset [private]

Vector containing the Panoffset.

Definition at line 621 of file QVolRendCanvas.h.

Referenced by load_data(), load_single_data(), mouseMoveEvent(), mousePressEvent(), QVolRendCanvas(), and resizeGL().

VVector QVolRendCanvas::m_Rotation [private]

Current Camera Rotation.

Definition at line 623 of file QVolRendCanvas.h.

Referenced by QVolRendCanvas().

float QVolRendCanvas::m_fAngle [private]

Current angle of Camera.

Definition at line 624 of file QVolRendCanvas.h.

Referenced by QVolRendCanvas().

bool QVolRendCanvas::m_EnableSeedpointsSetting [private]

States if the manual setting of seedpoints is enabled.

Definition at line 626 of file QVolRendCanvas.h.

Referenced by mousePressEvent(), mouseReleaseEvent(), and setPlacingMethod().

bool QVolRendCanvas::m_EnableEvenSeedpointsSetting [private]

States if the evenly spaced streamlines modus is enabled.

Definition at line 627 of file QVolRendCanvas.h.

Referenced by mousePressEvent(), mouseReleaseEvent(), and setPlacingMethod().

VFramebufferObject* QVolRendCanvas::m_SaveImageFBO [private]

Definition at line 629 of file QVolRendCanvas.h.

Referenced by paintGL(), and saveBigImage().

bool QVolRendCanvas::m_IsSaving [private]

Definition at line 630 of file QVolRendCanvas.h.

Referenced by paintGL(), and saveBigImage().

std::string QVolRendCanvas::m_SaveFileName [private]

Definition at line 631 of file QVolRendCanvas.h.

Referenced by paintGL(), and saveBigImage().

VFlowData QVolRendCanvas::m_FlowData [private]

Definition at line 633 of file QVolRendCanvas.h.

Referenced by computeCPUStreamlines(), computeGlyphs(), dsep_valuechanged(), dt_valuechanged(), dtest_valuechanged(), enableIcons(), getNumDataValues(), getNumTimeSteps(), iconscale_valuechanged(), icontail_valuechanged(), load_data(), load_single_data(), loadStreamLines(), mousePressEvent(), paintGL(), resizeGL(), saveStreamLines(), setIntegrationMethod(), setPlacingMethod(), setStrGlyphes(), setTaperingScale(), setTaperingState(), steps_valuechanged(), and timestep_changed_event().

VFlowRenderer QVolRendCanvas::m_FlowRenderer [private]

Definition at line 634 of file QVolRendCanvas.h.

Referenced by animateLic(), arrowalpha_changed_event(), coloringproperty_changed_event(), computeGlyphs(), getFlowDataMax(), getFlowDataMin(), licalpha_changed_event(), licsteps_changed_event(), licstepsize_changed_event(), load_data(), load_single_data(), mouseMoveEvent(), mousePressEvent(), paintGL(), resizeGL(), salpha_changed_event(), setArrowScaleModus(), setArrowsColorPtr(), setArrowTF(), setGlyph(), setLicTF(), setStreamlinesColorPtr(), setStrGlyphes(), and setStrTF().

float QVolRendCanvas::mArrowSize [private]

Definition at line 636 of file QVolRendCanvas.h.

Referenced by arrowscale_valuechanged(), and computeGlyphs().

float QVolRendCanvas::mArrowSpacing [private]

Definition at line 637 of file QVolRendCanvas.h.

Referenced by arrowspacing_valuechanged(), and computeGlyphs().

float QVolRendCanvas::mStreamSeedSpacing [private]

Definition at line 638 of file QVolRendCanvas.h.

Referenced by computeCPUStreamlines(), and dsep_valuechanged().

float QVolRendCanvas::mStreamTestSpacing [private]

Definition at line 639 of file QVolRendCanvas.h.

Referenced by dtest_valuechanged().

float QVolRendCanvas::mStremSteps [private]

Definition at line 640 of file QVolRendCanvas.h.

Referenced by computeCPUStreamlines(), mousePressEvent(), and steps_valuechanged().

float QVolRendCanvas::mStreamDT [private]

Definition at line 641 of file QVolRendCanvas.h.

Referenced by dt_valuechanged().

bool QVolRendCanvas::arrows_activated [private]

state of the arrow plot (activated/deactivated).

Definition at line 644 of file QVolRendCanvas.h.

Referenced by paintGL(), QVolRendCanvas(), and setArrowplotState().

bool QVolRendCanvas::streamlines_activated [private]

state of the streamlines plot (activated/deactivated).

Definition at line 645 of file QVolRendCanvas.h.

Referenced by computeCPUStreamlines(), computeStreamlines(), paintGL(), QVolRendCanvas(), and setStreamlinesState().

int QVolRendCanvas::timestep_activated [private]

activated time step number.

Definition at line 646 of file QVolRendCanvas.h.

Referenced by computeCPUStreamlines(), mousePressEvent(), paintGL(), QVolRendCanvas(), and timestep_changed_event().

int QVolRendCanvas::coloring_property [private]

activated property used for transfer function look-up.

Definition at line 647 of file QVolRendCanvas.h.

Referenced by coloringproperty_changed_event(), and QVolRendCanvas().

bool QVolRendCanvas::lic_activated [private]

activated LIC layer.

Definition at line 648 of file QVolRendCanvas.h.

Referenced by paintGL(), and setLicplotState().

bool QVolRendCanvas::tapering_activated [private]

activated tapering.

Definition at line 649 of file QVolRendCanvas.h.

Referenced by setTaperingState().

float QVolRendCanvas::m_EnableIconSetting [private]

if iconsetting is enabled.

Definition at line 651 of file QVolRendCanvas.h.

Referenced by enableIcons(), mousePressEvent(), paintGL(), and timestep_changed_event().


The documentation for this class was generated from the following files:
Generated on Mon Jan 21 01:15:16 2008 for FlowVis by  doxygen 1.5.4