rtVTK  0.6.0
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends
Public Slots | Signals | Public Member Functions | Private Member Functions | Private Attributes
rtVTK::rlRenderer Class Reference

Renders a ray tree from a *.rl file. More...

List of all members.

Public Slots

void slotDepth (int)
void slotAdvanceTree ()
void slotRegressTree ()
void slotSeek (bool)
void slotOpenFile ()
void slotCloseFile ()
void slotShowAdvancedSettings ()
void slotHideAdvancedSettings ()
void slotShowArrowheads (bool)
void slotShowEyeSphere (bool)
void slotSaveTree ()
void slotClearTree ()
void slotViewSavedTrees (bool)
void slotStepSlider (int)
void slotStepSpinBox (int)
void slotHeightSlider (int)
void slotHeightSpinBox (int)
void slotRadiusSlider (int)
void slotRadiusSpinBox (int)
void slotShowEye (bool)
void slotShowShadow (bool)
void slotShowRefl (bool)
void slotShowTrans (bool)
void slotShowDiffuse (bool)
void slotRayTimer ()

Signals

void sgnlRender ()

Public Member Functions

 rlRenderer (MainWindow *const, const Camera &, const Mesh &, QWidget *)
 ~rlRenderer ()
void init ()
 Initializes object - currently a no-op.
void render ()
 Prepares for rendering and makes render calls.
void resize (int, int)
 Informs rlRenderer of a size change.

Private Member Functions

void setupUI ()
 Initialize UI elements (from generated code)
void retranslateUI ()
void setRay (const string &)
 Sets the ray file.
void envSetup ()
 Prepares the OpenGL render state for rendering.
void envDestroy ()
 Sets OpenGL render state back to where it was previously.
void camSetup ()
 Sets up the OpenGL camera.
void graphicsSetup (QGraphicsView *, QColor)
 Helper for creating ray legend.
void drawRay (const rl::Ray &)
 Renders a ray using OpenGL.

Private Attributes

const Cameracam
 Holds the reference to the current camera instance.
const Meshmesh
 Holds the reference to the mesh.
rl::RayLoggerrlRayLogger
 Refers to rtVTK's RL object.
vector< rl::TreesavedTrees
uint savedTreesMaxDepth
rl::Tree currTree
rl::Ray ray
uint w
uint h
QShortcut * openFileShortcut
 Listens for Ctrl+r.
MainWindow *const mw
 A pointer to MainWindow must be kept for proper shortcut unclaiming.
bool seek
GLUquadricObj * obj
Visibility Parameters

Whether or not to render certain visualization objects.

bool showArrowheads
bool showCamera
bool showSavedTrees
Rendering Sizes

Dimensions for each rendered object.

float length
float step
float height
float base
Scaling Factors

Amount to scale from the Qt sliders.

float stepScale
float heightScale
float baseScale
Display Ray Types

Bools for whether or not to display each ray type.

bool showEye
bool showShadow
bool showRefl
bool showTrans
bool showDiffuse
Render Parameters

Used for parameters while rendering cylinders.

uint slices
uint stacks
Layout Widgets

The widgets that go on the plugin user interface.

QWidget * sa_contents
QLabel * lbl_rayTypes
QCheckBox * cb_eyeRays
QCheckBox * cb_shadowRays
QCheckBox * cb_rflRays
QCheckBox * cb_rfrRays
QCheckBox * cb_diffuseRays
QGraphicsView * gv_eyeRays
QGraphicsView * gv_shadowRays
QGraphicsView * gv_rflRays
QGraphicsView * gv_rfrRays
QGraphicsView * gv_diffuseRays
QLabel * lbl_rayDepth
QSpinBox * sb_rayDepth
QFrame * hline0
QLabel * lbl_treeNavigation
QPushButton * pb_previous
QPushButton * pb_next
QCheckBox * cb_seek
QFrame * hline1
QLabel * lbl_fileControl
QPushButton * pb_openFile
QPushButton * pb_closeFile
QFrame * hline2
QPushButton * pb_showAdvancedSettings
QFrame * frame_advancedSettings
QLabel * lbl_savedTrees
QPushButton * pb_saveTree
QPushButton * pb_clearTrees
QCheckBox * cb_viewSavedTrees
QFrame * hline3
QLabel * lbl_rendering
QCheckBox * cb_displayCamera
QCheckBox * cb_displayArrowheads
QLabel * lbl_stepSize
QSpinBox * sb_stepSize
QSlider * hslider_stepSize
QLabel * lbl_coneHeight
QSpinBox * sb_coneHeight
QSlider * hslider_coneHeight
QLabel * lbl_baseRadius
QSpinBox * sb_baseRadius
QSlider * hslider_baseRadius
QPushButton * pb_hideAdvancedSettings
QFrame * hline4

