VR-Forces 4.0.4 Class Documentation
Classes | Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes
makVrv::DtSilverliningGroup Class Reference

A group node which adds a silverlining sky and will light all Children with the proper lighting parameterse. More...

Inheritance diagram for makVrv::DtSilverliningGroup:
Inheritance graph
[legend]

List of all members.

Classes

struct  CloudLayer

Public Member Functions

 DtSilverliningGroup (DtDe &de)
 CTOR.
virtual ~DtSilverliningGroup ()
 DTOR.
void installIntoChannel (DtChannel *)
void deleteGeods ()
 Tell the silverlining group to delete its specific children.
void setGeocentricMode (bool mode)
 Set the group to be in geocentric mode.
bool geocentricMode () const
 Get the simulation are in geocentric mode.
void setDateAndTime (unsigned short year, unsigned char month, unsigned char day, unsigned char hour, unsigned char minutes, double seconds, bool observeDaylightSavings)
 Setup the date and time of silver lining.
void updateTime ()
 Update the time in the atmosphere.
void setLocation (const DtVector &location)
 Set the location using a local coordinate (it will be converted to the global coordinate using the current coordinate system).
void update (const osg::Matrix &m)
 Update the lighting.
void update2D ()
 Update the lighting in 2D mode.
int cloudLayerCount () const
 Get the number of cloud layers.
void removeCloudLayer (int index)
 Remove a cloud layer.
void setFogBlend (osg::Vec4f rgbA, float density)
 Set parameters to blend with the 'automatic' fog.
void addCirroCumulus (const DtVector &position, const DtVector &bounds)
 Add cirrus clouds too the scene.
void addCirrusFibratus (const DtVector &position, const DtVector &bounds)
void addNimbostratus (const DtVector &position, const DtVector &bounds, double density)
void addCumulusMediocris (const DtVector &position, const DtVector &bounds, double density)
void addCumulusCongestus (const DtVector &position, const DtVector &bounds, double density)
void addCumulonumbusCappilatus (const DtVector &position, const DtVector &bounds, double density)
void setCloudLayerEnabled (int index, bool enabled)
void setCloudLayerPosition (int index, double xCoord, double yCoord)
void setWind (double directionDEN, double minAltitude, double maxAltitude, double velocity)
void setAirTurbidity (float turbidity)
void setVisibleDistance (float distance)
void createAtmosphere ()
void destroyAtmosphere ()
void realizeLayers ()
SilverLining::Atmosphere * findAtmosphere ()

Protected Types

typedef std::vector< CloudLayerCloudLayerList

Protected Member Functions

void addLayer (const CloudLayer &layer)
 Add layer.
void realizeLayer (CloudLayer &layer)
 Realize Layer.
void destroyLayer (DtSilverliningGroup::CloudLayer &layer)
int CalculateZoneByLongitude (double longitude)
void SetTimeAndLocation ()
virtual void traverse (osg::NodeVisitor &nv)
 Traverse.
void resetLayers ()
void forceResetLayers ()

Protected Attributes

DtDemyDe
OpenThreads::Mutex myMutex
DtReferenceEllipsoid myRefEllip
DtGeodeticCoord myGeod
SilverLining::Atmosphere * myAtmosphere
 my atmosphere.
SilverLining::LocalTime * myLocalTime
SilverLining::Location * myLocation
CloudLayerList myLayers
CloudLayerList myDestroyedLayers
osg::ref_ptr< osg::Geode > mySkyGeod
osg::ref_ptr< osg::LightSource > mySkyLight
osg::ref_ptr< osg::Geode > myCloudGeod
osg::Vec4f myFogColor
float myFogDensity
float myVisibility
float myTurbidity
bool myGeocFlag
bool myNeedsResetFlag

Detailed Description

A group node which adds a silverlining sky and will light all Children with the proper lighting parameterse.


Member Typedef Documentation

typedef std::vector<CloudLayer> makVrv::DtSilverliningGroup::CloudLayerList [protected]

