VR-Forces Development_Version Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
List of all members | Public Member Functions | Protected Member Functions | Private Attributes
makVrv::DtSceneGraph Class Reference

Abstraction over the OSG scene graph. More...

Public Member Functions

 DtSceneGraph (DtOsgRenderer *renderer)
 CTOR.
virtual ~DtSceneGraph ()
 DTOR.
virtual void addNodeToRoot (osg::Node *node, const DtOsgRenderer::SceneRoot &sr, bool createOnAccess)
 Add a node to the specified SceneRoot.
virtual void addRootToNode (osg::Group *node, const DtOsgRenderer::SceneRoot &sr, bool createOnAccess)
 Add the specified SceneRoot to an OSG group node.
virtual void addActiveRootToNode (osg::Group *node, const DtOsgRenderer::SceneRoot &sr, bool createOnAccess)
 Add the specified SceneRoot to an OSG group node using its active parent.
virtual void removeNodeFromRoot (osg::Node *node, const DtOsgRenderer::SceneRoot &sr)
 Remove a node from the specified SceneRoot.
virtual void removeRootFromNode (osg::Group *node, const DtOsgRenderer::SceneRoot &sr)
 Remove a scene root from an OSG group node.
virtual void removeActiveRootFromNode (osg::Group *node, const DtOsgRenderer::SceneRoot &sr)
 Remove a scene root's active parent from an OSG group node.
virtual void traverseRoot (osg::NodeVisitor &nv, const DtOsgRenderer::SceneRoot &sr)
 Traverse from the specified SceneRoot with the given visitor.
virtual void setSceneRootNodeMask (const DtOsgRenderer::SceneRoot &sr, osg::Node::NodeMask nodeMask)
 Set the nodemask of a SceneRoot.
virtual osg::Node::NodeMask sceneRootNodeMask (const DtOsgRenderer::SceneRoot &sr)
 Get the nodemask of a SceneRoot.
virtual osg::BoundingSphere sceneRootBound (const DtOsgRenderer::SceneRoot &sr)
 Get the bounding sphere of sceneRoot.
virtual osg::BoundingSphere sceneRootListBound (const DtOsgRenderer::RootList &srList)
 Get the bounding sphere of list of sceneRoots.
virtual osg::Group * findSceneRootChildByName (const DtOsgRenderer::SceneRoot &parent, const std::string &rootName)
 Look up a root by name in the parent specified by SceneRoot.
virtual void setRenderRootAsSceneData (osgViewer::View &view)
 Set the sceneData of a view to the top of the scene graph.
virtual osg::Group * createModelSetRoot (int modelSet)
 Create a root node for the model set and return it.
virtual bool matchesSceneRoot (const DtOsgRenderer::SceneRoot &sr, osg::Group *group)
 Test if this group matches the given scene root.

Protected Member Functions

virtual osg::Group * getContainerRoot (const DtOsgRenderer::SceneRoot &root, bool createOnAccess)
virtual osg::Group * getActiveRoot (const DtOsgRenderer::SceneRoot &root)

Private Attributes

DtOsgRenderermyRenderer

Detailed Description

Abstraction over the OSG scene graph.

Provides basic scene graph manipulation and querying

Constructor & Destructor Documentation

makVrv::DtSceneGraph::DtSceneGraph ( DtOsgRenderer renderer)

CTOR.

virtual makVrv::DtSceneGraph::~DtSceneGraph ( )
virtual

DTOR.

Member Function Documentation

virtual void makVrv::DtSceneGraph::addNodeToRoot ( osg::Node *  node,
const DtOsgRenderer::SceneRoot sr,
bool  createOnAccess 
)
virtual

Add a node to the specified SceneRoot.

virtual void makVrv::DtSceneGraph::addRootToNode ( osg::Group *  node,
const DtOsgRenderer::SceneRoot sr,
bool  createOnAccess 
)
virtual

