Cutout Vis2012
TUWienVisualisierung2(SS2012)-AdaptiveCutaways
 All Classes Namespaces Functions Pages
Public Member Functions | Static Public Attributes | Friends | List of all members
Scene Class Reference

#include <Scene.h>

Public Member Functions

SceneNodecreateSceneNode ()
 
SceneNodegetRoot ()
 
void update (double frameLength)
 
void updateTransforms (const glm::mat4 &viewMatrix)
 
void select (Renderable *renderable)
 
void deselect (Renderable *renderable)
 
void deselectAll ()
 
RenderablegetFirstSelected ()
 
rset_iter_t selectionBegin ()
 
rset_iter_t selectionEnd ()
 
void renderAll (Shader *shader)
 
void renderSelected (Shader *shader)
 
void renderSelectedThatCanCut (Shader *shader)
 
void renderUnselected (Shader *shader)
 
void renderUnselectedThatCannotBeCut (Shader *shader)
 
void renderUnselectedThatCanBeCut (Shader *shader)
 
void setSelectionCanCut (bool c)
 
void setSelectionCanBeCut (bool c)
 
void setSelectionLocalAngle (float angle)
 
void renderInterface (Shader *shader)
 
void setCamera (Camera *camera)
 
CameragetCamera ()
 
GizmogetGizmo ()
 
void enableGizmo (bool enabled)
 
void clear ()
 
void setGlobalAngle (float angle)
 
float getGlobalAngle ()
 
void resetGlobalAngle ()
 
void setEdgeCompression (bool c)
 
bool getEdgeCompression ()
 
void setDirectionalConstraint (bool c)
 
bool getDirectionalConstraint ()
 
void setGhostDistance (float dist)
 
float getGhostDistance ()
 
void setLineType (int lineType)
 
int getLineType ()
 

Static Public Attributes

static const int LINES_ON = 0
 
static const int LINES_GHOST = 1
 
static const int LINES_OFF = 2
 

Friends

class SceneNode
 

Detailed Description

Scene graph. Contains functionality for selecting nodes, setting properties specific to adaptive cutaways.

Member Function Documentation

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


The documentation for this class was generated from the following files: