VR-Forces 4.10 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Member Functions | Protected Member Functions | Static Protected Member Functions | Protected Attributes
DtEnvironmentalStateManager Class Reference

Handles the environmental state of the simulation. More...

Public Member Functions

 DtEnvironmentalStateManager (DtSimManager *simManager)
 constructor More...
 
virtual ~DtEnvironmentalStateManager ()
 destructor More...
 
virtual bool init ()
 
virtual void tick ()
 
virtual DtSimManagersimManager ()
 
virtual const
DtWeatherStateProvider
weatherStateProvider () const
 The weather state is obtained through an object that defines the interface. More...
 
virtual void setWeatherStateProvider (DtWeatherStateProvider *w)
 
virtual bool globalEnvironmentSimulatedLocally () const
 
virtual bool startEnvironmentSimulationLocally ()
 Starts simulating the global environment locally on this simulation engine. More...
 
virtual double visualDetectionMinimumContrast () const
 This constant is the minimum contrast ratio often use to determine the threshold of visual detectability. More...
 
virtual void computeSoilWeatherMobilityModifiers (const DtVector &location, const DtString &soilType, double &snowEffectFraction, DtString &alternateSoil, double &alternateSoilFraction, double &tractionModifier) const
 This function computes a set of modifiers for a given soil based on weather conditions at the given location, for the purposes of changing ground vehicle mobility. More...
 
Command handlers
virtual void setWeatherState (const DtChangeWeatherCommand &command)
 Process change weather sim command. More...
 
virtual void setCloudLayerState (const DtChangeCloudLayerCommand &command)
 Calls the appropriate setXXX() functions locally, depending on what is in the command. More...
 
virtual void setUseDayNightIlluminationModel (const DtChangeTimeOfDayCommand &command)
 
Functions to get weather objects and cloud layer objects.

These should not be called by VRF components to get weather information; instead, the weather attribute accessor functions should be used.

The accessor functions make use of the weather state provider, which may have been overridden to provide weather data using a mechanism other than local weather objects and cloud layer objects.

virtual DtSharedVrfObjectReference weatherObjectFor (const DtUUID &=DtUUID::nullUUID(), bool *isGlobal=0) const
 Returns the weather object given the specified name (if blank uses global weather) More...
 
virtual DtSharedVrfObjectReference weatherObjectFor (const DtVector &localPosition, bool *isGlobal=0) const
 Returns the weather object of the highest priority at the given location. More...
 
virtual std::vector
< DtSharedVrfObjectReference
weatherObjectsFor (const DtChord &localChord) const
 Returns all weather objects that are intersected by this chord. More...
 
virtual DtSharedVrfObjectReference cloudLayerFor (const DtUUID &) const
 Returns the cloud layer object given the specified name (if blank uses global weather) More...
 
virtual DtSharedVrfObjectReference cloudLayerFor (const DtVector &localPosition) const
 Returns the cloud layer at the given location. More...
 
virtual std::vector
< DtSharedVrfObjectReference
cloudLayersFor (const DtChord &localChord) const
 Returns all cloud layer objects that are intersected by this chord. More...
 
virtual std::vector
< CloudStateSegment
cloudLayerDescriptionsAt (const DtVector &localPosition) const
 Returns simple structures describing cloud attributes for layers above the local position. More...
 
virtual DtSharedVrfObjectReference windCorridorFor (const DtUUID &) const
 Returns the wind corridror object given the specified name. More...
 
virtual DtSharedVrfObjectReference windCorridorFor (double &windHeading, const DtVector &localPosition) const
 Returns the wind corridor at the given location. More...
 
virtual std::vector
< DtSharedVrfObjectReference
windCorridorsFor (const DtChord &localChord) const
 Returns all wind corridor objects that are intersected by this chord. More...
 
virtual DtSharedVrfObjectReference airTurbulenceFor (const DtUUID &) const
 Returns the air turbulence object given the specified name. More...
 
virtual DtSharedVrfObjectReference airTurbulenceFor (const DtVector &localPosition) const
 Returns the air turbulence at the given location. More...
 
virtual std::vector
< DtSharedVrfObjectReference
airTurbulencesFor (const DtChord &localChord) const
 Returns all air turbulence objects that are intersected by this chord. More...
 
Weather Attribute Accessors

This is the visibility

virtual double airTurbidity (const DtVector &) const
 Air Turbidity. More...
 
virtual double airTemperature (const DtVector &) const
 Ambient Air Temperature (in Celsius). This varies with altitude. More...
 
virtual double airPressure (const DtVector &localPosition) const
 Air pressure at the given 3D location. In kiloPascals. More...
 
virtual double airTemperatureAltitude (const DtVector &localPosition) const
 Air temperature altitude in meters. More...
 
virtual double airPressureAltitude (const DtVector &localPosition) const
 Air pressure altitude in meters. More...
 
virtual bool airTemperatureAltitudeIsSeaLevel (const DtVector &localPosition) const
 Air temperature altitude is sea level flag. More...
 
virtual bool airPressureAltitudeIsSeaLevel (const DtVector &localPosition) const
 Air pressure altitude is sea level flag. More...
 
virtual double humidity (const DtVector &localPosition) const
 Humidity in ppmv. More...
 
virtual double precipitationIntensity (const DtVector &) const
 Precipitation Intensity. A scaled value with 1.0 = normalizedPrecipitationRate. More...
 
virtual double averagePrecipitationIntensity (const DtChord &) const
 Supply a chord in local coordinates – this will get the average precipitation intensity through a particular weather area or simply use global if it crosses no area. More...
 
virtual
DtVrfWeatherPrecipitationType 
precipitationType (const DtVector &) const
 Weather state enumeration. More...
 
virtual double windSpeed (const DtVector &) const
 Wind speed in m/s. More...
 
virtual double windDirection (const DtVector &) const
 Wind direction in radians. More...
 
virtual DtVrfTurbulenceLevel airTurbulence (const DtVector &) const
 Turbulence level. More...
 
virtual bool lightningPresent (const DtVector &localPosition) const
 Lightning Present. More...
 
virtual double visibility (const DtVector &) const
 Visibility in meters, including precipitation. More...
 
virtual int visibilityObscurant (const DtVector &) const
 Visibility in meters, including precipitation. More...
 
virtual double visibility (const DtChord &) const
 Supply a chord in local coordinates. More...
 
virtual double underwaterVisibility (const DtVector &) const
 Underwater visibility in meters. More...
 
virtual double surfaceTransparency (const DtVector &) const
 Surface transparency (percentage). More...
 
virtual double waterCurrentSpeed (const DtVector &) const
 Water velocity in meters per second. More...
 
virtual double waterCurrentDirection (const DtVector &) const
 Water direction in radians clockwise from 0 (north) More...
 
virtual double ambientWaterTemperature (const DtVector &) const
 Ambient water temperature in Celsius. More...
 
virtual double tidalOffset (const DtVector &) const
 Tidal offset in meters from the water polygons in the database. More...
 
virtual bool tidalDirection (const DtVector &) const
 Tidal direction where true represents the tide going in and false represents the tide going out. More...
 
virtual unsigned int swellState (const DtVector &) const
 Swell state according to the Douglas Sea Scale (integer 0 - 9) More...
 
virtual double swellStateDirection (const DtVector &) const
 Swell direction in in radians clockwise from 0 (north) More...
 
virtual unsigned int seaState (const DtVector &) const
 Sea state according to the Douglas Sea Scale (integer 0 - 9) More...
 
virtual double seaStateDirection (const DtVector &) const
 Sea state direction in in radians clockwise from 0 (north) More...
 