Detailed Description

Renders a ray tree from a *.rl file.


Constructor & Destructor Documentation

rtVTK::rlRenderer::rlRenderer ( MainWindow * const  mw_,
const Camera cam_,
const Mesh mesh_,
QWidget *  sa_contents_ 
)

Member Function Documentation

void rtVTK::rlRenderer::camSetup ( ) [private]
void rtVTK::rlRenderer::drawRay ( const rl::Ray ray) [private]
void rtVTK::rlRenderer::envDestroy ( ) [private]

Sets OpenGL render state back to where it was previously.

References obj.

Referenced by render().

void rtVTK::rlRenderer::envSetup ( ) [private]

Prepares the OpenGL render state for rendering.

References cam, uiCore::Camera::getEye(), length, obj, ray, rl::RayLogger::readRay(), rlRayLogger, rl::RayLogger::startRays(), and rl::Ray::tval.

Referenced by render().

void rtVTK::rlRenderer::graphicsSetup ( QGraphicsView *  gv,
QColor  c 
) [private]

Helper for creating ray legend.

Referenced by rlRenderer().

Initializes object - currently a no-op.

void rtVTK::rlRenderer::resize ( int  w_,
int  h_ 
)

Informs rlRenderer of a size change.

References h, and w.

void rtVTK::rlRenderer::setRay ( const string &  rlFile) [private]

Sets the ray file.

References rl::DepthFirst, rl::RayLogger::init(), rl::ReadMode, and rlRayLogger.

void rtVTK::rlRenderer::setupUI ( ) [private]
void rtVTK::rlRenderer::sgnlRender ( ) [signal]

References savedTrees, sgnlRender(), and showSavedTrees.

Referenced by rlRenderer().

References rl::RayLogger::close(), rlRayLogger, and sgnlRender().

Referenced by rlRenderer().

void rtVTK::rlRenderer::slotDepth ( int  depth_) [slot]

References sb_rayDepth, and sgnlRender().

Referenced by rlRenderer().

void rtVTK::rlRenderer::slotHeightSlider ( int  height_) [slot]
void rtVTK::rlRenderer::slotHeightSpinBox ( int  height_) [slot]
Bug:
XXX(ejq) - the presence/absence of these two lines doesn't make any visible change?

References rl::RayLogger::close(), rl::DepthFirst, rtVTK::MainWindow::getConfigDir(), rl::RayLogger::init(), rl::RayLogger::maxDepth(), mw, rl::ReadMode, rlRayLogger, sb_rayDepth, sgnlRender(), and slotAdvanceTree().

Referenced by rlRenderer(), and ~rlRenderer().

void rtVTK::rlRenderer::slotRadiusSlider ( int  base_) [slot]
void rtVTK::rlRenderer::slotRadiusSpinBox ( int  base_) [slot]

References slotAdvanceTree().

void rtVTK::rlRenderer::slotSeek ( bool  seek_) [slot]

References seek, and sgnlRender().

Referenced by rlRenderer().

void rtVTK::rlRenderer::slotShowArrowheads ( bool  showArrowheads_) [slot]

References sgnlRender(), and showArrowheads.

Referenced by rlRenderer().

void rtVTK::rlRenderer::slotShowDiffuse ( bool  value) [slot]

References sgnlRender(), and showDiffuse.

Referenced by rlRenderer().

void rtVTK::rlRenderer::slotShowEye ( bool  value) [slot]

References sgnlRender(), and showEye.

Referenced by rlRenderer().

void rtVTK::rlRenderer::slotShowEyeSphere ( bool  showCamera_) [slot]

References sgnlRender(), and showCamera.

Referenced by rlRenderer().

void rtVTK::rlRenderer::slotShowRefl ( bool  value) [slot]

References sgnlRender(), and showRefl.

Referenced by rlRenderer().

void rtVTK::rlRenderer::slotShowShadow ( bool  value) [slot]

References sgnlRender(), and showShadow.

Referenced by rlRenderer().

void rtVTK::rlRenderer::slotShowTrans ( bool  value) [slot]

References sgnlRender(), and showTrans.

Referenced by rlRenderer().

void rtVTK::rlRenderer::slotStepSlider ( int  step_) [slot]
void rtVTK::rlRenderer::slotStepSpinBox ( int  step_) [slot]
void rtVTK::rlRenderer::slotViewSavedTrees ( bool  showSavedTrees_) [slot]

Member Data Documentation

float rtVTK::rlRenderer::base [private]
const Camera& rtVTK::rlRenderer::cam [private]

Holds the reference to the current camera instance.

Referenced by camSetup(), drawRay(), and envSetup().

