29 class DtGroundFogEffectDrawable;
30 class DtGroundFogPatchDrawable;
54 SENSOR_MATERIAL_NONE = 0,
82 virtual osg::Object*
cloneType()
const {
return NULL; }
85 virtual void releaseGroundFogPatchGLObjects(osg::State* state)
const;
88 virtual void releaseGroundFogEffectGLObjects(osg::State* state)
const;
91 virtual void deleteGeode();
95 virtual osg::Node* getOrCreateSensorNode(SENSOR_MATERIAL matType);
101 virtual void removeCloudLayers();
104 virtual void addGroundFog(
DtCloudLayerId layerId,
const DtVector& position,
float orientation,
float cornerRadius,
105 const DtVector& bounds,
double density,
bool infinite,
bool relative,
bool altitudeIsHAT);
108 virtual void addPatchyGroundFog(
DtCloudLayerId layerId,
const DtVector& position,
float orientation,
float cornerRadius,
109 const DtVector& bounds,
double density,
bool relative);
112 virtual void addSandstorm(
DtCloudLayerId layerId,
const DtVector& position,
float orientation,
float cornerRadius,
113 const DtVector& bounds,
double density,
bool infinite,
bool relative,
bool altitudeIsHAT);
118 virtual void setCloudLayerDensity(
DtCloudLayerId layerId,
float density);
123 virtual void setCloudLayerEnabled(
DtCloudLayerId layerId,
bool enabled);
126 virtual void setCloudLayerPositionAndOrientation(
DtCloudLayerId layerId,
const DtVector& position,
float orientation);
133 virtual void setCloudLayerBaseColor(
DtCloudLayerId layerId,
float red,
float green,
float blue);
138 virtual void setCloudLayerParticleSizeVariation(
DtCloudLayerId layerId,
float variation);
143 virtual void setCloudLayerPatternedLook(
DtCloudLayerId layerId,
bool patternedEnable);
148 virtual void setWind(
float windDirectionRad,
float windSpeedMps);
165 , myCameraBasisDirty(false)
194 virtual void traverse(osg::NodeVisitor& nv);
197 virtual void disableHeightFog();
201 virtual void cullUpdate(osg::Camera* cam);
205 virtual void cullUpdateHeightFog(osg::Camera* cam);
210 virtual void computeBasis(
const osg::Vec3d& inGeocentricPos, osg::Matrixd& rotOut);
242 osg::Node* getChildNodeByName(osg::Group* parent,
const char* name);
float myAltitude
Definition: DtGroundFogGroup.h:184
std::map< DtCloudLayerId, DtGroundFogPatchArea * > DtGroundFogPatchAreaMap
This is mutable because it's used as part of the const drawImplementation.
Definition: DtGroundFogGroup.h:245
DtVector myBounds
Definition: DtGroundFogGroup.h:189
bool myCameraBasisDirty
Definition: DtGroundFogGroup.h:183
Virtual base class.
Definition: DtVirtualBaseClass.h:22
float myCornerRadius
Definition: DtGroundFogGroup.h:188
A structure used to hold data for drawing.
Definition: DtGroundFogEffect.h:40
Creator that is used to create the ground fog group.
Definition: DtGroundFogGroup.h:250
float myDensityBlend
Definition: DtGroundFogGroup.h:187
osg::Vec3d myPosition
Definition: DtGroundFogGroup.h:180
#define DT_DLL_VRVOSG
Definition: vrvOsg.h:23
osg::ref_ptr< makVrv::DtGroundFogPatchDrawable > myGroundFogPatchDrawable
Definition: DtGroundFogGroup.h:225
int myLayerId
Definition: DtGroundFogGroup.h:178
Contains makVrv::DtGroundFogPatchArea class.
this class is used to split work up between threads.
Definition: DtJobSplitter.h:64
osg::ref_ptr< makVrv::DtGroundFogEffectDrawable > myEffectDrawable
Definition: DtGroundFogGroup.h:229
osg::ref_ptr< osg::Group > myGroundFogSensorGroup
Definition: DtGroundFogGroup.h:223
virtual osg::Object * cloneType() const
Definition: DtGroundFogGroup.h:82
A structure to hold data for a height fog object.
Definition: DtGroundFogGroup.h:159
Contains makVrv::DtVirtualBaseClass class.
A group node which serves as a root for patchy ground fog areas, and effects in addition to infinite ...
Definition: DtGroundFogGroup.h:47
osg::Vec3d myBasisPos
Definition: DtGroundFogGroup.h:181
SENSOR_MATERIAL
brief Sensor material type enumerations used for sensorfx.
Definition: DtGroundFogGroup.h:52
DtDe & myDe
Definition: DtGroundFogGroup.h:219
bool myEnabled
Definition: DtGroundFogGroup.h:179
float myAltitudeBlend
Definition: DtGroundFogGroup.h:186
Definition: DtGroundFogGroup.h:55
Contains vrvCore::DtCloudLayerRecord declaration.
float myDensity
Definition: DtGroundFogGroup.h:185
osg::ref_ptr< osg::Geode > myGroundFogGeode
Definition: DtGroundFogGroup.h:224
Base class to provide boost signal/slot management.
virtual osg::Object * clone(const osg::CopyOp ©op) const
required functions for derriving from osg::Group
Definition: DtGroundFogGroup.h:81
Definition: DtGroundFogGroup.h:57
DtGroundFogPatchAreaMap myMutableGroundFogPatchAreaMap
Definition: DtGroundFogGroup.h:246
Definition: DtGroundFogGroup.h:56
std::vector< osg::Vec4d > myCullingPlanes
Definition: DtGroundFogGroup.h:234
long long DtCloudLayerId
Definition: DtCloudLayer.h:26
Contains makVrv::DtGroundFogEffect class.
Contains DLL export macros.
osg::Matrixd myBasisRot
Definition: DtGroundFogGroup.h:182
The DtDe is the core component of any VR-Vantage application.
Definition: DtDe.h:69
DtHeightFogMap myHeightFogMap
Definition: DtGroundFogGroup.h:232
Contains the makVrv::DtOsgCullVisitorParameters class.
osg::ref_ptr< osg::Group > myEffectSensorGroup
Definition: DtGroundFogGroup.h:227
HeightFogItem()
Definition: DtGroundFogGroup.h:161
osg::Vec3 myBaseColor
Definition: DtGroundFogGroup.h:190
A structure used to hold data for drawing.
Definition: DtGroundFogPatchArea.h:69
osg::ref_ptr< osg::Geode > myEffectGeode
Definition: DtGroundFogGroup.h:228
std::map< int, HeightFogItem > DtHeightFogMap
Definition: DtGroundFogGroup.h:231
DtJobSplitter * myJobSplitter
Definition: DtGroundFogGroup.h:236