virtual double choppiness (const DtVector &) const
 Wave choppiness (0..1) More...
 
virtual double surgeDepth (const DtVector &) const
 Surge depth (meters) More...
 
virtual double fogHeight (const DtVector &) const
 The height above which the (air) visibility effect begins to diminish. More...
 
virtual DtVector fogColor (const DtVector &) const
 Air color (x = red, y = green, z = blue) when object visibility fades out at the visibility distance. More...
 
virtual double snowAccumulation (const DtVector &) const
 Snow Accumulation (meters) More...
 
virtual double snowRoadAccumulation (const DtVector &) const
 Snow Road Accumulation (meters). More...
 
virtual double rainAccumulation (const DtVector &) const
 Rain Accumulation (meters) More...
 
virtual DtObjectType globalEnvironmentObjectType () const
 
virtual DtObjectType metocServiceObjectType () const
 
virtual DtUUID initializeAndGetMetocWeatherService ()
 Initializes the METOC Service object. More...
 
virtual void setMetocEnabled (bool b)
 Sets METOC Publishing. More...
 
virtual bool metocEnabled () const
 Returns whether METOC Publishing is enabled. More...
 
virtual double thermoclineLayer1Depth (const DtVector &) const
 Thermocline depth (in meters) and permeability (0..1). More...
 
virtual double thermoclineLayer1Permeability (const DtVector &) const
 
virtual double thermoclineLayer2Depth (const DtVector &) const
 
virtual double thermoclineLayer2Permeability (const DtVector &) const
 
virtual double thermoclineLayer3Depth (const DtVector &) const
 
virtual double thermoclineLayer3Permeability (const DtVector &) const
 
virtual double thermoclineLayer4Depth (const DtVector &) const
 
virtual double thermoclineLayer4Permeability (const DtVector &) const
 
virtual double thermoclineLayer5Depth (const DtVector &) const
 
virtual double thermoclineLayer5Permeability (const DtVector &) const
 
virtual bool windSpeedAndDirectionAtAltitude (const DtVector &, double altMSL, double &windSpeed, double &windDirection) const
 
virtual bool visibilityAndObscurantAtAltitude (const DtVector &, double altMSL, double &visibility, int &obscurant) const
 Given the altitude, return the wind speed and direction. More...
 
Time functions
virtual void setDateAndTimeOfDay (double secondsPastMidnight)
 The current time of day, specified by the number of seconds past midnight. More...
 
virtual void setDateAndTimeOfDay (const DtChangeTimeOfDayCommand &command)
 
virtual double timeOfDay () const
 Time of day in seconds past midnight. (Max value 24 * 3600) More...
 
virtual double dateAndTimeOfDay () const
 Date and time of day in seconds past 00:00:00 UTC, January 1, 1970. More...
 
virtual void setTimeOfDayAdvancementSpeed (double speed)
 The current time of day advancement speed. More...
 
virtual void setTimeOfDayAdvancementSpeed (const DtChangeTimeOfDayCommand &command)
 
virtual double timeOfDayAdvancementSpeed () const
 
Illumination functions
virtual double illumination (const DtVector &localPosition) const
 Illumination in percentage (0 to 1.0) at a particular location. More...
 
virtual double expectedIllumination (const DtVector &localPosition, double dateAndTime) const
 The expected illumination in percentage (0 to 1.0) from the sky at a particular location and time. More...
 
Options for how weather attributes are calculated.
virtual void setSnowMinimumAltitude (double snow, const DtUUID &weatherArea=DtUUID::nullUUID())
 When there is snow accumulation, it is nevertheless 0 below this altitude. More...
 
virtual double snowMinimumAltitude (const DtVector &) const
 
virtual void setWindDrivenSeaStateEnabled (bool b, const DtUUID &weatherArea=DtUUID::nullUUID())
 The sea state in the GUI is taken from wind speed and direction. More...
 
virtual bool windDrivenSeaStateEnabled (const DtVector &) const
 
virtual void setUseDayNightIlluminationModel (bool)
 Whether or not to use sunrise/sunset times for illumination. More...
 
virtual bool useDayNightIlluminationModel () const
 
virtual double normalizedPrecipitationRate () const
 Sets the precipitation rate in mm/hr that corresponds to a precipitationIntensity of 1.0. More...
 
virtual void setNormalizedPrecipitationRate (const double)
 
virtual bool reduceVisibilityForPrecipitation () const
 Reduce visibility from precipitation on top of the visibility in the visibility parameter. More...
 
virtual void setReduceVisibilityForPrecipitation (const bool)
 

Protected Member Functions

virtual void createGlobalEnvironmentObject ()
 Creates a new locally simulated VRF object with the type returned from globalEnvironmentObjectType(). More...
 
virtual void processObjectAdded (const DtVrfObject *object)
 
virtual void processObjectRemoved (const DtVrfObject *object)
 
virtual
DtEnvironmentalStateSetter
createLocalEnvironmentalStateSetter ()
 
virtual
DtEnvironmentalStateSetter
createRemoteEnvironmentalStateSetter ()
 
virtual void processChangeWeatherPriorities (DtSimMessage *msg)
 
virtual void processRequestWeatherAtLocation (DtSimMessage *msg)
 
virtual void initializeIlluminationObjectsList ()
 
virtual void initializeSoilCharacteristics ()
 Copy soil names and soil weather parameters from the physicalWorld parameters. More...
 
virtual void initializeWeatherStateProvider ()
 Reset the weather object provider object–create a new one from the factory, replacing the old one if it exists. More...
 
virtual void initializeWeatherParameters ()
 Set constants relating physical quantities to class function return values, e.g. More...
 
virtual const
DtIlluminationObjectParameters
findBestMatch (const DtObjectType &objtype) const
 
Global Soil-Related Functions
virtual DtString deepWaterSoilName () const
 
virtual DtString shallowWaterSoilName () const
 
virtual DtString waterySoilName () const
 
virtual DtString drySoilName () const
 
virtual DtString roadSoilName () const
 
virtual DtString snowSoilName () const
 
virtual DtString iceSoilName () const
 
virtual double deepSnowDepth () const
 
virtual double saturationWaterDepth () const
 Depth of water accumulation before dry soil is changed completely to watery soil. More...
 
virtual double waterSlideDepth () const
 Depth of water on a hard surface that causes loss of normal traction. More...
 
virtual double waterSlideFactor () const
 Fraction [0-1] of traction retained on hard surface with water on it. More...
 
virtual double hardFreezeTemperature () const
 Temperature at which shallow water is frozen enough to drive a vehicle on. More...
 
virtual void setPriority (int p, const DtUUID &weatherArea=DtUUID::nullUUID())
 Sets/gets the priority of the weather area. This value is not used for global weather. More...
 
virtual int priority (const DtUUID &weatherArea) const
 
virtual int priority (const DtVector &) const
 
Individual cloud layer accessors.

Models should use the cloud layer descriptions instead.

virtual CloudLayerCloudType cloudType (const DtVector &localPosition) const
 
virtual double cloudAltitude (const DtVector &localPosition) const
 
virtual double cloudThickness (const DtVector &localPosition) const
 
virtual double cloudDensity (const DtVector &localPosition) const
 
Set functions for attributes of weather objects.
virtual void setAirTurbidity (double factor, const DtUUID &weatherArea=DtUUID::nullUUID())
 
virtual void setAmbientAirTemperature (double temp, const DtUUID &weatherArea=DtUUID::nullUUID())
 
virtual void setAmbientAirPressure (double pressure, const DtUUID &weatherArea=DtUUID::nullUUID())
 