Add the specified SceneRoot to an OSG group node.

This should be used with caution - it creates a dependency between the caller and the scene graph's internal node structure.

virtual void makVrv::DtSceneGraph::addActiveRootToNode ( osg::Group *  node,
const DtOsgRenderer::SceneRoot sr,
bool  createOnAccess 
)
virtual

Add the specified SceneRoot to an OSG group node using its active parent.

This should be used with caution - it creates a dependency between the caller and the scene graph's internal node structure.

virtual void makVrv::DtSceneGraph::removeNodeFromRoot ( osg::Node *  node,
const DtOsgRenderer::SceneRoot sr 
)
virtual

Remove a node from the specified SceneRoot.

virtual void makVrv::DtSceneGraph::removeRootFromNode ( osg::Group *  node,
const DtOsgRenderer::SceneRoot sr 
)
virtual

Remove a scene root from an OSG group node.

This should be used with caution - it creates a dependency between the caller and the scene graph's internal node structure.

virtual void makVrv::DtSceneGraph::removeActiveRootFromNode ( osg::Group *  node,
const DtOsgRenderer::SceneRoot sr 
)
virtual

Remove a scene root's active parent from an OSG group node.

This should be used with caution - it creates a dependency between the caller and the scene graph's internal node structure.

virtual void makVrv::DtSceneGraph::traverseRoot ( osg::NodeVisitor &  nv,
const DtOsgRenderer::SceneRoot sr 
)
virtual

Traverse from the specified SceneRoot with the given visitor.

virtual void makVrv::DtSceneGraph::setSceneRootNodeMask ( const DtOsgRenderer::SceneRoot sr,
osg::Node::NodeMask  nodeMask 
)
virtual

Set the nodemask of a SceneRoot.

virtual osg::Node::NodeMask makVrv::DtSceneGraph::sceneRootNodeMask ( const DtOsgRenderer::SceneRoot sr)
virtual

Get the nodemask of a SceneRoot.

virtual osg::BoundingSphere makVrv::DtSceneGraph::sceneRootBound ( const DtOsgRenderer::SceneRoot sr)
virtual

Get the bounding sphere of sceneRoot.

virtual osg::BoundingSphere makVrv::DtSceneGraph::sceneRootListBound ( const DtOsgRenderer::RootList srList)
virtual

Get the bounding sphere of list of sceneRoots.

virtual osg::Group* makVrv::DtSceneGraph::findSceneRootChildByName ( const DtOsgRenderer::SceneRoot parent,
const std::string &  rootName 
)
virtual

Look up a root by name in the parent specified by SceneRoot.

This should not be used to access roots that are created by Vantage. It Is provided for plugins to find the roots possibly created by other plugins (such as multiple GlStudio plugins, for example)

virtual void makVrv::DtSceneGraph::setRenderRootAsSceneData ( osgViewer::View &  view)
virtual

Set the sceneData of a view to the top of the scene graph.

virtual osg::Group* makVrv::DtSceneGraph::createModelSetRoot ( int  modelSet)
virtual

Create a root node for the model set and return it.

virtual bool makVrv::DtSceneGraph::matchesSceneRoot ( const DtOsgRenderer::SceneRoot sr,
osg::Group *  group 
)
virtual

Test if this group matches the given scene root.

virtual osg::Group* makVrv::DtSceneGraph::getContainerRoot ( const DtOsgRenderer::SceneRoot root,
bool  createOnAccess 
)
protectedvirtual
virtual osg::Group* makVrv::DtSceneGraph::getActiveRoot ( const DtOsgRenderer::SceneRoot root)
protectedvirtual

Member Data Documentation

DtOsgRenderer* makVrv::DtSceneGraph::myRenderer
private

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

Document ID: Generated on Tue Mar 8 22:13:38 EST 2016 from SVN revision 162938
Copyright © 2005-2015 VT MÄK. All Rights Reserved (www.mak.com)