VR-Forces 5.0.2 Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtTritonBreakingWavesMapManager.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2019 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
9 
10 #pragma once
11 
12 #include <vrvTriton/vrvTriton.h>
13 
15 
17 
18 #include <osg/Camera>
19 #include <osg/Drawable>
20 #include <osg/Texture2D>
21 
22 namespace makVrv
23 {
24  class DtTritonDrawable;
25  class DtCoordinateConverter;
26  class DtDe;
27 
30 
33 
35  template <>
36  inline const char* creatorTypeName<DtTritonBreakingWavesMapManager>(void) { return "DtTritonBreakingWavesMapManagerCreator"; }
37 
41  {
42  public:
45 
46  protected:
49 
52 
53  private:
60 
61  public:
63  void setupBreakingWavesMap( void );
64 
66  void setBreakingWavesMapResolution(float resolution);
67 
69  float getBreakingWavesMapResolution() const;
70 
73  bool updateBreakingWaves( unsigned int frameNum,
74  const osg::Vec3& currentPosition, bool isGeocentric );
75 
77  const osg::Matrix& breakingWavesMapMatrix();
78 
81  const osg::Texture2D* breakingWavesMapTexture();
82 
84  bool hasBreakingWavesMap() const;
85 
87  void forceUpdate();
88 
89  protected:
90 
92  void cleanup();
93 
95  virtual void slot_coordinateSystemChanged();
96  protected:
99  float myResolution;
102 
107 
109 
111 
113 
116  DtCoordinateConverter* myCoordinateConverter = nullptr;
117  };
118 
119 }
double myLastUpdateTime
Definition: DtTritonBreakingWavesMapManager.h:100
float myResolution
Definition: DtTritonBreakingWavesMapManager.h:99
DtCoordinateConverter is the base class for &#39;local (cig) to geocentric&#39; converters.
Definition: DtCoordinateConverter.h:25
DtSignalConnectionManager myConnections
Definition: DtTritonBreakingWavesMapManager.h:112
int myBreakingWavesMapDimension
Definition: DtTritonBreakingWavesMapManager.h:106
DtVirtualBaseClassCreator< DtTritonBreakingWavesMapManager, DtTritonDrawable * > DtTritonBreakingWavesMapManagerCreator
creator
Definition: DtTritonBreakingWavesMapManager.h:29
osg::Vec3 myLastBreakingWavesUpdatePos
Definition: DtTritonBreakingWavesMapManager.h:97
Contains DLL export macros.
Variadic templated creator class for defining a DtVirtualBaseClass creator that is automatically regi...
Definition: DtVirtualBaseClassCreator.h:22
osg::Matrix myBreakingWavesMapMatrix
Definition: DtTritonBreakingWavesMapManager.h:105
makVrv::DtDe & myDe
Definition: DtTritonBreakingWavesMapManager.h:108
#define DT_DLL_VRVTRITON
Definition: vrvTriton.h:19
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
osg::ref_ptr< osg::Image > myBreakingWavesImage
Definition: DtTritonBreakingWavesMapManager.h:104
Base class to provide boost signal/slot management.
bool myHasBreakingWaves
Definition: DtTritonBreakingWavesMapManager.h:101
A class to manage automatic periodic updating of a breaking wave direction map generated from shapefi...
Definition: DtTritonBreakingWavesMapManager.h:40
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
An OSG Drawable representing Triton&#39;s infinite ocean. /ingroup vrvTriton.
Definition: DtTritonDrawable.h:62
osg::ref_ptr< osg::Texture2D > myBreakingWavesMap
Definition: DtTritonBreakingWavesMapManager.h:103
DtTritonDrawable * myDrawable
Definition: DtTritonBreakingWavesMapManager.h:110
const char * creatorTypeName< DtTritonBreakingWavesMapManager >(void)
template specialization for the creator (pass the class being created to the creatorTypeName template...
Definition: DtTritonBreakingWavesMapManager.h:36
bool myForceUpdate
Definition: DtTritonBreakingWavesMapManager.h:98
friend DtTritonBreakingWavesMapManagerCreator
friend class for creating this class
Definition: DtTritonBreakingWavesMapManager.h:48

Document ID: Generated on Sun Dec 4 20:22:03 EST 2022 from SVN revision 249613
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)