20 #include <matrix/vlVector.h>
22 #include <osg/Matrixd>
30 class DtWeatherAreaGroup;
31 class DtCoordinateSystem;
68 virtual void setEnabled(
bool enabled);
73 virtual void setBounds(
const DtVector& bounds,
float cornerRadius);
79 virtual void setTransform(
const DtVector& position,
float orientation,
bool relativeToCamera =
false);
87 virtual void cullUpdate(
const osg::Vec3d& camPos,
88 const std::vector<osg::Vec4d>& cullingPlanes,
DtJobSplitter* jobSplitter,
89 const osg::Camera* camera)
override;
93 virtual void setPrecipitationIntensity(
const float intensity);
108 virtual void setFogColor(
const DtVector& color);
112 virtual void setVisibilityDistance(
const float distance);
116 virtual void setOvercast(
const float overcast);
121 virtual void setGlobalWind(
const float windDirectionRad,
const float windSpeedMps);
125 virtual void setLightningEnabled(
const bool enabled);
130 virtual void cloudLayerAdded(
DtCloudLayerId layerId,
int cloudType);
142 virtual void computePrecipitationShaftBounds(osg::Vec3d& position,
143 DtVector& bounds,
float& cornerRadius);
149 virtual void computeHeightFogBounds(
DtVector& bounds,
double& cornerRadius);
152 virtual void onAreaChanged();
157 virtual float computeFogDensity(
const float precipitaionIintensity,
const float distance)
const;
161 virtual void computePrecipitationShaftBaseColor(
DtVector& color);
171 virtual void updateHeightFogLighting();
174 virtual void slot_simulationUpdate();
177 virtual void slot_coordinateSystemChanged();
Used by the weather system to define an environmental area. These areas can contain items such as pre...
Definition: DtWeatherAreaEnvironmental.h:41
Contains makVrv::DtWeatherArea class.
#define DT_DLL_VRVOSG
Definition: vrvOsg.h:23
std::vector< DtCloudLayerId > myWindCloudLayers
Definition: DtWeatherAreaEnvironmental.h:190
DtUniqueID myHeightFogId
Definition: DtWeatherAreaEnvironmental.h:185
Factory that is used to create weather areas.
Definition: DtWeatherArea.h:350
Contains makVrv::DtDe class.
this class is used to split work up between threads.
Definition: DtJobSplitter.h:64
A group node which serves as a root for weather areas, patchy ground fog areas and effects...
Definition: DtWeatherAreaGroup.h:72
DtUniqueID myLightningId
Definition: DtWeatherAreaEnvironmental.h:186
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...
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
The DtCoordinateSystem is used to manage the current coordinate system of the scene.
Definition: DtCoordinateSystem.h:41
DtDe & myDe
Definition: DtWeatherAreaEnvironmental.h:180
Base class to provide boost signal/slot management.
DtUniqueID myPrecipitationShaftId
Definition: DtWeatherAreaEnvironmental.h:184
long long DtCloudLayerId
Definition: DtCloudLayer.h:26
Contains DLL export macros.
PrecipitationType
Precipitation types.
Definition: DtSkyObject.h:74
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:70
DtSignalConnectionManager myConnections
Definition: DtWeatherAreaEnvironmental.h:182
DtVector myHeightFogColor
Definition: DtWeatherAreaEnvironmental.h:188
A weather area represents localized environmental conditions such as blowing dust, blowing sand, or blowing snow. The default (base class) weather area is mainly used as a bounds for localized environmental information such as precipitation intensity. AreaTypeBlowingDust, AreaTypeBlowingSand, AreaTypeBlowingSnow are specialized weather areas that represent 1 specific environmental condition.
Definition: DtWeatherArea.h:54