Constructor & Destructor Documentation

CTOR.

DTOR.


Member Function Documentation

Tell the silverlining group to delete its specific children.

Set the group to be in geocentric mode.

Get the simulation are in geocentric mode.

void makVrv::DtSilverliningGroup::setDateAndTime ( unsigned short  year,
unsigned char  month,
unsigned char  day,
unsigned char  hour,
unsigned char  minutes,
double  seconds,
bool  observeDaylightSavings 
)

Setup the date and time of silver lining.

Update the time in the atmosphere.

Set the location using a local coordinate (it will be converted to the global coordinate using the current coordinate system).

void makVrv::DtSilverliningGroup::update ( const osg::Matrix &  m)

Update the lighting.

Update the lighting in 2D mode.

Get the number of cloud layers.

Remove a cloud layer.

void makVrv::DtSilverliningGroup::setFogBlend ( osg::Vec4f  rgbA,
float  density 
)

Set parameters to blend with the 'automatic' fog.

The the fog alpha is the blend parameter w/ 1.0 is 100% user set fog.

void makVrv::DtSilverliningGroup::addCirroCumulus ( const DtVector position,
const DtVector bounds 
)

Add cirrus clouds too the scene.

void makVrv::DtSilverliningGroup::addCirrusFibratus ( const DtVector position,
const DtVector bounds 
)
void makVrv::DtSilverliningGroup::addNimbostratus ( const DtVector position,
const DtVector bounds,
double  density 
)
void makVrv::DtSilverliningGroup::addCumulusMediocris ( const DtVector position,
const DtVector bounds,
double  density 
)
void makVrv::DtSilverliningGroup::addCumulusCongestus ( const DtVector position,
const DtVector bounds,
double  density 
)
void makVrv::DtSilverliningGroup::addCumulonumbusCappilatus ( const DtVector position,
const DtVector bounds,
double  density 
)
void makVrv::DtSilverliningGroup::setCloudLayerEnabled ( int  index,
bool  enabled 
)
void makVrv::DtSilverliningGroup::setCloudLayerPosition ( int  index,
double  xCoord,
double  yCoord 
)
void makVrv::DtSilverliningGroup::setWind ( double  directionDEN,
double  minAltitude,
double  maxAltitude,
double  velocity 
)
SilverLining::Atmosphere* makVrv::DtSilverliningGroup::findAtmosphere ( )
void makVrv::DtSilverliningGroup::addLayer ( const CloudLayer layer) [protected]

Add layer.

Realize Layer.

int makVrv::DtSilverliningGroup::CalculateZoneByLongitude ( double  longitude) [protected]
virtual void makVrv::DtSilverliningGroup::traverse ( osg::NodeVisitor &  nv) [protected, virtual]

Traverse.


Member Data Documentation

OpenThreads::Mutex makVrv::DtSilverliningGroup::myMutex [mutable, protected]
DtReferenceEllipsoid makVrv::DtSilverliningGroup::myRefEllip [protected]
DtGeodeticCoord makVrv::DtSilverliningGroup::myGeod [protected]
SilverLining::Atmosphere* makVrv::DtSilverliningGroup::myAtmosphere [protected]

my atmosphere.

SilverLining::LocalTime* makVrv::DtSilverliningGroup::myLocalTime [protected]
SilverLining::Location* makVrv::DtSilverliningGroup::myLocation [protected]
osg::ref_ptr<osg::Geode> makVrv::DtSilverliningGroup::mySkyGeod [protected]
osg::ref_ptr<osg::LightSource> makVrv::DtSilverliningGroup::mySkyLight [protected]
osg::ref_ptr<osg::Geode> makVrv::DtSilverliningGroup::myCloudGeod [protected]

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

Document ID: Generated on Fri Jun 29 16:33:32 EDT 2012 from SVN revision 116588
Copyright © 2005-2012 VT MÄK Inc. All Rights Reserved (www.mak.com)