QCheckBox* rtVTK::rlRenderer::cb_diffuseRays [private]
QCheckBox* rtVTK::rlRenderer::cb_eyeRays [private]
QCheckBox* rtVTK::rlRenderer::cb_rflRays [private]
QCheckBox* rtVTK::rlRenderer::cb_rfrRays [private]
QCheckBox* rtVTK::rlRenderer::cb_seek [private]
QCheckBox* rtVTK::rlRenderer::cb_shadowRays [private]
QGraphicsView* rtVTK::rlRenderer::gv_diffuseRays [private]

Referenced by rlRenderer(), setupUI(), and ~rlRenderer().

QGraphicsView* rtVTK::rlRenderer::gv_eyeRays [private]

Referenced by rlRenderer(), setupUI(), and ~rlRenderer().

QGraphicsView* rtVTK::rlRenderer::gv_rflRays [private]

Referenced by rlRenderer(), setupUI(), and ~rlRenderer().

QGraphicsView* rtVTK::rlRenderer::gv_rfrRays [private]

Referenced by rlRenderer(), setupUI(), and ~rlRenderer().

QGraphicsView* rtVTK::rlRenderer::gv_shadowRays [private]

Referenced by rlRenderer(), setupUI(), and ~rlRenderer().

uint rtVTK::rlRenderer::h [private]

Referenced by camSetup(), drawRay(), and resize().

float rtVTK::rlRenderer::height [private]
QFrame* rtVTK::rlRenderer::hline0 [private]

Referenced by setupUI(), and ~rlRenderer().

QFrame* rtVTK::rlRenderer::hline1 [private]

Referenced by setupUI(), and ~rlRenderer().

QFrame* rtVTK::rlRenderer::hline2 [private]

Referenced by setupUI(), and ~rlRenderer().

QFrame* rtVTK::rlRenderer::hline3 [private]

Referenced by setupUI(), and ~rlRenderer().

QFrame* rtVTK::rlRenderer::hline4 [private]

Referenced by setupUI(), and ~rlRenderer().

Referenced by retranslateUI(), setupUI(), and ~rlRenderer().

Referenced by retranslateUI(), setupUI(), and ~rlRenderer().

Referenced by retranslateUI(), setupUI(), and ~rlRenderer().

Referenced by retranslateUI(), setupUI(), and ~rlRenderer().

Referenced by retranslateUI(), setupUI(), and ~rlRenderer().

Referenced by retranslateUI(), setupUI(), and ~rlRenderer().

Referenced by retranslateUI(), setupUI(), and ~rlRenderer().

Referenced by retranslateUI(), setupUI(), and ~rlRenderer().

Referenced by retranslateUI(), setupUI(), and ~rlRenderer().

float rtVTK::rlRenderer::length [private]

Referenced by drawRay(), and envSetup().

const Mesh& rtVTK::rlRenderer::mesh [private]

Holds the reference to the mesh.

A pointer to MainWindow must be kept for proper shortcut unclaiming.

Referenced by rlRenderer(), slotOpenFile(), and ~rlRenderer().

GLUquadricObj* rtVTK::rlRenderer::obj [private]

Referenced by drawRay(), envDestroy(), and envSetup().

Listens for Ctrl+r.

Referenced by rlRenderer(), and ~rlRenderer().

QPushButton* rtVTK::rlRenderer::pb_clearTrees [private]
QPushButton* rtVTK::rlRenderer::pb_closeFile [private]
QPushButton* rtVTK::rlRenderer::pb_next [private]
QPushButton* rtVTK::rlRenderer::pb_openFile [private]
QPushButton* rtVTK::rlRenderer::pb_previous [private]
QPushButton* rtVTK::rlRenderer::pb_saveTree [private]

Referenced by envSetup().

QWidget* rtVTK::rlRenderer::sa_contents [private]

Referenced by render(), slotClearTree(), and slotSaveTree().

Referenced by slotSaveTree(), and slotViewSavedTrees().

QSpinBox* rtVTK::rlRenderer::sb_baseRadius [private]
QSpinBox* rtVTK::rlRenderer::sb_coneHeight [private]
QSpinBox* rtVTK::rlRenderer::sb_rayDepth [private]
QSpinBox* rtVTK::rlRenderer::sb_stepSize [private]
bool rtVTK::rlRenderer::seek [private]

Referenced by drawRay(), rlRenderer(), and slotShowEye().

Referenced by drawRay(), rlRenderer(), and slotShowRefl().

Referenced by drawRay(), rlRenderer(), and slotShowShadow().

Referenced by drawRay(), rlRenderer(), and slotShowTrans().

uint rtVTK::rlRenderer::slices [private]

Referenced by drawRay().

uint rtVTK::rlRenderer::stacks [private]

Referenced by drawRay().

float rtVTK::rlRenderer::step [private]
uint rtVTK::rlRenderer::w [private]

Referenced by camSetup(), and resize().


The documentation for this class was generated from the following files:
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends