VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Member Functions | Protected Member Functions | Protected Attributes | Private Types
makVrv::DtOsgTerrainOverlayManager Class Reference

Manager for setting up terrain layers in an OpenSceneGraph terrain.

Public Member Functions

 DtOsgTerrainOverlayManager (DtDe &de, osg::Node *terrain)
 
virtual ~DtOsgTerrainOverlayManager ()
 
virtual void setTerrain (osg::Node *terrain)
 
virtual void setOverlay (DtOsgTerrainOverlayOperation overlay)
 
virtual void clearOverlays ()
 
virtual void removeOverlay (DtTerrainOverlayOperation::OverlayType type)
 
virtual void setOverlayScale (DtOsgTerrainOverlayOperation::OverlayType type, const std::vector< double > &scale)
 
virtual void setOverlayOffset (DtOsgTerrainOverlayOperation::OverlayType type, const std::vector< double > &offset)
 
virtual void setWrapMode (DtOsgTerrainOverlayOperation::OverlayType type, int)
 
virtual void setBlendMode (DtOsgTerrainOverlayOperation::OverlayType type, int)
 
virtual void setRasterLayerPosition (DtOsgTerrainOverlayOperation::OverlayType type, int)
 
virtual OverlayList overlays () const
 
virtual std::string overlayDefinition (DtTerrainOverlayOperation::OverlayType type) const
 
virtual std::vector< doubleoverlayScale (DtTerrainOverlayOperation::OverlayType type) const
 
virtual std::vector< doubleoverlayOffset (DtTerrainOverlayOperation::OverlayType type) const
 
virtual DtTerrainOverlayOperation defaultOverlay (DtOsgTerrainOverlayOperation::OverlayType type)
 
virtual DtTerrainOverlayOperation currentOverlay (DtOsgTerrainOverlayOperation::OverlayType type)
 
virtual int maxTextureUnits ()
 

Protected Member Functions

void initializeGraph ()
 
void restoreGraph ()
 
virtual void applyOverlays (bool reset=true)
 

Protected Attributes

OverlayList myOverlays
 
osg::ref_ptr< osg::Node > myTerrainNode
 
osg::StateSet * myOriginalState
 
std::vector< std::string > myOriginalDescriptions
 
DtDemyDe
 
bool myInitializedFlag
 
int myMaxTextureUnits
 

Private Types

typedef std::deque
< DtOsgTerrainOverlayOperation
OverlayList
 

Member Typedef Documentation

Constructor & Destructor Documentation

makVrv::DtOsgTerrainOverlayManager::DtOsgTerrainOverlayManager ( DtDe de,
osg::Node *  terrain 
)
virtual makVrv::DtOsgTerrainOverlayManager::~DtOsgTerrainOverlayManager ( )
virtual

Member Function Documentation

virtual void makVrv::DtOsgTerrainOverlayManager::setTerrain ( osg::Node *  terrain)
virtual

Set root terrain node.

virtual void makVrv::DtOsgTerrainOverlayManager::setOverlay ( DtOsgTerrainOverlayOperation  overlay)
virtual

Add (or replace if extant) selected overlay.

virtual void makVrv::DtOsgTerrainOverlayManager::clearOverlays ( )
virtual

Remove all overlays.

virtual void makVrv::DtOsgTerrainOverlayManager::removeOverlay ( DtTerrainOverlayOperation::OverlayType  type)
virtual

Remove specified overlay.

virtual void makVrv::DtOsgTerrainOverlayManager::setOverlayScale ( DtOsgTerrainOverlayOperation::OverlayType  type,
const std::vector< double > &  scale 
)
virtual

Set scale of specified overlay.

virtual void makVrv::DtOsgTerrainOverlayManager::setOverlayOffset ( DtOsgTerrainOverlayOperation::OverlayType  type,
const std::vector< double > &  offset 
)
virtual

Set offset of specified overlay.

virtual void makVrv::DtOsgTerrainOverlayManager::setWrapMode ( DtOsgTerrainOverlayOperation::OverlayType  type,
int   
)
virtual

Set the wrap mode of the overaly.

virtual void makVrv::DtOsgTerrainOverlayManager::setBlendMode ( DtOsgTerrainOverlayOperation::OverlayType  type,
int   
)
virtual

Set the blend mode of the overaly.

virtual void makVrv::DtOsgTerrainOverlayManager::setRasterLayerPosition ( DtOsgTerrainOverlayOperation::OverlayType  type,
int   
)
virtual

Sets the raster layer position in the operations list.

virtual OverlayList makVrv::DtOsgTerrainOverlayManager::overlays ( ) const
virtual

Returns list of all active overlays.

virtual std::string makVrv::DtOsgTerrainOverlayManager::overlayDefinition ( DtTerrainOverlayOperation::OverlayType  type) const
virtual

Returns definition of specified overlay.

virtual std::vector<double> makVrv::DtOsgTerrainOverlayManager::overlayScale ( DtTerrainOverlayOperation::OverlayType  type) const
virtual

Returns scale of specified overlay.

virtual std::vector<double> makVrv::DtOsgTerrainOverlayManager::overlayOffset ( DtTerrainOverlayOperation::OverlayType  type) const
virtual

Returns offset of specified overlay.

virtual DtTerrainOverlayOperation makVrv::DtOsgTerrainOverlayManager::defaultOverlay ( DtOsgTerrainOverlayOperation::OverlayType  type)
virtual

Return a reasonable default overlay of the specified type.

virtual DtTerrainOverlayOperation makVrv::DtOsgTerrainOverlayManager::currentOverlay ( DtOsgTerrainOverlayOperation::OverlayType  type)
virtual

Return the current overlay of the specified type.

virtual int makVrv::DtOsgTerrainOverlayManager::maxTextureUnits ( )
virtual

Returns the number of texture units to use when considering raster textures including contour lines and elevations. This will attempt to (only once) to get this value from the current rendering engine. The value returned will be that value / 2 or 8 (if not found)

void makVrv::DtOsgTerrainOverlayManager::initializeGraph ( )
protected

Set up backup node before enabling any overlays.

void makVrv::DtOsgTerrainOverlayManager::restoreGraph ( )
protected

Restore scenegraph to pre-initializeGraph() state.

virtual void makVrv::DtOsgTerrainOverlayManager::applyOverlays ( bool  reset = true)
protectedvirtual

Apply all active overlays.

Member Data Documentation

OverlayList makVrv::DtOsgTerrainOverlayManager::myOverlays
protected
osg::ref_ptr<osg::Node> makVrv::DtOsgTerrainOverlayManager::myTerrainNode
protected
osg::StateSet* makVrv::DtOsgTerrainOverlayManager::myOriginalState
protected
std::vector<std::string> makVrv::DtOsgTerrainOverlayManager::myOriginalDescriptions
protected
DtDe& makVrv::DtOsgTerrainOverlayManager::myDe
protected
bool makVrv::DtOsgTerrainOverlayManager::myInitializedFlag
protected
int makVrv::DtOsgTerrainOverlayManager::myMaxTextureUnits
protected

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

Document ID: Generated on Wed Mar 27 22:49:11 EDT 2024 from SVN revision 264633
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)