VR-Forces 4.3 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
DtTritonWakeModel.h
Go to the documentation of this file.
1 /*****************************************************************************
2  * Copyright (c) 2014 MAK Technologies, Inc.
3  * All rights reserved.
4  *****************************************************************************/
5 
9 
10 #pragma once
11 
12 #include <vrvTriton/vrvTriton.h>
13 
14 #include <vrvCore/DtWakeModel.h>
15 
16 #include <vrvUtil/signalslib.h>
17 
18 #include <boost/signals/connection.hpp>
19 
20 #include <matrix/vlVector.h>
21 
22 namespace makVrv
23 {
24  class DtSceneObject;
25  class DtTritonWakeModelInstance;
26 
31  {
32  public:
33 
35  friend class DtTritonWakeUpdater;
36 
39 
41  virtual ~DtTritonWakeModel();
42 
44  virtual void setModelDefinition(const std::string& modelDef);
45 
48  virtual std::string className() const;
49 
51 
52  virtual void setSprayEnabled( bool b );
53  virtual bool sprayEnabled() const;
55 
57 
58 
59  virtual void setWakeOffset( double offset );
60  virtual double wakeOffset() const;
62 
64 
65 
66  virtual void setBowSprayOffset( double offset );
67  virtual double bowSprayOffset() const;
69 
71 
72 
73  virtual void setBowWaveOffset( double offset );
74  virtual double bowWaveOffset() const;
76 
78 
79 
80  virtual void setSternWaveOffset( double offset );
81  virtual double sternWaveOffset() const;
83 
85 
86  virtual void setShipLength( double length );
87  virtual double shipLength() const;
89 
91 
92  virtual void setBeamWidth( double width );
93  virtual double beamWidth() const;
95 
97 
98  virtual void setPropWashEnabled( bool b);
99  virtual bool propWashEnabled() const;
101 
103 
104 
105  virtual void setPropWashOffset( double offset );
106  virtual double propWashOffset() const;
108 
110 
111 
112  virtual void setDraft( double draft );
113  virtual double draft() const;
115 
117 
118 
119  virtual void setLODDistance( double distance );
120  virtual double lodDistance() const;
122 
124 
125  virtual void setSprayVelocityScale( double scale );
126  virtual double sprayVelocityScale() const;
128 
130 
131  virtual void setBowWaveScale( double scale );
132  virtual double bowWaveScale() const;
134 
136 
137  virtual void setMaxBowWaveAmplitude( double amplitude );
138  virtual double maxBowWaveAmplitude() const;
140 
142 
143  virtual void setBowSize( double size );
144  virtual double bowSize() const;
146 
148 
149  virtual void setSpraySizeScale( double scale );
150  virtual double spraySizeScale() const;
152 
154 
155 
156  virtual void setNumHullSprays( int numSprays );
157  virtual int numHullSprays() const;
159 
161 
162 
163  virtual void setHullSprayStart( double extent );
164  virtual double hullSprayStart() const;
166 
168 
169 
170  virtual void setHullSprayEnd( double extent );
171  virtual double hullSprayEnd() const;
173 
175 
176 
177  virtual void setHullSprayVelocityScale( double scale );
178  virtual double hullSprayVelocityScale() const;
180 
182 
183  virtual void setHullSpraySizeScale( double scale );
184  virtual double hullSpraySizeScale() const;
186 
188 
189  virtual void setHullSprayVerticalOffset( double scale );
190  virtual double hullSprayVerticalOffset() const;
192 
196  virtual void addToScene( const DtUniqueID& sceneObjectId,
197  int modelSet, int visualizerType );
198 
200  virtual void removeFromScene();
201 
205  virtual void setVisible(bool isVisible);
206 
208  virtual void setSolid(bool isSolid) {}
209 
210  protected:
212  virtual DtTritonWakeModelInstance* wakeModelInstance();
213 
216  virtual DtTritonWakeModelInstance* wakeModelInstance() const;
217 
219  virtual DtSceneObject* sceneObject() const;
220 
223  virtual void calcDefaults();
224 
226  virtual void setIsOverWater( bool overWater );
227 
231  virtual void slot_oceanAddedToScene();
232 
233  protected:
234  boost::signalslib::connection myTritonManagerConnection;
236  };
237 
238 }

Document ID: Generated on Wed Mar 11 21:20:57 EDT 2015 from SVN revision 150940
Copyright © 2005-2014 VT MÄK. All Rights Reserved (www.mak.com)