virtual void setAirTemperatureAltitude (double altitude, const DtUUID &weatherArea=DtUUID::nullUUID())
 
virtual void setAirPressureAltitude (double altitude, const DtUUID &weatherArea=DtUUID::nullUUID())
 
virtual void setAirTemperatureAltitudeIsSeaLevel (bool seaLevel, const DtUUID &weatherArea=DtUUID::nullUUID())
 
virtual void setAirPressureAltitudeIsSeaLevel (bool seaLevel, const DtUUID &weatherArea=DtUUID::nullUUID())
 
virtual void setSeaLevelWaterConcentration (double water, const DtUUID &weatherArea=DtUUID::nullUUID())
 
virtual void setAirTurbulence (int current, const DtUUID &weatherArea=DtUUID::nullUUID())
 
virtual void setPrecipitationIntensity (double factor, const DtUUID &weatherArea=DtUUID::nullUUID())
 
virtual void setPrecipitationType (DtVrfWeatherPrecipitationType current, const DtUUID &weatherArea=DtUUID::nullUUID())
 
virtual void setWindSpeed (double value, const DtUUID &weatherArea=DtUUID::nullUUID())
 
virtual void setWindDirection (double value, const DtUUID &weatherArea=DtUUID::nullUUID())
 
virtual void setVisibility (double value, const DtUUID &weatherArea=DtUUID::nullUUID())
 
virtual void setUnderwaterVisibility (double underwaterVisibility, const DtUUID &weatherArea=DtUUID::nullUUID())
 
virtual void setSurfaceTransparency (double transparency, const DtUUID &weatherArea=DtUUID::nullUUID())
 
virtual void setWaterCurrentSpeed (double waterCurrentSpeed, const DtUUID &weatherArea=DtUUID::nullUUID())
 
virtual void setWaterCurrentDirection (double waterCurrentDirection, const DtUUID &weatherArea=DtUUID::nullUUID())
 
virtual void setAmbientWaterTemperature (double waterTemperature, const DtUUID &weatherArea=DtUUID::nullUUID())
 
virtual void setTidalOffset (double tidalOffset, const DtUUID &weatherArea=DtUUID::nullUUID())
 
virtual void setTidalDirection (bool tidalDirection, const DtUUID &weatherArea=DtUUID::nullUUID())
 
virtual void setSwellState (unsigned int state, const DtUUID &weatherArea=DtUUID::nullUUID())
 
virtual void setSwellStateDirection (double direction, const DtUUID &weatherArea=DtUUID::nullUUID())
 
virtual void setSeaState (unsigned int state, const DtUUID &weatherArea=DtUUID::nullUUID())
 
virtual void setSeaStateDirection (double direction, const DtUUID &weatherArea=DtUUID::nullUUID())
 
virtual void setChoppiness (double choppiness, const DtUUID &weatherArea=DtUUID::nullUUID())
 
virtual void setSurgeDepth (double depth, const DtUUID &weatherArea=DtUUID::nullUUID())
 
virtual void setFogHeight (double depth, const DtUUID &weatherArea=DtUUID::nullUUID())
 
virtual void setFogColor (const DtVector &color, const DtUUID &weatherArea=DtUUID::nullUUID())
 
virtual void setSnowAccumulation (double snow, const DtUUID &weatherArea=DtUUID::nullUUID())
 
virtual void setSnowRoadAccumulation (double snow, const DtUUID &weatherArea=DtUUID::nullUUID())
 
virtual void setRainAccumulation (double rain, const DtUUID &weatherArea=DtUUID::nullUUID())
 
virtual void setThermoclineLayer1Depth (double depth, const DtUUID &weatherArea=DtUUID::nullUUID())
 
virtual void setThermoclineLayer1Permeability (double depth, const DtUUID &weatherArea=DtUUID::nullUUID())
 
virtual void setThermoclineLayer2Depth (double depth, const DtUUID &weatherArea=DtUUID::nullUUID())
 
virtual void setThermoclineLayer2Permeability (double depth, const DtUUID &weatherArea=DtUUID::nullUUID())
 
virtual void setThermoclineLayer3Depth (double depth, const DtUUID &weatherArea=DtUUID::nullUUID())
 
virtual void setThermoclineLayer3Permeability (double depth, const DtUUID &weatherArea=DtUUID::nullUUID())
 
virtual void setThermoclineLayer4Depth (double depth, const DtUUID &weatherArea=DtUUID::nullUUID())
 
virtual void setThermoclineLayer4Permeability (double depth, const DtUUID &weatherArea=DtUUID::nullUUID())
 
virtual void setThermoclineLayer5Depth (double depth, const DtUUID &weatherArea=DtUUID::nullUUID())
 
virtual void setThermoclineLayer5Permeability (double depth, const DtUUID &weatherArea=DtUUID::nullUUID())
 
virtual void setLightingPresentForWeatherArea (bool, const DtUUID &weatherArea=DtUUID::nullUUID())
 
virtual void clearWindLevels (const DtUUID &weatherArea=DtUUID::nullUUID())
 
virtual void setWindLevels (const DtRwWindLevels &, const DtUUID &weatherArea=DtUUID::nullUUID())
 
virtual void setDeepWaterSoilName (const DtString &)
 Global soil-Related set functions. More...
 
virtual void setShallowWaterSoilName (const DtString &)
 
virtual void setDrySoilName (const DtString &)
 
virtual void setWaterySoilName (const DtString &)
 
virtual void setRoadSoilName (const DtString &)
 
virtual void setSnowSoilName (const DtString &)
 
virtual void setIceSoilName (const DtString &)
 
virtual void setDeepSnowDepth (const double)
 
virtual void setSaturationWaterDepth (const double)
 
virtual void setWaterSlideDepth (const double)
 
virtual void setWaterSlideFactor (const double)
 
virtual void setHardFreezeTemperature (const double)
 

Static Protected Member Functions

static void objectAddedCallback (const DtVrfObject *object, void *usr)
 
static void objectRemovedCallback (const DtVrfObject *object, void *usr)
 
static void changeWeatherPrioritiesCallback (DtSimMessage *msg, void *usr)
 
static void requestWeatherAtLocationCallback (DtSimMessage *msg, void *usr)
 
static void physicalWorldParametersChangedCallback (void *usr)
 

Protected Attributes

DtSimManagermySimManager
 
DtWeatherStateProvidermyWeatherStateProvider
 The object used to get weather state. More...
 
DtSharedVrfObjectReference myGlobalEnvironmentObject
 
DtRwVrfObjectReferenceList myWeatherObjects
 
DtRwVrfObjectReferenceList myWindCorridorObjects
 
DtRwVrfObjectReferenceList myAirTurbulenceObjects
 
DtEnvironmentalStateSettermyEnvironmentalStateSetter
 This is only for setting global weather – local weather will use local vrf objects. More...
 
bool myFirstTick
 
bool myCreatedMetocService
 
DtUUID myMetocWeatherServiceUuid
 
DtManagedObjectListConstPtr myIlluminationObjects
 
std::map< DtObjectType,
DtIlluminationObjectParameters
myIlluminationObjectTypes
 
DtString myDeepWaterSoilName
 Name of soil that is considered deep water. More...
 
DtString myShallowWaterSoilName
 Name of soil that is considered shallow water. More...
 
DtString myWaterySoilName
 Name of soil that is considered watery soil. More...
 
DtString myDrySoilName
 Name of soil that is dry soil–not sand or gravel. More...
 
DtString myRoadSoilName
 Name of soil that is paved road. More...
 
DtString mySnowSoilName
 Name of "soil" that is snow. More...
 
DtString myIceSoilName
 Name of "soil" that is ice. More...
 
double myDeepSnowDepth
 Depth of snow required for full snow soil effect. Meters. More...
 
double mySaturationWaterDepth
 Depth of water accumulation before dry soil is changed completely to watery soil. More...
 
DtReal myWaterSlideDepth
 Depth of water on a hard surface that causes loss of normal traction. More...
 
DtReal myWaterSlideFactor
 Fraction [0-1] of traction retained on hard surface with water on it. More...
 
double myHardFreezeTemperature
 Temperature at which shallow water is frozen enough to drive a vehicle on. More...
 
double myNormalizedPrecipitationRate
 The (rain) precipitation rate that corresponds to a value of 1.0 in a weather object or the return value of the function in this class. More...
 
DtRwBoolean myReduceVisibilityForPrecipitation
 This flag determines whether to degrade visibility due to precipitation, on top of the effect of the visibility parameter in the weather state. More...
 
bool myMetocEnabled
 This flag determines whether the net interfaces for Environmental Process objects will publish METOC objects. More...
 

Private Member Functions

 DtEnvironmentalStateManager (const DtEnvironmentalStateManager &orig)
 Not implemented. More...
 
const DtEnvironmentalStateManageroperator= (const DtEnvironmentalStateManager &orig)
 
 DtEnvironmentalStateManager ()
 

Detailed Description

Handles the environmental state of the simulation.

Currently there is only one environmental state for the whole simulation. This manager provides access to the environmental state and is responsible for updating the environmental state from the network.

As a general rule an empty weatherArea name will return weather for the global area. A vector location of zero() will also return global weather

Constructor & Destructor Documentation

DtEnvironmentalStateManager::DtEnvironmentalStateManager ( const DtEnvironmentalStateManager orig)
private

Not implemented.

DtEnvironmentalStateManager::DtEnvironmentalStateManager ( )
private
DtEnvironmentalStateManager::DtEnvironmentalStateManager ( DtSimManager simManager)

constructor

virtual DtEnvironmentalStateManager::~DtEnvironmentalStateManager ( )
virtual

destructor

Member Function Documentation

const DtEnvironmentalStateManager& DtEnvironmentalStateManager::operator= ( const DtEnvironmentalStateManager orig)
private
virtual bool DtEnvironmentalStateManager::init ( )
virtual
virtual void DtEnvironmentalStateManager::tick ( )
virtual
virtual DtSimManager* DtEnvironmentalStateManager::simManager ( )
virtual
virtual const DtWeatherStateProvider* DtEnvironmentalStateManager::weatherStateProvider ( ) const
virtual

The weather state is obtained through an object that defines the interface.

virtual void DtEnvironmentalStateManager::setWeatherStateProvider ( DtWeatherStateProvider w)
virtual
virtual bool DtEnvironmentalStateManager::globalEnvironmentSimulatedLocally ( ) const
virtual
Returns
True if the global environment is currently being simulated by this simulation engine.
virtual bool DtEnvironmentalStateManager::startEnvironmentSimulationLocally ( )
virtual

Starts simulating the global environment locally on this simulation engine.

Only starts the local simulation if there is not one (remote or local) already running.

Returns
True if successful.
virtual void DtEnvironmentalStateManager::setWeatherState ( const DtChangeWeatherCommand command)
virtual

Process change weather sim command.

This is called by the change-weather plan command. Calls the appropriate setXXX() functions locally, depending on what is in the command.

virtual void DtEnvironmentalStateManager::setCloudLayerState ( const DtChangeCloudLayerCommand command)
virtual

Calls the appropriate setXXX() functions locally, depending on what is in the command.

This method is deprecated as of 4.10. It will have no effect in the system and is here only for warning.

virtual void DtEnvironmentalStateManager::setUseDayNightIlluminationModel ( const DtChangeTimeOfDayCommand command)
virtual
virtual DtSharedVrfObjectReference DtEnvironmentalStateManager::weatherObjectFor ( const DtUUID = DtUUID::nullUUID(),
bool isGlobal = 0 
) const
virtual

Returns the weather object given the specified name (if blank uses global weather)

virtual DtSharedVrfObjectReference DtEnvironmentalStateManager::weatherObjectFor ( const DtVector localPosition,
bool isGlobal = 0 
) const
virtual

Returns the weather object of the highest priority at the given location.

If no local weather returns global weather

virtual std::vector<DtSharedVrfObjectReference> DtEnvironmentalStateManager::weatherObjectsFor ( const DtChord localChord) const
virtual

Returns all weather objects that are intersected by this chord.

The global weather object is always returned on the list unless the chord intersects only one weather object, and both endpoints are within that object.

virtual DtSharedVrfObjectReference DtEnvironmentalStateManager::cloudLayerFor ( const DtUUID ) const
virtual

Returns the cloud layer object given the specified name (if blank uses global weather)

virtual DtSharedVrfObjectReference DtEnvironmentalStateManager::cloudLayerFor ( const DtVector localPosition) const
virtual

Returns the cloud layer at the given location.

If multiple at the same location returns the first hit

virtual std::vector<DtSharedVrfObjectReference> DtEnvironmentalStateManager::cloudLayersFor ( const DtChord localChord) const
virtual

Returns all cloud layer objects that are intersected by this chord.

virtual std::vector<CloudStateSegment> DtEnvironmentalStateManager::cloudLayerDescriptionsAt ( const DtVector localPosition) const
virtual

Returns simple structures describing cloud attributes for layers above the local position.

Note that while this data may be useful for finding the cloud ceiling or something, visibility information should be obtained with the visibility functions.

virtual DtSharedVrfObjectReference DtEnvironmentalStateManager::windCorridorFor ( const DtUUID ) const
virtual

Returns the wind corridror object given the specified name.

virtual DtSharedVrfObjectReference DtEnvironmentalStateManager::windCorridorFor ( double windHeading,
const DtVector localPosition 
) const
virtual

Returns the wind corridor at the given location.

If multiple at the same location returns the first hit

virtual std::vector<DtSharedVrfObjectReference> DtEnvironmentalStateManager::windCorridorsFor ( const DtChord localChord) const
virtual

Returns all wind corridor objects that are intersected by this chord.

virtual DtSharedVrfObjectReference DtEnvironmentalStateManager::airTurbulenceFor ( const DtUUID ) const
virtual

Returns the air turbulence object given the specified name.

virtual DtSharedVrfObjectReference DtEnvironmentalStateManager::airTurbulenceFor ( const DtVector localPosition) const
virtual

Returns the air turbulence at the given location.

If multiple at the same location returns the first hit

virtual std::vector<DtSharedVrfObjectReference> DtEnvironmentalStateManager::airTurbulencesFor ( const DtChord localChord) const
virtual

Returns all air turbulence objects that are intersected by this chord.

virtual double DtEnvironmentalStateManager::visualDetectionMinimumContrast ( ) const
virtual

This constant is the minimum contrast ratio often use to determine the threshold of visual detectability.

