27 class DtCloudLayerRecord;
28 class DtEnvironmentListRecord;
34 class DtAgentManagerInterface;
35 class DtSkyObjectAgent;
36 class DtDynamicOceanObjectAgent;
37 class DtEventQueueInterface;
38 class DtSharedSettingsManager;
41 class DtOceanStateInterface;
42 class DtWeatherEffectsObjectAgent;
78 virtual void setFromRecord(
91 virtual void saveEnvironment(
const std::string& name);
95 virtual void setEnvironment(
const std::string& name);
99 virtual void removeEnvironment(
const std::string& name);
102 virtual void renameEnvironment(
103 const std::string& oldName,
const std::string& newName);
109 virtual void getEnvironmentNames(std::vector<std::string>& names,
110 bool includeLocalOnlyEnvironment =
false);
114 virtual void setDefaultEnvironmentName(
const std::string& name);
118 virtual std::string defaultEnvironmentName()
const;
122 virtual void setLightningPresent(
bool lightningPresent);
124 virtual bool lightningPresent()
const;
128 virtual void setAirTurbidity(
float turbidity);
130 virtual float airTurbidity()
const;
134 virtual void setVisibleDistance(
float distance);
139 virtual float visibleDistance()
const;
143 virtual void setWindSpeed(
float windSpeed);
148 virtual float windSpeed()
const;
152 virtual void setWindDirection(
float direction);
157 virtual float windDirection()
const;
167 virtual void setPrecipitationIntensity(
float intensity);
169 virtual float precipitationIntensity()
const;
182 virtual void updateOrAddElevationalConfiguration(
192 virtual bool getElevationalConfiguration(
float baseMSLAltitude,
202 virtual void removeElevationalConfiguration(
float baseMSLAltitude);
214 virtual void moveElevationalConfiguration(
215 float oldBaseMSLAltitude,
float newBaseMSLAltitude);
221 virtual void setWindSpeedAtMSLAltitude(
float mslAltitude,
float windSpeed);
228 virtual float windSpeedAtMSLAltitude(
float mslAltitude)
const;
235 virtual void setWindDirectionAtMSLAltitude(
float mslAltitude,
float windDirection);
242 virtual float windDirectionAtMSLAltitude(
float mslAltitude)
const;
249 virtual void setVisibilityDistanceAtMSLAltitude(
float mslAltitude,
float visibilityDistance);
256 virtual float visibilityDistanceAtMSLAltitude(
float mslAltitude)
const;
277 virtual void setCloudTypeAtMSLAltitude(
float mslAltitude,
CloudType cloudType);
284 virtual CloudType cloudTypeAtMSLAltitude(
float mslAltitude)
const;
290 virtual void setSkyCoverageAtMSLAltitude(
float mslAltitude,
float skyCoverage);
296 virtual float skyCoverageAtMSLAltitude(
float mslAltitude)
const;
299 virtual void setAmbientAirTemperature(
float temperature);
301 virtual float ambientAirTemperature()
const;
305 virtual void setAmbientAirPressure(
float pressure);
307 virtual float ambientAirPressure()
const;
312 virtual void setAirPressureAltitude(
float altitude);
313 virtual float airPressureAltitude()
const;
318 virtual void setAirTemperatureAltitude(
float altitude);
319 virtual float airTemperatureAltitude()
const;
324 virtual void setAirPressureAltitudeIsSeaLevel(
bool seaLevel);
325 virtual bool airPressureAltitudeIsSeaLevel()
const;
330 virtual void setAirTemperatureAltitudeIsSeaLevel(
bool seaLevel);
331 virtual bool airTemperatureAltitudeIsSeaLevel()
const;
336 virtual void setSeaLevelWaterConcentration(
float water);
337 virtual float seaLevelWaterConcentration()
const;
341 virtual void setFogHeight(
float height);
343 virtual float fogHeight()
const;
347 virtual void setFogColor(
const DtVector& color);
353 virtual void setGroundFogColor(
const DtVector& color)
override;
355 virtual DtVector groundFogColor()
const override;
366 virtual void setSeaStateDirection(
float dir);
368 virtual float seaStateDirection()
const;
372 virtual void setWindDrivenSeaState(
bool enabled);
374 virtual bool windDrivenSeaState()
const;
385 virtual void setSwellStateDirection(
float dir);
387 virtual float swellStateDirection()
const;
391 virtual void setWindFetch(
float distance);
393 virtual float windFetch()
const;
397 virtual void setSeaChoppiness(
float chop);
399 virtual float seaChoppiness()
const;
404 void setUnderwaterVisibilityEnabled(
bool enabled);
405 bool underwaterVisibilityEnabled()
const;
409 virtual void setUnderwaterVisibility(
float distance);
411 virtual float underwaterVisibility()
const;
415 virtual void setWaterSurfaceTransparency(
float normalizedValue);
417 virtual float waterSurfaceTransparency()
const;
421 virtual void setSurgeDepth(
float meters);
423 virtual float surgeDepth()
const;
427 virtual void setDepthOffset(
float meters);
429 virtual float depthOffset()
const;
433 virtual void setAmbientWaterTemperature(
float temperature);
435 virtual float ambientWaterTemperature()
const;
439 virtual void setWaterCurrentSpeed(
float speed);
441 virtual float waterCurrentSpeed()
const;
445 virtual void setWaterCurrentDirection(
float direction);
448 virtual float waterCurrentDirection()
const;
452 virtual void setTidalOffset(
float meters);
454 virtual float tidalOffset()
const;
458 virtual void setTidalDirection(
bool inOut);
460 virtual bool tidalDirection()
const;
464 virtual void setThermoclineDepth(
unsigned int layer,
float depth);
466 virtual float thermoclineDepth(
unsigned int layer)
const;
470 virtual void setThermoclinePermeability(
unsigned int layer,
float permeability);
472 virtual float thermoclinePermeability(
unsigned int layer)
const;
476 virtual void setGroundSnowAccumulation(
float depth);
478 virtual float groundSnowAccumulation()
const;
482 virtual void setRoadSnowAccumulation(
float depth);
484 virtual float roadSnowAccumulation()
const;
488 virtual void setSnowMinimumElevation(
float elevation);
490 virtual float snowMinimumElevation()
const;
495 virtual void setSnowElevationTransition(
float elevation);
496 virtual float snowElevationTransition()
const;
500 virtual void setGroundRainAccumulation(
float depth);
502 virtual float groundRainAccumulation()
const;
511 virtual void removeLocalWind(
DtUniqueID id)
const;
520 virtual void setLocalWindSpeed(
DtUniqueID id,
float windSpeed);
528 virtual float lightLevel()
const;
533 void loadDefaults(
bool loadOnlyFactorySettings =
false);
539 void saveAsDefaults();
543 virtual void exportSettings(
const std::string&
filename);
545 virtual void importSettings(
const std::string& filename);
550 return mySettingsBackup;
555 return mySettingsBackup;
559 virtual float seaLevel()
const;
561 virtual void initializeEnvironmentSettings();
573 virtual void resetClouds();
578 virtual void refreshCloudLayerThicknessIfNeeded();
581 virtual void clearCloudsFromSky();
586 virtual void addElevationalCloudLayersToCloudCoverManagerIfNeeded();
590 virtual void sendToSkyAllCloudLayers();
595 virtual void sendToSkyCloudLayerEnabled(
DtCloudLayerId layerId,
bool enabled);
602 virtual void slot_listenToRemoteEnvironmentSettingsChanged(
bool allowSimMessages);
603 virtual void slot_refreshRemoteEnvironment();
605 virtual void slot_cloudCoverCloudLayerEnabledChanged(
DtCloudLayerId layerId,
bool enableState);
606 virtual void slot_cloudCoverCloudLayerModified(
DtCloudLayerId layerId);
607 virtual void slot_cloudCoverCloudLayerPositionAndOrientationChanged(
DtCloudLayerId layerId,
608 const DtVector& position,
float orientation);
609 virtual void slot_cloudCoverCloudLayerAdded(
DtCloudLayerId layerId);
610 virtual void slot_cloudCoverCloudLayerToBeRemoved(
DtCloudLayerId layerId);
611 virtual void slot_cloudCoverToBeRemoved(
const std::string& cloudCoverName);
614 virtual void slot_coordinateSystemChanged();
617 virtual void slot_oceanLayerAdded(
const DtOceanLayer& layer);
620 virtual void slot_oceanLayerToBeDeleted(
const DtOceanLayer& layer);
623 virtual void slot_oceanLayerSeaLevelChanged(
const DtOceanLayer& layer,
628 virtual void slot_oceanLayerLodRangeChanged(
const DtOceanLayer& layer,
632 virtual void slot_surgeDepthChanged(
double depth);
635 virtual void slot_depthOffsetChanged(
double offset);
638 virtual void updateEnvironment();
642 virtual void initializeOcean();
645 virtual void enableCurrentCloudCoverLayers();
646 virtual void disableCurrentCloudCoverLayers();
648 virtual void autoSave();
652 virtual void sendMarineEnvironmentToOceanObject();
656 virtual void sendWeatherEnvironmentToSkyObject();
DtRecordSettingsBackup< DtEnvironment, makArchives::DtEnvironmentRecord > DtEnvironmentSettingsBackup
Definition: DtEnvironment.h:694
DT_DLL_EXAMPLESCENEROOTPLUGIN void init(DtDe &anIG)
DtDe & myDe
Slots connected to the Sky Conditions Manager.
Definition: DtEnvironment.h:659
float mySeaLevel
Slots connected to the Sky Conditions Manager.
Definition: DtEnvironment.h:688
The declaration of the makVrv::DtEnvironmentInterface class.
DtVirtualBaseClassCreator< DtEnvironment > DtEnvironmentCreator
creator
Definition: DtEnvironment.h:45
DtLocalWindObjectManager & myLocalWindManager
Slots connected to the Sky Conditions Manager.
Definition: DtEnvironment.h:686
const char * creatorTypeName< DtEnvironment >()
template specialization for the creator (pass the class being created to the creatorTypeName template...
Definition: DtEnvironment.h:52
The DtLocalWindObjectManager manages and sets values for a DtLocalWindObjectAgents. The DtLocalWindObjectManager is usually accessed through the DtEnvironment. You can addLocalWind, removeLocalWind in the DtEnvironment and it will communicate to the DtLocalWindObjectManager to create or destroy a DtLocalWindObjectAgent which will create or destroy a DtOsgEarthLocalWindObject (via vrvCore/DtLocalWindObject) and call the osgEarth API.
Definition: DtLocalWindObjectManager.h:32
DtSettingsBackup * settingsBackup()
Definition: DtEnvironment.h:553
makArchives::DtEnvironmentRecord myCurrentSettings
Slots connected to the Sky Conditions Manager.
Definition: DtEnvironment.h:675
The declaration of the makVrv::DtEnvironmentList class.
DtEnvironmentList myEnvironmentList
Slots connected to the Sky Conditions Manager.
Definition: DtEnvironment.h:682
VisibilityObscurant
Definition: DtEnvironmentRecord.h:21
The makVrv::DtRecordSettingsBackup is a templaced class that settings records will use in order to ba...
Definition: DtRecordSettingsBackup.h:100
The DtEnvironment configures the environmental effects for a scene. Environmental effects include clo...
Definition: DtEnvironment.h:58
Record for an elevational configuration A record of this type consists of 1) a base MSL altitude...
Definition: DtEnvironmentRecord.h:242
const DtSettingsBackup * settingsBackup() const
Definition: DtEnvironment.h:548
DtSignalConnectionManager myRemoteEnvironmentConnections
Slots connected to the Sky Conditions Manager.
Definition: DtEnvironment.h:672
Scale
Definition: DtDouglasSeaScale.h:33
Variadic templated creator class for defining a DtVirtualBaseClass creator that is automatically regi...
Definition: DtVirtualBaseClassCreator.h:22
Contains DtLocalWindObjectManager class.
DT_DLL_VRVCORE double distance(const makVrv::DtCoordinateSystem &, const DtVector &from, const DtVector &to)
Returns the distance from the two points. Coordinates are in local database coordinates The coordinat...
The DtEnvironmentInterface is an interface class providing abstraction for different managers of envi...
Definition: DtEnvironmentInterface.h:40
DtRecordSettingsBackupInterface * mySettingsBackup
Slots connected to the Sky Conditions Manager.
Definition: DtEnvironment.h:670
Record of a single cloud layer's settings.
Definition: DtCloudLayerRecord.h:17
The declaration of the makArchives::DtEnvironmentRecord class.
DtSkyObjectAgent * mySkyObject
Slots connected to the Sky Conditions Manager.
Definition: DtEnvironment.h:666
#define DT_DLL_VRVCORE
Definition: vrvCore.h:20
Scale
Definition: DtDouglasSeaScale.h:114
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
Record of environment/weather settings Includes precipitation, air, and clouds.
Definition: DtEnvironmentRecord.h:36
Provides a method of doign settings backup.
Definition: DtSettingsBackup.h:23
DtWeatherEffectsObjectAgent * myWeatherEffectsObject
Slots connected to the Sky Conditions Manager.
Definition: DtEnvironment.h:668
Rotorwash and rotorwash collision object information.
std::string myEnvironmentRecordNameToRestore
Slots connected to the Sky Conditions Manager.
Definition: DtEnvironment.h:679
DtAgentManagerInterface & mySceneInterface
Slots connected to the Sky Conditions Manager.
Definition: DtEnvironment.h:660
unsigned long long DtUniqueID
Definition: DtUniqueID.h:19
PrecipitationType
Definition: DtEnvironmentInterface.h:44
The ocean layer is a type of terrain layer which contains information about an area that should be re...
Definition: DtOceanLayer.h:25
Base class to provide boost signal/slot management.
WindType
This matches makOsgEarth enums for Wind These should be in synch!
Definition: DtRotorWashInfo.h:47
long long DtCloudLayerId
Definition: DtCloudLayer.h:26
The abstract interface necessary for agents.
Definition: DtAgentManagerInterface.h:33
The DtDe is the core component of any VR-Vantage application. It owns a DtRenderer, DtDeCommunicator, as well as a DtDisplay and other things.
Definition: DtDe.h:72
DtDynamicOceanObjectAgent * myDynamicOceanObject
Slots connected to the Sky Conditions Manager.
Definition: DtEnvironment.h:667
The makVrv::DtRecordSettingsBackupInterface provides an interface to record-based backups...
Definition: DtRecordSettingsBackup.h:24
voidpf uLong offset
Definition: ioapi.h:42
DtSignalConnectionManager myConnections
Slots connected to the Sky Conditions Manager.
Definition: DtEnvironment.h:671
DtVector myGroundFogColor
Slots connected to the Sky Conditions Manager.
Definition: DtEnvironment.h:691
CloudType
Cloud layer types.
Definition: DtCloudTypeMapper.h:35
The DtEnvironmentList maintains a list of DtEnvironment records that can be looked up by the environm...
Definition: DtEnvironmentList.h:32
std::vector< DtCloudLayer > CloudLayersVector
Definition: DtEnvironment.h:565
Contains DLL export macros.