Cutout Vis2012
TUWienVisualisierung2(SS2012)-AdaptiveCutaways
|
#include <Scene.h>
Static Public Attributes | |
static const int | LINES_ON = 0 |
static const int | LINES_GHOST = 1 |
static const int | LINES_OFF = 2 |
Friends | |
class | SceneNode |
Scene graph. Contains functionality for selecting nodes, setting properties specific to adaptive cutaways.
void Scene::clear | ( | ) |
Destroys the subgraph of the root and all its attached renderables.
SceneNode * Scene::createSceneNode | ( | ) |
Returns a new scene node of this scene
void Scene::deselect | ( | Renderable * | renderable) |
Marks an object as not selected
void Scene::deselectAll | ( | ) |
Deselects all objects
void Scene::enableGizmo | ( | bool | enabled) |
Enables or disables gizmo editing in the scene.
Camera * Scene::getCamera | ( | ) |
Returns the active camera in the scene.
bool Scene::getDirectionalConstraint | ( | ) |
Returns true iff the directional constraint effect is enabled.
bool Scene::getEdgeCompression | ( | ) |
Returns true iff the edge compression effect is enabled.
Renderable * Scene::getFirstSelected | ( | ) |
Returns an arbitrary selected object
float Scene::getGhostDistance | ( | ) |
Returns the value for the ghost lines effect.
Gizmo * Scene::getGizmo | ( | ) |
Returns the active gizmo in the scene.
float Scene::getGlobalAngle | ( | ) |
Returns the angle of the cutaway for objects that don't have a local angle set.
int Scene::getLineType | ( | ) |
Returns the selected line type. See setLineType
.
SceneNode * Scene::getRoot | ( | ) |
Returns the root of the scene graph
void Scene::renderAll | ( | Shader * | shader) |
Draws all renderables in the graph with the selected shader.
void Scene::renderInterface | ( | Shader * | shader) |
Render the gizmo.
void Scene::renderSelected | ( | Shader * | shader) |
Draws all selected renderables in the graph with the selected shader.
void Scene::renderSelectedThatCanCut | ( | Shader * | shader) |
Draws all selected renderables in the graph that have the canCut
property enabled with the selected shader.
void Scene::renderUnselected | ( | Shader * | shader) |
Draws all unselected renderables in the graph with the selected shader.
void Scene::renderUnselectedThatCanBeCut | ( | Shader * | shader) |
Draws all unselected renderables in the graph that have the canBeCut
property enabled with the selected shader.
void Scene::renderUnselectedThatCannotBeCut | ( | Shader * | shader) |
Draws all unselected renderables in the graph that have the canBeCut
property disabled with the selected shader.
void Scene::resetGlobalAngle | ( | ) |
Resets the angle of the cutaway for objects that don't have a local angle set to 30°.
void Scene::select | ( | Renderable * | renderable) |
Marks an object as selected
rset_iter_t Scene::selectionBegin | ( | ) |
Returns an iterator to the beginning of the list of selected objects
rset_iter_t Scene::selectionEnd | ( | ) |
Returns an iterator to the end of the list of selected objects
void Scene::setCamera | ( | Camera * | camera) |
Set the active camera in the scene.
void Scene::setDirectionalConstraint | ( | bool | c) |
Enables or disables the directional constraint effect.
void Scene::setEdgeCompression | ( | bool | c) |
Enables or disables the edge compression effect.
void Scene::setGhostDistance | ( | float | dist) |
Sets a value for the ghost lines effect. 0 = lines close to cutaway objects, 4 = maximal distance to cutaway objects
void Scene::setGlobalAngle | ( | float | angle) |
Sets the angle of the cutaway for objects that don't have a local angle set.
void Scene::setLineType | ( | int | lineType) |
Sets the line type. LINES_ON for fully visible outlines of occluding objects. LINES_GHOST for ghost lines that are only invisible in front of the cutaway objects. LINES_OFF for no lines on occluding objects.
void Scene::setSelectionCanBeCut | ( | bool | c) |
Set the canBeCut
property of every selected renderable to c
.
void Scene::setSelectionCanCut | ( | bool | c) |
Set the canCut
property of every selected renderable to c
.
void Scene::setSelectionLocalAngle | ( | float | angle) |
Set the local angle property of every selected renderable to c
.
void Scene::update | ( | double | frameLength) |
Called by the application every frame to update logic of the scene graph
void Scene::updateTransforms | ( | const glm::mat4 & | viewMatrix) |
Propagtes transformation matrices through the scene graph