16 #include <osgViewer/View>
26 class DtChannelSpecificGroup;
28 class DtOsgChannelCreator;
29 class DtChannelManager;
30 class DtWindowConfiguration;
33 class DtOsgObserverObject;
34 class DtOsgCullVisitorParameters;
59 virtual bool initialize();
63 virtual void initializeNormalized2DCamera();
64 virtual void initialize2DCamera(
int w,
int h );
65 virtual void initializeSceneCamera( );
66 virtual void initializeRenderTexture(
int format,
int sourceFormat = GL_RGBA,
int sourceType = GL_UNSIGNED_BYTE);
67 virtual void initializeRTTCamera( );
69 void clearRttCamera();
71 virtual void recreateRTTCamera( );
76 void setShadowState(
bool enable);
79 virtual void addOverlayDrawablesToCameras();
86 virtual void initializeSignalConnections();
97 void setSensorName(
const std::string& sensorName );
100 virtual void setClearColor(
float r,
float g,
float b,
float a);
105 virtual void setWindow(
DtWindow* view);
108 virtual const DtWindow* window()
const;
111 virtual void setViewport(
int x,
int y,
int width,
int height);
114 virtual void getViewport(
int& x,
int& y,
int& width,
int& height)
const;
117 virtual void setCameraPosition(
double x,
double y,
double z);
120 virtual void setCameraOrientation(
double psi,
double theta,
double phi );
126 virtual void setCameraPositionAndOrientation(
double x,
double y,
127 double z,
double psi,
double theta,
double phi );
128 virtual void setCameraPositionAndOrientation( osg::Vec3d& pos,
132 virtual void getCameraPositionAndOrientation( osg::Vec3d& position,
133 osg::Quat& rotation )
const;
135 virtual void update();
138 virtual void connectToObserver();
142 virtual void setProjectionMatrixAsPerspective(
double fovy,
143 double aspectRatio,
double zNear,
double zFar);
146 virtual void setProjectionMatrixAsFrustum (
double left,
double right,
147 double bottom,
double top,
double zNear,
double zFar);
150 virtual osgViewer::View& view();
167 virtual void setRenderToTexture(
bool enabled);
172 virtual void setRenderToTextureFormat(
int format,
int sourceFormat,
int sourceType);
177 virtual osg::ref_ptr<osg::Texture2D> getRenderTexture();
180 virtual osg::ref_ptr<osg::Texture2D> getDepthTexture()
const;
183 int shadowQuality()
const;
188 virtual std::vector<const osg::Camera*> getShadowableCameras()
const;
192 virtual void setProjectionResizePolicy(
197 virtual void updateProjection();
200 double &left,
double zNear,
double &right,
double &top,
double &bottom );
203 virtual void connectChannelToScene();
206 virtual bool processMouseEvent(
const DtMouseEvent& ev);
209 virtual bool processKeyboardEvent(
const DtKeyEvent & ev);
215 void getWorldToWindowMatrix( osg::Matrix& worldToWindowMatrix )
const;
218 virtual void moveMouseToScreenLocation(
float screenX,
float screenY);
223 virtual void projectToScreen(
double dbX,
double dbY,
double dbZ,
224 double& screenX,
double& screenY,
double& screenZ );
227 virtual void projectToWorld(
double screenX,
double screenY,
228 double& dbX,
double& dbY,
double& dbZ );
231 virtual const std::string& name();
244 virtual void addPostProcessEffect(std::string postProcessorEffect);
249 virtual void removePostProcessEffect(std::string postProcessorEffect);
256 virtual void setEnablePostProcessors(
bool enable);
258 virtual bool getEnablePostProcessors();
261 virtual bool useOldChannelOffsetCalcuation()
const;
262 virtual void setUseOldChannelOffsetCalcuation(
bool enable );
270 void makeObserverToCameraMatrix( osg::Vec3d& orient,
271 osg::Matrixd& offsetObserverToCamera, osg::Matrixd& observerToCamera );
272 void makeObserverToCameraMatrix( osg::Quat& qObserverToWorld,
273 osg::Matrixd& offsetObserverToCamera, osg::Matrixd& observerToCamera );
277 virtual void calculateNearFar(
double& zNear,
double& zFar);
282 virtual bool useAttachedForNearClip(
double alt );
285 virtual double calculateNearClip(
double alt,
double zFar );
288 virtual double calculateFarClip(
double alt );
291 virtual void projectFor3D();
294 virtual void projectFor2D();
299 virtual void stopUsingModelSet(
int modelSet );
304 virtual void startUsingModelSet(
int modelSet );
307 virtual void stopUsingSensor(
DtSensor* sensor );
310 virtual void startUsingSensor(
DtSensor* sensor );
313 virtual void slot_sensorRemoved(
DtSensor* sensor );
316 virtual void slot_visualizerRootAdded(
int modelSet,
int visualType );
324 int setting,
bool value );
337 virtual void slot_windowConfigurationModified(
const std::string& deName,
341 virtual void slot_onCoordinateSystemChanged();
350 void stopUsingModelSetWork(
int modelSet );
353 void startUsingModelSetWork(
int modelSet );
356 void initializeRenderTextureColor(
int format,
int sourceFormat,
int sourceType);
359 void initializeRenderTextureDepth();
361 void enableLighting(osg::ref_ptr<osg::Camera> camera,
bool enable);