23 #include <osg/Drawable>
24 #include <osg/Texture2D>
35 class DtHeightMapManager;
36 class DtTerrainPatchObject;
37 class DtCoordinateSystem;
76 virtual void setupHeightMap(
void);
79 virtual float heightMapResolution()
const;
83 virtual void updateHeightCamera(
unsigned int frameNum,
const osg::Vec3d& currentPosition, osg::State& state);
86 virtual void enableHeightMapCamera(
bool enable);
89 virtual bool heightCameraEnabled()
const;
92 virtual const osg::Matrix& heightMapMatrix()
const;
98 virtual osg::Camera* heightCamera();
101 virtual void postDrawFBOCallback(osg::RenderInfo& renderInfo);
104 virtual bool heightMapChanged(
void)
const;
107 virtual const osg::View* osgView()
const;
112 virtual void notifyOfReleasedObjects();
116 virtual void clearHeightmap();
119 virtual void updateHeightMapMatrix();
122 virtual osg::Matrixd oglRevDepthOrtho(
double left,
double right,
123 double bottom,
double top,
124 double zNear,
double zFar);
129 virtual void computeBasis(
const osg::Vec3d& inGeocentricPos, osg::Matrixd& rotOut);
136 virtual void computeHeightCameraTransform(
double cameraHeight,
const osg::Vec3d& axisX,
const osg::Vec3d& axisZ);
144 virtual void computeCameraHeightAndEarthRadii(
const osg::Vec3d& updatePosition,
145 double& outCameraHeight, osg::Vec3d& outEarthRadii,
double& outErrorAdjustment)
const;
150 virtual void updateShaderUniforms(
const osg::Vec3d& earthRadii,
const double errorAdjustment);
154 virtual void slot_oceanHeightMapTextureSizeChanged(
int pixels);
157 virtual void slot_oceanHeightMapResolutionChanged(
float resolution);
163 virtual void slot_wireframeModeChanged();
166 virtual void slot_coordinateSystemChanged();
169 virtual int heightMapTextureSize()
const;
172 virtual void slot_preTick();
176 virtual void validateHeightMapTexture(
unsigned int osgContextID);
206 bool myHeightMapChanged =
false;
This represents an arbitrary user pointer/data within DtKeyedData.
Definition: DtKeyedData.h:95
Contains makVrv::DtDrawFBOCallback class.
bool myValidateHeightMapTexture
Definition: DtHeightMapManager.h:210
#define DT_DLL_VRVOSG
Definition: vrvOsg.h:23
osg::Matrixd myHeightReferenceBasis
Definition: DtHeightMapManager.h:181
float myResolution
Definition: DtHeightMapManager.h:185
double myLastUpdateTime
Definition: DtHeightMapManager.h:187
bool myForceUpdate
Definition: DtHeightMapManager.h:184
A DtTerrainPatchObject contains the methods for loading a file as a terrain. When loading a file as a...
Definition: DtTerrainPatchObject.h:35
osg::View * myOsgView
Definition: DtHeightMapManager.h:200
Variadic templated creator class for defining a DtVirtualBaseClass creator that is automatically regi...
Definition: DtVirtualBaseClassCreator.h:23
osg::Vec3d myLastHeightReferencePos
Definition: DtHeightMapManager.h:180
osg::ref_ptr< osg::Camera > myHeightCamera
Definition: DtHeightMapManager.h:195
friend DtHeightMapManagerCreator
Definition: DtHeightMapManager.h:60
osg::ref_ptr< osg::Texture2D > myDepthTexture
Definition: DtHeightMapManager.h:192
unsigned int myHeightUpdateFrame
Definition: DtHeightMapManager.h:183
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
DtVirtualBaseClassCreator< DtHeightMapManager, const std::string &, osg::View *& > DtHeightMapManagerCreator
creator
Definition: DtHeightMapManager.h:40
int myHeightMapDimension
Definition: DtHeightMapManager.h:194
bool mySavedPerfOverlayOn
Definition: DtHeightMapManager.h:186
osg::ref_ptr< osg::Texture2D > myHeightMap
Definition: DtHeightMapManager.h:191
osg::Matrix myHeightMapMatrix
Definition: DtHeightMapManager.h:193
The DtCoordinateSystem is used to manage the current coordinate system of the scene.
Definition: DtCoordinateSystem.h:40
Base class to provide boost signal/slot management.
DtSignalConnectionManager myConnections
Definition: DtHeightMapManager.h:197
A class to manage automatic periodic updating of a height map generated from the database dynamically...
Definition: DtHeightMapManager.h:52
Contains DLL export macros.
const char * creatorTypeName< DtHeightMapManager >(void)
template specialization for the creator (pass the class being created to the creatorTypeName template...
Definition: DtHeightMapManager.h:47
const unsigned int myHeightCameraNodeMask
Definition: DtHeightMapManager.h:208
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:76
const bool myShadingRateIsSupported
Definition: DtHeightMapManager.h:189
osg::Vec3d myLastHeightUpdatePos
Definition: DtHeightMapManager.h:182
Contains the DtKeyedData class declaration.