Standard rtVTK scene renderer,. More...
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 Camera & | camera |
Holds camera for angle changes. | |
const Mesh & | mesh |
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 |
Standard rtVTK scene renderer,.
rtVTK::glRenderer::glRenderer | ( | MainWindow const * | mw, |
const Camera & | camera_, | ||
const Mesh & | mesh_, | ||
QWidget * | sa_contents | ||
) |
References alpha, ascale, cb_drawLines, cb_drawOpaque, cb_showPivot, drawLines, drawOpaque, rtVTK::MainWindow::getGLW(), glayout_glRenderer, hline0, hline1, hslider_alpha, hslider_lwidth, lbl_alpha, lbl_lwidth, lbl_rendering, lscale, sgnlRender(), showPivot, slotSetAlpha(), slotSetDrawLines(), slotSetDrawOpaque(), slotSetLineWidth(), slotSetShowPivot(), and vspacer_spacer.
References cb_drawLines, cb_drawOpaque, cb_showPivot, glayout_glRenderer, hline0, hline1, hslider_alpha, hslider_lwidth, lbl_alpha, lbl_lwidth, lbl_rendering, and vspacer_spacer.
void rtVTK::glRenderer::disableLight | ( | ) | [private] |
Clears the lights to leave OpenGL state the same.
Referenced by render().
void rtVTK::glRenderer::drawWireframe | ( | ) | [private] |
Actually renders the primitives.
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().
void rtVTK::glRenderer::init | ( | ) |
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::render | ( | ) |
Uses OpenGL to render a rasterized image of the current scene.
References camera, disableLight(), drawWireframe(), uiCore::Camera::getEye(), uiCore::Camera::getFar(), uiCore::Camera::getFOV(), uiCore::Camera::getLook(), uiCore::Camera::getNear(), uiCore::Camera::getRotPt(), uiCore::Camera::getUp(), h, init(), initLight(), showPivot, and w.
void rtVTK::glRenderer::resize | ( | uint | w_, |
uint | h_ | ||
) |
Informs glRenderer of a size change.
void rtVTK::glRenderer::sgnlRender | ( | ) | [signal] |
Referenced by glRenderer(), slotSetAlpha(), slotSetDrawLines(), slotSetDrawOpaque(), slotSetLineWidth(), and slotSetShowPivot().
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().
float rtVTK::glRenderer::alpha [private] |
Referenced by drawWireframe(), glRenderer(), and slotSetAlpha().
float rtVTK::glRenderer::ascale [private] |
Referenced by glRenderer(), and slotSetAlpha().
const Camera& rtVTK::glRenderer::camera [private] |
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().
bool rtVTK::glRenderer::drawLines [private] |
Whether or not to draw the edges.
Referenced by drawWireframe(), glRenderer(), and slotSetDrawLines().
bool rtVTK::glRenderer::drawOpaque [private] |
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] |
QFrame* rtVTK::glRenderer::hline0 [private] |
Referenced by glRenderer(), and ~glRenderer().
QFrame* rtVTK::glRenderer::hline1 [private] |
Referenced by glRenderer(), and ~glRenderer().
QSlider* rtVTK::glRenderer::hslider_alpha [private] |
Referenced by glRenderer(), slotSetDrawOpaque(), and ~glRenderer().
QSlider* rtVTK::glRenderer::hslider_lwidth [private] |
Referenced by glRenderer(), slotSetDrawLines(), and ~glRenderer().
QLabel* rtVTK::glRenderer::lbl_alpha [private] |
Referenced by glRenderer(), slotSetDrawOpaque(), and ~glRenderer().
QLabel* rtVTK::glRenderer::lbl_lwidth [private] |
Referenced by glRenderer(), slotSetDrawLines(), and ~glRenderer().
QLabel* rtVTK::glRenderer::lbl_rendering [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().
bool rtVTK::glRenderer::showPivot [private] |
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] |