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::glRenderer Class Reference

Standard rtVTK scene renderer,. More...

List of all members.

Public Slots

void slotSetShowPivot (bool)
void slotSetDrawLines (bool)
void slotSetLineWidth (int)
void slotSetDrawOpaque (bool)
void slotSetAlpha (int)

Signals

void sgnlRender ()

Public Member Functions

 glRenderer (MainWindow const *, const Camera &, const Mesh &, QWidget *)
 ~glRenderer ()
void init ()
 Initializes OpenGL render state.
void render ()
 Uses OpenGL to render a rasterized image of the current scene.
void resize (uint, uint)
 Informs glRenderer of a size change.

Private Member Functions

void initLight (const Point &)
 Sets up the lights needed for rendering.
void disableLight ()
 Clears the lights to leave OpenGL state the same.
void drawWireframe ()
 Actually renders the primitives.

Private Attributes

uint w
uint h
const Cameracamera
 Holds camera for angle changes.
const Meshmesh
 Holds the mesh of the current scene.
bool showPivot
 Whether or not to draw the current pivot point.
bool drawLines
 Whether or not to draw the edges.
float lwidth
float lscale
bool drawOpaque
 Whether or not to draw without alpha.
float alpha
float ascale
UI Layout Elements
QGridLayout * glayout_glRenderer
QLabel * lbl_rendering
QFrame * hline0
QCheckBox * cb_drawLines
QLabel * lbl_lwidth
QSlider * hslider_lwidth
QCheckBox * cb_drawOpaque
QLabel * lbl_alpha
QSlider * hslider_alpha
QFrame * hline1
QCheckBox * cb_showPivot
QSpacerItem * vspacer_spacer

Detailed Description

Standard rtVTK scene renderer,.


Constructor & Destructor Documentation

rtVTK::glRenderer::glRenderer ( MainWindow const *  mw,
const Camera camera_,
const Mesh mesh_,
QWidget *  sa_contents 
)

Member Function Documentation

void rtVTK::glRenderer::disableLight ( ) [private]

Clears the lights to leave OpenGL state the same.

Referenced by render().

Actually renders the primitives.

Bug:
XXX(dje) - local GLUquadricObjs? hard-coded slices + stacks?
Bug:
XXX(dje) - local GLUquadricObjs? hard-coded slices + stacks?
Bug:
XXX(cpg) - "allocate/deallocate" new gluQuadric each time?

References alpha, drawLines, drawOpaque, lwidth, Core::Mesh::materials(), mesh, Core::Mesh::Vertex::n, Core::Mesh::Vertex::p, Core::Mesh::triangles(), Core::Mesh::undefined, and Core::Mesh::vertices().

Referenced by render().

Initializes OpenGL render state.

Referenced by render().

void rtVTK::glRenderer::initLight ( const Point &  eye) [private]

Sets up the lights needed for rendering.

Referenced by render().

void rtVTK::glRenderer::resize ( uint  w_,
uint  h_ 
)

Informs glRenderer of a size change.

References h, and w.

void rtVTK::glRenderer::sgnlRender ( ) [signal]
void rtVTK::glRenderer::slotSetAlpha ( int  alpha_) [slot]

References alpha, ascale, and sgnlRender().

Referenced by glRenderer().

void rtVTK::glRenderer::slotSetDrawLines ( bool  drawLines_) [slot]

References drawLines, hslider_lwidth, lbl_lwidth, and sgnlRender().

Referenced by glRenderer().

void rtVTK::glRenderer::slotSetDrawOpaque ( bool  drawOpaque_) [slot]

References drawOpaque, hslider_alpha, lbl_alpha, and sgnlRender().

Referenced by glRenderer().

void rtVTK::glRenderer::slotSetLineWidth ( int  lwidth_) [slot]

References lscale, lwidth, and sgnlRender().

Referenced by glRenderer().

void rtVTK::glRenderer::slotSetShowPivot ( bool  showPivot_) [slot]

References sgnlRender(), and showPivot.

Referenced by glRenderer().


Member Data Documentation

float rtVTK::glRenderer::alpha [private]
float rtVTK::glRenderer::ascale [private]

Referenced by glRenderer(), and slotSetAlpha().

Holds camera for angle changes.

Referenced by render().

QCheckBox* rtVTK::glRenderer::cb_drawLines [private]

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

QCheckBox* rtVTK::glRenderer::cb_drawOpaque [private]

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

QCheckBox* rtVTK::glRenderer::cb_showPivot [private]

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

Whether or not to draw the edges.

Referenced by drawWireframe(), glRenderer(), and slotSetDrawLines().

Whether or not to draw without alpha.

Referenced by drawWireframe(), glRenderer(), and slotSetDrawOpaque().

QGridLayout* rtVTK::glRenderer::glayout_glRenderer [private]

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

uint rtVTK::glRenderer::h [private]

Referenced by render(), and resize().

QFrame* rtVTK::glRenderer::hline0 [private]

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

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

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

QLabel* rtVTK::glRenderer::lbl_alpha [private]
QLabel* rtVTK::glRenderer::lbl_lwidth [private]

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

float rtVTK::glRenderer::lscale [private]

Referenced by glRenderer(), and slotSetLineWidth().

float rtVTK::glRenderer::lwidth [private]

Referenced by drawWireframe(), and slotSetLineWidth().

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

Holds the mesh of the current scene.

Referenced by drawWireframe().

Whether or not to draw the current pivot point.

Referenced by glRenderer(), render(), and slotSetShowPivot().

QSpacerItem* rtVTK::glRenderer::vspacer_spacer [private]

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

uint rtVTK::glRenderer::w [private]

Referenced by render(), and resize().


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