VR-Forces 4.5 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 DtSceneRoot &sr, bool createOnAccess)
 Add a node to the specified SceneRoot.
virtual void addRootToNode (osg::Group *node, const DtSceneRoot &sr, bool createOnAccess)
 Add the specified SceneRoot to an OSG group node.
virtual void addActiveRootToNode (osg::Group *node, const DtSceneRoot &sr, bool createOnAccess)
 Add the specified SceneRoot to an OSG group node using its active parent.
virtual void removeNodeFromRoot (osg::Node *node, const DtSceneRoot &sr)
 Remove a node from the specified SceneRoot.
virtual void removeRootFromNode (osg::Group *node, const DtSceneRoot &sr)
 Remove a scene root from an OSG group node.
virtual void removeActiveRootFromNode (osg::Group *node, const DtSceneRoot &sr)
 Remove a scene root's active parent from an OSG group node.
virtual void traverseRoot (osg::NodeVisitor &nv, const DtSceneRoot &sr)
 Traverse from the specified SceneRoot with the given visitor.
virtual void setSceneRootNodeMask (const DtSceneRoot &sr, osg::Node::NodeMask nodeMask)
 Set the nodemask of a SceneRoot.
virtual osg::Node::NodeMask sceneRootNodeMask (const DtSceneRoot &sr)
 Get the nodemask of a SceneRoot.
virtual osg::BoundingSphere sceneRootBound (const DtSceneRoot &sr)
 Get the bounding sphere of sceneRoot.
virtual osg::BoundingSphere sceneRootListBound (const DtSceneRootList &srList)
 Get the bounding sphere of list of sceneRoots.
virtual osg::Group * findSceneRootChildByName (const DtSceneRoot &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 DtSceneRoot &sr, osg::Group *group)
 Test if this group matches the given scene root.

Protected Member Functions

virtual osg::Group * getContainerRoot (const DtSceneRoot &root, bool createOnAccess)
virtual osg::Group * getActiveRoot (const DtSceneRoot &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 DtSceneRoot sr,
bool  createOnAccess 
)
virtual

Add a node to the specified SceneRoot.

virtual void makVrv::DtSceneGraph::addRootToNode ( osg::Group *  node,
const DtSceneRoot 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 DtSceneRoot 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 DtSceneRoot sr 
)
virtual

Remove a node from the specified SceneRoot.

virtual void makVrv::DtSceneGraph::removeRootFromNode ( osg::Group *  node,
const DtSceneRoot 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 DtSceneRoot 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 DtSceneRoot sr 
)
virtual

Traverse from the specified SceneRoot with the given visitor.

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

Set the nodemask of a SceneRoot.

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

Get the nodemask of a SceneRoot.

virtual osg::BoundingSphere makVrv::DtSceneGraph::sceneRootBound ( const DtSceneRoot sr)
virtual

Get the bounding sphere of sceneRoot.

virtual osg::BoundingSphere makVrv::DtSceneGraph::sceneRootListBound ( const DtSceneRootList srList)
virtual

Get the bounding sphere of list of sceneRoots.

virtual osg::Group* makVrv::DtSceneGraph::findSceneRootChildByName ( const DtSceneRoot 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 DtSceneRoot sr,
osg::Group *  group 
)
virtual

Test if this group matches the given scene root.

virtual osg::Group* makVrv::DtSceneGraph::getContainerRoot ( const DtSceneRoot root,
bool  createOnAccess 
)
protectedvirtual
virtual osg::Group* makVrv::DtSceneGraph::getActiveRoot ( const DtSceneRoot 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 Thu Mar 23 18:54:12 EDT 2017 from SVN revision 174804
Copyright © 2005-2017 VT MÄK. All Rights Reserved (www.mak.com)