Technical Documentation
LU Visualisierung - Beispiel 2, WS 2002/2003
by
Thomas Rongitsch
(e9825730@stud3.tuwien.ac.at)
Fabian Bendix
(s9825733@stud3.tuwien.ac.at)
|
|
Class Overview
CVisDlg
COpenGL
CData
CImageRenderer
CStreamLine
CTexture
CPanel
CTransferDlg
CTransferFunction
CFileReader
|
Class OverView |
|
CVisDlg |
CVisDlg is the main Window of this application.
It provides pointers to COpenGL (the rendering window), to the panel
on the right side of the application and to some other common window
controls (e.g. status bar, menu, ...). The whole communication between
the controls and the application-logic is transferred (indirectely) over
CVisDlg.
|
|
COpenGL |
COpenGL is inherited from CWnd and provides the drawing routines. This class
even holds the very important CData object, which is a private member
and can only be accessed by COpenGL.
All necessary environment variables are first controlled in COpenGL,
before they are submitted to CData and further processed (rendered).
|
|
CData |
CData is the main interface for rendering. The most important settings
for Arrowplots and Streamlines are stored in
this object. Before anything can be rendered - explicitely by calling CData::render() -
the environment for the rendering method(s) must be set. Depending on the
type of rendering CData::setDTest(...), CData::setDSep, ... must
be called. Subsequent calls of this methods will override former calls.
|
|
CImageRenderer |
CImageRenderer is the "rendering-engine" of the application. Arrow plots are directly
calculated within this class. For streamline calculations another class is needed - CStreamLine
(see below).
|
|
CStreamLine |
This class provides the functionality for calulating and storing streamlines in arbitary ways.
Some of the most important issues might be: Euler intgration, Runge Kutta 2 integration, various types
of determining (interpolating) the neighbour of a node, ...
|
|
CTexture |
This class is needed by COpenGL for loading the textures (textured Arrowplot).
|
|
CPanel |
CPanel provides the functionality for the User Interaction. In other words it implements
the GUI.
|
|
CTransferDlg |
CTranferDlg provides GUI-functionality for adjusting, loading, saving and modifying
the Transferfunction.
|
|
CTransferFunction |
This class provides the logic behind CTransferDlg. All important parameters are stored here,
and can be accessed from here.
|
|
CFileReader |
This class is called by CVisDlg (the main window) when a new file
should be loaded. The three dimensional array of data is then passed to CData.
|
|