Default value is 0.02. (That value may be too small for detection, but more appropriate for identification– see Lee and Shang https://doi.org/10.1175/JAS-D-16-0102.1)

virtual double DtEnvironmentalStateManager::airTurbidity ( const DtVector ) const
virtual

Air Turbidity.

This is the attenuation factor for air itself, not including clouds, precipitation, etc. This is calculated from airVisibility in the weather state provider.

virtual double DtEnvironmentalStateManager::airTemperature ( const DtVector ) const
virtual

Ambient Air Temperature (in Celsius). This varies with altitude.

virtual double DtEnvironmentalStateManager::airPressure ( const DtVector localPosition) const
virtual

Air pressure at the given 3D location. In kiloPascals.

virtual double DtEnvironmentalStateManager::airTemperatureAltitude ( const DtVector localPosition) const
virtual

Air temperature altitude in meters.

virtual double DtEnvironmentalStateManager::airPressureAltitude ( const DtVector localPosition) const
virtual

Air pressure altitude in meters.

virtual bool DtEnvironmentalStateManager::airTemperatureAltitudeIsSeaLevel ( const DtVector localPosition) const
virtual

Air temperature altitude is sea level flag.

virtual bool DtEnvironmentalStateManager::airPressureAltitudeIsSeaLevel ( const DtVector localPosition) const
virtual

Air pressure altitude is sea level flag.

virtual double DtEnvironmentalStateManager::humidity ( const DtVector localPosition) const
virtual

Humidity in ppmv.

virtual double DtEnvironmentalStateManager::precipitationIntensity ( const DtVector ) const
virtual

Precipitation Intensity. A scaled value with 1.0 = normalizedPrecipitationRate.

virtual double DtEnvironmentalStateManager::averagePrecipitationIntensity ( const DtChord ) const
virtual

Supply a chord in local coordinates – this will get the average precipitation intensity through a particular weather area or simply use global if it crosses no area.

virtual DtVrfWeatherPrecipitationType DtEnvironmentalStateManager::precipitationType ( const DtVector ) const
virtual

Weather state enumeration.

virtual double DtEnvironmentalStateManager::windSpeed ( const DtVector ) const
virtual

Wind speed in m/s.

virtual double DtEnvironmentalStateManager::windDirection ( const DtVector ) const
virtual

Wind direction in radians.

virtual DtVrfTurbulenceLevel DtEnvironmentalStateManager::airTurbulence ( const DtVector ) const
virtual

Turbulence level.

virtual bool DtEnvironmentalStateManager::lightningPresent ( const DtVector localPosition) const
virtual

Lightning Present.

virtual double DtEnvironmentalStateManager::visibility ( const DtVector ) const
virtual

Visibility in meters, including precipitation.

virtual int DtEnvironmentalStateManager::visibilityObscurant ( const DtVector ) const
virtual

Visibility in meters, including precipitation.

virtual double DtEnvironmentalStateManager::visibility ( const DtChord ) const
virtual

Supply a chord in local coordinates.

This function gets all of the weather objects that the chord intersects and returns the average visibility of all objects. Considers precipitation as well as base air visibility. Does not consider cloud layers at this time (VRF 4.8 IPB7). Returns the visibility in meters.

virtual double DtEnvironmentalStateManager::underwaterVisibility ( const DtVector ) const
virtual

Underwater visibility in meters.

virtual double DtEnvironmentalStateManager::surfaceTransparency ( const DtVector ) const
virtual

Surface transparency (percentage).

virtual double DtEnvironmentalStateManager::waterCurrentSpeed ( const DtVector ) const
virtual

Water velocity in meters per second.

virtual double DtEnvironmentalStateManager::waterCurrentDirection ( const DtVector ) const
virtual

Water direction in radians clockwise from 0 (north)

virtual double DtEnvironmentalStateManager::ambientWaterTemperature ( const DtVector ) const
virtual

Ambient water temperature in Celsius.

virtual double DtEnvironmentalStateManager::tidalOffset ( const DtVector ) const
virtual

Tidal offset in meters from the water polygons in the database.

virtual bool DtEnvironmentalStateManager::tidalDirection ( const DtVector ) const
virtual

Tidal direction where true represents the tide going in and false represents the tide going out.

virtual unsigned int DtEnvironmentalStateManager::swellState ( const DtVector ) const
virtual

Swell state according to the Douglas Sea Scale (integer 0 - 9)

virtual double DtEnvironmentalStateManager::swellStateDirection ( const DtVector ) const
virtual

Swell direction in in radians clockwise from 0 (north)

virtual unsigned int DtEnvironmentalStateManager::seaState ( const DtVector ) const
virtual

Sea state according to the Douglas Sea Scale (integer 0 - 9)

virtual double DtEnvironmentalStateManager::seaStateDirection ( const DtVector ) const
virtual

Sea state direction in in radians clockwise from 0 (north)

virtual double DtEnvironmentalStateManager::choppiness ( const DtVector ) const
virtual

Wave choppiness (0..1)

virtual double DtEnvironmentalStateManager::surgeDepth ( const DtVector ) const
virtual

Surge depth (meters)

virtual double DtEnvironmentalStateManager::fogHeight ( const DtVector ) const
virtual

The height above which the (air) visibility effect begins to diminish.

virtual DtVector DtEnvironmentalStateManager::fogColor ( const DtVector ) const
virtual

Air color (x = red, y = green, z = blue) when object visibility fades out at the visibility distance.

Not used in VR-Forces models. Always taken from a weather object.

virtual double DtEnvironmentalStateManager::snowAccumulation ( const DtVector ) const
virtual

Snow Accumulation (meters)

virtual double DtEnvironmentalStateManager::snowRoadAccumulation ( const DtVector ) const
virtual

Snow Road Accumulation (meters).

This represents the depth of snow on a plowed road.

virtual double DtEnvironmentalStateManager::rainAccumulation ( const DtVector ) const
virtual

Rain Accumulation (meters)

virtual DtObjectType DtEnvironmentalStateManager::globalEnvironmentObjectType ( ) const
virtual
Returns
The object type that will be used for the global environment object. Returns 1:21:0:0:1:0:0:0
virtual DtObjectType DtEnvironmentalStateManager::metocServiceObjectType ( ) const
virtual
Returns
The object type that will be used for the Metoc Service Object. Returns 1:22:0:0:1:0:0:0
virtual DtUUID DtEnvironmentalStateManager::initializeAndGetMetocWeatherService ( )
virtual

Initializes the METOC Service object.

Returns
The UUID of the Metoc Weather Service UUID
virtual void DtEnvironmentalStateManager::setMetocEnabled ( bool  b)
virtual

Sets METOC Publishing.

virtual bool DtEnvironmentalStateManager::metocEnabled ( ) const
virtual

Returns whether METOC Publishing is enabled.

virtual double DtEnvironmentalStateManager::thermoclineLayer1Depth ( const DtVector ) const
virtual

Thermocline depth (in meters) and permeability (0..1).

A depth of zero means that layer is not used.

virtual double DtEnvironmentalStateManager::thermoclineLayer1Permeability ( const DtVector ) const
virtual
virtual double DtEnvironmentalStateManager::thermoclineLayer2Depth ( const DtVector ) const
virtual
virtual double DtEnvironmentalStateManager::thermoclineLayer2Permeability ( const DtVector ) const
virtual
virtual double DtEnvironmentalStateManager::thermoclineLayer3Depth ( const DtVector ) const
virtual
virtual double DtEnvironmentalStateManager::thermoclineLayer3Permeability ( const DtVector ) const
virtual
virtual double DtEnvironmentalStateManager::thermoclineLayer4Depth ( const DtVector ) const
virtual
virtual double DtEnvironmentalStateManager::thermoclineLayer4Permeability ( const DtVector ) const
virtual
virtual double DtEnvironmentalStateManager::thermoclineLayer5Depth ( const DtVector ) const
virtual
virtual double DtEnvironmentalStateManager::thermoclineLayer5Permeability ( const DtVector ) const
virtual
virtual bool DtEnvironmentalStateManager::windSpeedAndDirectionAtAltitude ( const DtVector ,
double  altMSL,
double windSpeed,
double windDirection 
) const
virtual

Given the altitude, return the wind speed and direction

virtual bool DtEnvironmentalStateManager::visibilityAndObscurantAtAltitude ( const DtVector ,
double  altMSL,
double visibility,
int obscurant 
) const
virtual

Given the altitude, return the wind speed and direction.

virtual void DtEnvironmentalStateManager::setDateAndTimeOfDay ( double  secondsPastMidnight)
virtual

The current time of day, specified by the number of seconds past midnight.

virtual void DtEnvironmentalStateManager::setDateAndTimeOfDay ( const DtChangeTimeOfDayCommand command)
virtual
virtual double DtEnvironmentalStateManager::timeOfDay ( ) const
virtual

Time of day in seconds past midnight. (Max value 24 * 3600)

virtual double DtEnvironmentalStateManager::dateAndTimeOfDay ( ) const
virtual

Date and time of day in seconds past 00:00:00 UTC, January 1, 1970.

virtual void DtEnvironmentalStateManager::setTimeOfDayAdvancementSpeed ( double  speed)
virtual

The current time of day advancement speed.

virtual void DtEnvironmentalStateManager::setTimeOfDayAdvancementSpeed ( const DtChangeTimeOfDayCommand command)
virtual
virtual double DtEnvironmentalStateManager::timeOfDayAdvancementSpeed ( ) const
virtual
virtual double DtEnvironmentalStateManager::illumination ( const DtVector localPosition) const
virtual

Illumination in percentage (0 to 1.0) at a particular location.

Illumination cannot be set directly. It is a function of location and time of day.

virtual double DtEnvironmentalStateManager::expectedIllumination ( const DtVector localPosition,
double  dateAndTime 
) const
virtual

The expected illumination in percentage (0 to 1.0) from the sky at a particular location and time.

Ignores other light sources.

virtual void DtEnvironmentalStateManager::computeSoilWeatherMobilityModifiers ( const DtVector location,
const DtString soilType,
double snowEffectFraction,
DtString alternateSoil,
double alternateSoilFraction,
double tractionModifier 
) const
virtual

This function computes a set of modifiers for a given soil based on weather conditions at the given location, for the purposes of changing ground vehicle mobility.

Parameters
locationLocal coordinates. Note that altitude is important for determining temperature and possible snow coverage.
soilTypeThe "roughness soil type" of the ground surface. A string.
snowEffectFractionAn output [0-1] indicating what fraction of the soil factors for snow should be applied.
alternateSoilTypeAn output indicating a different type of soil that weather conditions have turned the ground to.
alternateSoilFractionAn output [0-1] indicating what fraction of the alternate soil factors should be combined with input soil type factors.
tractionModifierAn output [0-1] to be multiplied by the stoppingFactor after the above modifiers are applied to produce a net stoppingFactor.
virtual void DtEnvironmentalStateManager::setSnowMinimumAltitude ( double  snow,
const DtUUID weatherArea = DtUUID::nullUUID() 
)
virtual

When there is snow accumulation, it is nevertheless 0 below this altitude.

virtual double DtEnvironmentalStateManager::snowMinimumAltitude ( const DtVector ) const
virtual
virtual void DtEnvironmentalStateManager::setWindDrivenSeaStateEnabled ( bool  b,
const DtUUID weatherArea = DtUUID::nullUUID() 
)
virtual

The sea state in the GUI is taken from wind speed and direction.

(In the back end, it is always taken from the sea state attributes though.)

virtual bool DtEnvironmentalStateManager::windDrivenSeaStateEnabled ( const DtVector ) const
virtual
virtual void DtEnvironmentalStateManager::setUseDayNightIlluminationModel ( bool  )
virtual

Whether or not to use sunrise/sunset times for illumination.

If false, always returns maximum illumination.

virtual bool DtEnvironmentalStateManager::useDayNightIlluminationModel ( ) const
virtual
virtual double DtEnvironmentalStateManager::normalizedPrecipitationRate ( ) const
virtual

Sets the precipitation rate in mm/hr that corresponds to a precipitationIntensity of 1.0.

virtual void DtEnvironmentalStateManager::setNormalizedPrecipitationRate ( const double  )
virtual
virtual bool DtEnvironmentalStateManager::reduceVisibilityForPrecipitation ( ) const
virtual

Reduce visibility from precipitation on top of the visibility in the visibility parameter.

This should be false if the environment/weather is set such that the visibility parameter already accounts for precipitation.

virtual void DtEnvironmentalStateManager::setReduceVisibilityForPrecipitation ( const bool  )
virtual
virtual DtString DtEnvironmentalStateManager::deepWaterSoilName ( ) const
protectedvirtual
virtual DtString DtEnvironmentalStateManager::shallowWaterSoilName ( ) const
protectedvirtual
virtual DtString DtEnvironmentalStateManager::waterySoilName ( ) const
protectedvirtual
virtual DtString DtEnvironmentalStateManager::drySoilName ( ) const
protectedvirtual
virtual DtString DtEnvironmentalStateManager::roadSoilName ( ) const
protectedvirtual
virtual DtString DtEnvironmentalStateManager::snowSoilName ( ) const
protectedvirtual
virtual DtString DtEnvironmentalStateManager::iceSoilName ( ) const
protectedvirtual
virtual double DtEnvironmentalStateManager::deepSnowDepth ( ) const
protectedvirtual
virtual double DtEnvironmentalStateManager::saturationWaterDepth ( ) const
protectedvirtual

Depth of water accumulation before dry soil is changed completely to watery soil.

Meters.

virtual double DtEnvironmentalStateManager::waterSlideDepth ( ) const
protectedvirtual

Depth of water on a hard surface that causes loss of normal traction.

virtual double DtEnvironmentalStateManager::waterSlideFactor ( ) const
protectedvirtual

Fraction [0-1] of traction retained on hard surface with water on it.

virtual double DtEnvironmentalStateManager::hardFreezeTemperature ( ) const
protectedvirtual

Temperature at which shallow water is frozen enough to drive a vehicle on.

Degrees C.

virtual void DtEnvironmentalStateManager::createGlobalEnvironmentObject ( )
protectedvirtual

Creates a new locally simulated VRF object with the type returned from globalEnvironmentObjectType().

Sets this new object to myGlovalEnvironmentObject, and sets up myEnvironmentalStateSetter.

virtual void DtEnvironmentalStateManager::setPriority ( int  p,
const DtUUID weatherArea = DtUUID::nullUUID() 
)
protectedvirtual

Sets/gets the priority of the weather area. This value is not used for global weather.

virtual int DtEnvironmentalStateManager::priority ( const DtUUID weatherArea) const
protectedvirtual
virtual int DtEnvironmentalStateManager::priority ( const DtVector ) const
protectedvirtual
virtual CloudLayerCloudType DtEnvironmentalStateManager::cloudType ( const DtVector localPosition) const
protectedvirtual
virtual double DtEnvironmentalStateManager::cloudAltitude ( const DtVector localPosition) const
protectedvirtual
virtual double DtEnvironmentalStateManager::cloudThickness ( const DtVector localPosition) const
protectedvirtual
virtual double DtEnvironmentalStateManager::cloudDensity ( const DtVector localPosition) const
protectedvirtual
virtual void DtEnvironmentalStateManager::setAirTurbidity ( double  factor,
const DtUUID weatherArea = DtUUID::nullUUID() 
)
protectedvirtual
virtual void DtEnvironmentalStateManager::setAmbientAirTemperature ( double  temp,
const DtUUID weatherArea = DtUUID::nullUUID() 
)
protectedvirtual
virtual void DtEnvironmentalStateManager::setAmbientAirPressure ( double  pressure,
const DtUUID weatherArea = DtUUID::nullUUID() 
)
protectedvirtual
virtual void DtEnvironmentalStateManager::setAirTemperatureAltitude ( double  altitude,
const DtUUID weatherArea = DtUUID::nullUUID() 
)
protectedvirtual
virtual void DtEnvironmentalStateManager::setAirPressureAltitude ( double  altitude,
const DtUUID weatherArea = DtUUID::nullUUID() 
)
protectedvirtual
virtual void DtEnvironmentalStateManager::setAirTemperatureAltitudeIsSeaLevel ( bool  seaLevel,
const DtUUID weatherArea = DtUUID::nullUUID() 
)
protectedvirtual
virtual void DtEnvironmentalStateManager::setAirPressureAltitudeIsSeaLevel ( bool  seaLevel,
const DtUUID weatherArea = DtUUID::nullUUID() 
)
protectedvirtual
virtual void DtEnvironmentalStateManager::setSeaLevelWaterConcentration ( double  water,
const DtUUID weatherArea = DtUUID::nullUUID() 
)
protectedvirtual
virtual void DtEnvironmentalStateManager::setAirTurbulence ( int  current,
const DtUUID weatherArea = DtUUID::nullUUID() 
)
protectedvirtual
virtual void DtEnvironmentalStateManager::setPrecipitationIntensity ( double  factor,
const DtUUID weatherArea = DtUUID::nullUUID() 
)
protectedvirtual
virtual void DtEnvironmentalStateManager::setPrecipitationType ( DtVrfWeatherPrecipitationType  current,
const DtUUID weatherArea = DtUUID::nullUUID() 
)
protectedvirtual
virtual void DtEnvironmentalStateManager::setWindSpeed ( double  value,
const DtUUID weatherArea = DtUUID::nullUUID() 
)
protectedvirtual
virtual void DtEnvironmentalStateManager::setWindDirection ( double  value,
const DtUUID weatherArea = DtUUID::nullUUID() 
)
protectedvirtual
virtual void DtEnvironmentalStateManager::setVisibility ( double  value,
const DtUUID weatherArea = DtUUID::nullUUID() 
)
protectedvirtual
virtual void DtEnvironmentalStateManager::setUnderwaterVisibility ( double  underwaterVisibility,
const DtUUID weatherArea = DtUUID::nullUUID() 
)
protectedvirtual
virtual void DtEnvironmentalStateManager::setSurfaceTransparency ( double  transparency,
const DtUUID weatherArea = DtUUID::nullUUID() 
)
protectedvirtual
virtual void DtEnvironmentalStateManager::setWaterCurrentSpeed ( double  waterCurrentSpeed,
const DtUUID weatherArea = DtUUID::nullUUID() 
)
protectedvirtual
virtual void DtEnvironmentalStateManager::setWaterCurrentDirection ( double  waterCurrentDirection,
const DtUUID weatherArea = DtUUID::nullUUID() 
)
protectedvirtual
virtual void DtEnvironmentalStateManager::setAmbientWaterTemperature ( double  waterTemperature,
const DtUUID weatherArea = DtUUID::nullUUID() 
)
protectedvirtual
virtual void DtEnvironmentalStateManager::setTidalOffset ( double  tidalOffset,
const DtUUID weatherArea = DtUUID::nullUUID() 
)
protectedvirtual
virtual void DtEnvironmentalStateManager::setTidalDirection ( bool  tidalDirection,
const DtUUID weatherArea = DtUUID::nullUUID() 
)
protectedvirtual
virtual void DtEnvironmentalStateManager::setSwellState ( unsigned int  state,
const DtUUID weatherArea = DtUUID::nullUUID() 
)
protectedvirtual
virtual void DtEnvironmentalStateManager::setSwellStateDirection ( double  direction,
const DtUUID weatherArea = DtUUID::nullUUID() 
)
protectedvirtual
virtual void DtEnvironmentalStateManager::setSeaState ( unsigned int  state,
const DtUUID weatherArea = DtUUID::nullUUID() 
)
protectedvirtual
virtual void DtEnvironmentalStateManager::setSeaStateDirection ( double  direction,
const DtUUID weatherArea = DtUUID::nullUUID() 
)
protectedvirtual
virtual void DtEnvironmentalStateManager::setChoppiness ( double  choppiness,
const DtUUID weatherArea = DtUUID::nullUUID() 
)
protectedvirtual
virtual void DtEnvironmentalStateManager::setSurgeDepth ( double  depth,
const DtUUID weatherArea = DtUUID::nullUUID() 
)
protectedvirtual
virtual void DtEnvironmentalStateManager::setFogHeight ( double  depth,
const DtUUID weatherArea = DtUUID::nullUUID() 
)
protectedvirtual
virtual void DtEnvironmentalStateManager::setFogColor ( const DtVector color,
const DtUUID weatherArea = DtUUID::nullUUID() 
)
protectedvirtual
virtual void DtEnvironmentalStateManager::setSnowAccumulation ( double  snow,
const DtUUID weatherArea = DtUUID::nullUUID() 
)
protectedvirtual
virtual void DtEnvironmentalStateManager::setSnowRoadAccumulation ( double  snow,
const DtUUID weatherArea = DtUUID::nullUUID() 
)
protectedvirtual
virtual void DtEnvironmentalStateManager::setRainAccumulation ( double  rain,
const DtUUID weatherArea = DtUUID::nullUUID() 
)
protectedvirtual
virtual void DtEnvironmentalStateManager::setThermoclineLayer1Depth ( double  depth,
const DtUUID weatherArea = DtUUID::nullUUID() 
)
protectedvirtual
virtual void DtEnvironmentalStateManager::setThermoclineLayer1Permeability ( double  depth,
const DtUUID weatherArea = DtUUID::nullUUID() 
)
protectedvirtual
virtual void DtEnvironmentalStateManager::setThermoclineLayer2Depth ( double  depth,
const DtUUID weatherArea = DtUUID::nullUUID() 
)
protectedvirtual
virtual void DtEnvironmentalStateManager::setThermoclineLayer2Permeability ( double  depth,
const DtUUID weatherArea = DtUUID::nullUUID() 
)
protectedvirtual
virtual void DtEnvironmentalStateManager::setThermoclineLayer3Depth ( double  depth,
const DtUUID weatherArea = DtUUID::nullUUID() 
)
protectedvirtual
virtual void DtEnvironmentalStateManager::setThermoclineLayer3Permeability ( double  depth,
const DtUUID weatherArea = DtUUID::nullUUID() 
)
protectedvirtual
virtual void DtEnvironmentalStateManager::setThermoclineLayer4Depth ( double  depth,
const DtUUID weatherArea = DtUUID::nullUUID() 
)
protectedvirtual
virtual void DtEnvironmentalStateManager::setThermoclineLayer4Permeability ( double  depth,
const DtUUID weatherArea = DtUUID::nullUUID() 
)
protectedvirtual
virtual void DtEnvironmentalStateManager::setThermoclineLayer5Depth ( double  depth,
const DtUUID weatherArea = DtUUID::nullUUID() 
)
protectedvirtual
virtual void DtEnvironmentalStateManager::setThermoclineLayer5Permeability ( double  depth,
const DtUUID weatherArea = DtUUID::nullUUID() 
)
protectedvirtual
virtual void DtEnvironmentalStateManager::setLightingPresentForWeatherArea ( bool  ,
const DtUUID weatherArea = DtUUID::nullUUID() 
)
protectedvirtual
virtual void DtEnvironmentalStateManager::clearWindLevels ( const DtUUID weatherArea = DtUUID::nullUUID())
protectedvirtual
virtual void DtEnvironmentalStateManager::setWindLevels ( const DtRwWindLevels ,
const DtUUID weatherArea = DtUUID::nullUUID() 
)
protectedvirtual
virtual void DtEnvironmentalStateManager::setDeepWaterSoilName ( const DtString )
protectedvirtual

Global soil-Related set functions.

virtual void DtEnvironmentalStateManager::setShallowWaterSoilName ( const DtString )
protectedvirtual
virtual void DtEnvironmentalStateManager::setDrySoilName ( const DtString )
protectedvirtual
virtual void DtEnvironmentalStateManager::setWaterySoilName ( const DtString )
protectedvirtual
virtual void DtEnvironmentalStateManager::setRoadSoilName ( const DtString )
protectedvirtual
virtual void DtEnvironmentalStateManager::setSnowSoilName ( const DtString )
protectedvirtual
virtual void DtEnvironmentalStateManager::setIceSoilName ( const DtString )
protectedvirtual
virtual void DtEnvironmentalStateManager::setDeepSnowDepth ( const double  )
protectedvirtual
virtual void DtEnvironmentalStateManager::setSaturationWaterDepth ( const double  )
protectedvirtual
virtual void DtEnvironmentalStateManager::setWaterSlideDepth ( const double  )
protectedvirtual
virtual void DtEnvironmentalStateManager::setWaterSlideFactor ( const double  )
protectedvirtual
virtual void DtEnvironmentalStateManager::setHardFreezeTemperature ( const double  )
protectedvirtual
static void DtEnvironmentalStateManager::objectAddedCallback ( const DtVrfObject object,
void *  usr 
)
staticprotected
virtual void DtEnvironmentalStateManager::processObjectAdded ( const DtVrfObject object)
protectedvirtual
static void DtEnvironmentalStateManager::objectRemovedCallback ( const DtVrfObject object,
void *  usr 
)
staticprotected
virtual void DtEnvironmentalStateManager::processObjectRemoved ( const DtVrfObject object)
protectedvirtual
virtual DtEnvironmentalStateSetter* DtEnvironmentalStateManager::createLocalEnvironmentalStateSetter ( )
protectedvirtual
Returns
A new instance of DtLocalEnvironmentalStateSetter().
virtual DtEnvironmentalStateSetter* DtEnvironmentalStateManager::createRemoteEnvironmentalStateSetter ( )
protectedvirtual
Returns
A new instance of DtRemoteEnvironmentalStateSetter().
static void DtEnvironmentalStateManager::changeWeatherPrioritiesCallback ( DtSimMessage msg,
void *  usr 
)
staticprotected
virtual void DtEnvironmentalStateManager::processChangeWeatherPriorities ( DtSimMessage msg)
protectedvirtual
static void DtEnvironmentalStateManager::requestWeatherAtLocationCallback ( DtSimMessage msg,
void *  usr 
)
staticprotected
virtual void DtEnvironmentalStateManager::processRequestWeatherAtLocation ( DtSimMessage msg)
protectedvirtual
static void DtEnvironmentalStateManager::physicalWorldParametersChangedCallback ( void *  usr)
staticprotected
virtual void DtEnvironmentalStateManager::initializeIlluminationObjectsList ( )
protectedvirtual
virtual void DtEnvironmentalStateManager::initializeSoilCharacteristics ( )
protectedvirtual

Copy soil names and soil weather parameters from the physicalWorld parameters.

virtual void DtEnvironmentalStateManager::initializeWeatherStateProvider ( )
protectedvirtual

Reset the weather object provider object–create a new one from the factory, replacing the old one if it exists.

virtual void DtEnvironmentalStateManager::initializeWeatherParameters ( )
protectedvirtual

Set constants relating physical quantities to class function return values, e.g.

normalized precipitation rate.

virtual const DtIlluminationObjectParameters& DtEnvironmentalStateManager::findBestMatch ( const DtObjectType objtype) const
protectedvirtual

Member Data Documentation

DtSimManager* DtEnvironmentalStateManager::mySimManager
protected
DtWeatherStateProvider* DtEnvironmentalStateManager::myWeatherStateProvider
protected

The object used to get weather state.

DtSharedVrfObjectReference DtEnvironmentalStateManager::myGlobalEnvironmentObject
protected
DtRwVrfObjectReferenceList DtEnvironmentalStateManager::myWeatherObjects
protected
DtRwVrfObjectReferenceList DtEnvironmentalStateManager::myWindCorridorObjects
protected
DtRwVrfObjectReferenceList DtEnvironmentalStateManager::myAirTurbulenceObjects
protected
DtEnvironmentalStateSetter* DtEnvironmentalStateManager::myEnvironmentalStateSetter
protected

This is only for setting global weather – local weather will use local vrf objects.

bool DtEnvironmentalStateManager::myFirstTick
protected
bool DtEnvironmentalStateManager::myCreatedMetocService
protected
DtUUID DtEnvironmentalStateManager::myMetocWeatherServiceUuid
protected
DtManagedObjectListConstPtr DtEnvironmentalStateManager::myIlluminationObjects
protected
std::map<DtObjectType, DtIlluminationObjectParameters> DtEnvironmentalStateManager::myIlluminationObjectTypes
protected
DtString DtEnvironmentalStateManager::myDeepWaterSoilName
protected

Name of soil that is considered deep water.

DtString DtEnvironmentalStateManager::myShallowWaterSoilName
protected

Name of soil that is considered shallow water.

DtString DtEnvironmentalStateManager::myWaterySoilName
protected

Name of soil that is considered watery soil.

DtString DtEnvironmentalStateManager::myDrySoilName
protected

Name of soil that is dry soil–not sand or gravel.

DtString DtEnvironmentalStateManager::myRoadSoilName
protected

Name of soil that is paved road.

DtString DtEnvironmentalStateManager::mySnowSoilName
protected

Name of "soil" that is snow.

DtString DtEnvironmentalStateManager::myIceSoilName
protected

Name of "soil" that is ice.

double DtEnvironmentalStateManager::myDeepSnowDepth
protected

Depth of snow required for full snow soil effect. Meters.

double DtEnvironmentalStateManager::mySaturationWaterDepth
protected

Depth of water accumulation before dry soil is changed completely to watery soil.

Meters.

DtReal DtEnvironmentalStateManager::myWaterSlideDepth
protected

Depth of water on a hard surface that causes loss of normal traction.

DtReal DtEnvironmentalStateManager::myWaterSlideFactor
protected

Fraction [0-1] of traction retained on hard surface with water on it.

double DtEnvironmentalStateManager::myHardFreezeTemperature
protected

Temperature at which shallow water is frozen enough to drive a vehicle on.

Degrees C.

double DtEnvironmentalStateManager::myNormalizedPrecipitationRate
protected

The (rain) precipitation rate that corresponds to a value of 1.0 in a weather object or the return value of the function in this class.

DtRwBoolean DtEnvironmentalStateManager::myReduceVisibilityForPrecipitation
protected

This flag determines whether to degrade visibility due to precipitation, on top of the effect of the visibility parameter in the weather state.

Of course precipitation should degrade visibility, but the stealth viewer may use the visibility parameter as the net visibility including precipitation, in which case visibility should not be reduced further.

bool DtEnvironmentalStateManager::myMetocEnabled
protected

This flag determines whether the net interfaces for Environmental Process objects will publish METOC objects.


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

Document ID: Generated on Tue Sep 21 17:42:52 EDT 2021 from SVN revision 234861
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)