16 #include <osgViewer/View>
22 class DatabaseRequestHandlerCallback;
29 class DtChannelSpecificGroup;
31 class DtOsgChannelCreator;
32 class DtChannelManager;
33 class DtWindowConfiguration;
36 class DtOsgObserverObject;
37 class DtOsgCullVisitorParameters;
62 virtual bool initialize();
66 virtual void initializeNormalized2DCamera();
67 virtual void initialize2DCamera(
int w,
int h );
68 virtual void initializeSceneCamera( );
69 virtual void initializeRenderTexture(
int format,
int sourceFormat = GL_RGBA,
int sourceType = GL_UNSIGNED_BYTE);
70 virtual void initializeRTTCamera( );
72 void clearRttCamera();
74 virtual void recreateRTTCamera( );
79 void setShadowState(
bool enable);
82 virtual void addOverlayDrawablesToCameras();
89 virtual void initializeSignalConnections();
100 void setSensorName(
const std::string& sensorName );
103 virtual void setClearColor(
float r,
float g,
float b,
float a);
108 virtual void setWindow(
DtWindow* view);
111 virtual const DtWindow* window()
const;
114 virtual void setViewport(
int x,
int y,
int width,
int height);
117 virtual void getViewport(
int& x,
int& y,
int& width,
int& height)
const;
120 virtual void setCameraPosition(
double x,
double y,
double z);
123 virtual void setCameraOrientation(
double psi,
double theta,
double phi );
129 virtual void setCameraPositionAndOrientation(
double x,
double y,
130 double z,
double psi,
double theta,
double phi );
131 virtual void setCameraPositionAndOrientation( osg::Vec3d& pos,
135 virtual void getCameraPositionAndOrientation( osg::Vec3d& position,
136 osg::Quat& rotation )
const;
138 virtual void update();
141 virtual void connectToObserver();
145 virtual void setProjectionMatrixAsPerspective(
double fovy,
146 double aspectRatio,
double zNear,
double zFar);
149 virtual void setProjectionMatrixAsFrustum (
double left,
double right,
150 double bottom,
double top,
double zNear,
double zFar);
153 virtual osgViewer::View& view();
170 virtual void setRenderToTexture(
bool enabled);
175 virtual void setRenderToTextureFormat(
int format,
int sourceFormat,
int sourceType);
180 virtual osg::ref_ptr<osg::Texture2D> getRenderTexture();
183 virtual osg::ref_ptr<osg::Texture2D> getDepthTexture()
const;
186 int shadowQuality()
const;
191 virtual std::vector<const osg::Camera*> getShadowableCameras()
const;
195 virtual void setProjectionResizePolicy(
200 virtual void updateProjection();
203 double &left,
double zNear,
double &right,
double &top,
double &bottom );
206 virtual void connectChannelToScene();
209 virtual bool processMouseEvent(
const DtMouseEvent& ev);
212 virtual bool processKeyboardEvent(
const DtKeyEvent & ev);
218 void getWorldToWindowMatrix( osg::Matrix& worldToWindowMatrix )
const;
221 virtual void moveMouseToScreenLocation(
float screenX,
float screenY);
226 virtual void projectToScreen(
double dbX,
double dbY,
double dbZ,
227 double& screenX,
double& screenY,
double& screenZ );
230 virtual void projectToWorld(
double screenX,
double screenY,
231 double& dbX,
double& dbY,
double& dbZ );
234 virtual const std::string& name();
247 virtual void addPostProcessEffect(std::string postProcessorEffect);
252 virtual void removePostProcessEffect(std::string postProcessorEffect);
259 virtual void setEnablePostProcessors(
bool enable);
261 virtual bool getEnablePostProcessors();
264 virtual bool useOldChannelOffsetCalcuation()
const;
265 virtual void setUseOldChannelOffsetCalcuation(
bool enable );
273 void makeObserverToCameraMatrix( osg::Vec3d& orient,
274 osg::Matrixd& offsetObserverToCamera, osg::Matrixd& observerToCamera );
275 void makeObserverToCameraMatrix( osg::Quat& qObserverToWorld,
276 osg::Matrixd& offsetObserverToCamera, osg::Matrixd& observerToCamera );
280 virtual void calculateNearFar(
double& zNear,
double& zFar);
285 virtual bool useAttachedForNearClip(
double alt );
288 virtual double calculateNearClip(
double alt,
double zFar );
291 virtual double calculateFarClip(
double alt );
294 virtual void projectFor3D();
297 virtual void projectFor2D();
302 virtual void stopUsingModelSet(
int modelSet );
307 virtual void startUsingModelSet(
int modelSet );
310 virtual void stopUsingSensor(
DtSensor* sensor );
313 virtual void startUsingSensor(
DtSensor* sensor );
316 virtual void slot_sensorRemoved(
DtSensor* sensor );
319 virtual void slot_visualizerRootAdded(
int modelSet,
int visualType );
327 int setting,
bool value );
340 virtual void slot_windowConfigurationModified(
const std::string& deName,
344 virtual void slot_onCoordinateSystemChanged();
353 void stopUsingModelSetWork(
int modelSet );
356 void startUsingModelSetWork(
int modelSet );
359 void initializeRenderTextureColor(
int format,
int sourceFormat,
int sourceType);
362 void initializeRenderTextureDepth();
364 void enableLighting(osg::ref_ptr<osg::Camera> camera,
bool enable);
424 osg::ref_ptr<osg::DatabaseRequestHandlerCallback> myDatabasePagerCallback;