VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtTritonWakeModelInstance.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2020 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
9 
10 #pragma once
11 
12 #include <vrvTriton/vrvTriton.h>
13 
15 
17 
18 namespace Triton
19 {
20  class WakeGenerator;
21 }
22 
23 namespace makVrv
24 {
25  class DtDe;
26 
34  {
35  public:
36 
38  friend class DtTritonWakeUpdater;
39 
41  friend class DtTritonWakeModel;
42 
45 
47  virtual ~DtTritonWakeModelInstance();
48 
50  virtual void setVisible(bool isVisible);
51 
53  virtual void setSprayEnabled( bool b );
56  virtual bool sprayEnabled() const;
58 
60  virtual void setSternWaveEnabled( bool b );
63  virtual bool sternWaveEnabled() const;
65 
67  virtual void setWakeOffset( double offset );
70  virtual double wakeOffset() const;
72 
74  virtual void setBowSprayOffset( double offset );
77  virtual double bowSprayOffset() const;
79 
81  virtual void setBowWaveOffset( double offset );
84  virtual double bowWaveOffset() const;
86 
88  virtual void setSternWaveOffset( double offset );
91  virtual double sternWaveOffset() const;
93 
95  virtual void setShipLength( double length );
97  virtual double shipLength() const;
99 
101  virtual void setBeamWidth( double width );
103  virtual double beamWidth() const;
105 
107  virtual void setPropWashEnabled( bool b);
109  virtual bool propWashEnabled() const;
111 
113  virtual void setPropWashOffset( double offset );
116  virtual double propWashOffset() const;
118 
120  virtual void setPropWashFadeTime( double fadeTime );
123  virtual double propWashFadeTime() const;
125 
127  virtual void setDraft( double draft );
130  virtual double draft() const;
132 
134  virtual void setSprayVelocityScale( double scale );
136  virtual double sprayVelocityScale() const;
138 
140  virtual void setBowWaveScale( double scale );
142  virtual double bowWaveScale() const;
144 
146  virtual void setMaxBowWaveAmplitude( double amplitude );
148  virtual double maxBowWaveAmplitude() const;
150 
152  virtual void setBowSize( double size );
154  virtual double bowSize() const;
156 
158  virtual void setSpraySizeScale( double scale );
160  virtual double spraySizeScale() const;
162 
164  virtual void setNumHullSprays( int numSprays );
167  virtual int numHullSprays() const;
169 
171  virtual void setHullSprayStartOffset( double offset );
174  virtual double hullSprayStartOffset() const;
176 
178  virtual void setHullSprayEndOffset( double offset );
181  virtual double hullSprayEndOffset() const;
183 
185  virtual void setHullSprayVerticalOffset( double scale );
187  virtual double hullSprayVerticalOffset() const;
189 
191  virtual void setHullSprayVelocityScale( double scale );
193  virtual double hullSprayVelocityScale() const;
195 
197  virtual void setHullSpraySizeScale( double scale );
200  virtual double hullSpraySizeScale() const;
202 
204  virtual void setDefaultWakeOffset( double offset );
205 
207  virtual void setDefaultBowSprayOffset( double offset );
208 
210  virtual void setDefaultBowWaveOffset( double offset );
211 
213  virtual void setDefaultSternWaveOffset( double offset );
214 
216  virtual void setDefaultShipLength( double length );
217 
219  virtual void setDefaultBeamWidth( double width );
220 
222  virtual void setDefaultDraft( double draft );
223 
225  virtual void setDefaultPropWashOffset( double offset );
226 
228  virtual void setDefaultPropWashFadeTime( double fadeTime );
229 
231  virtual void setDefaultSprayVelocityScale( double scale );
232 
234  virtual void setDefaultBowWaveScale( double scale );
235 
237  virtual void setDefaultMaxBowWaveAmplitude( double amplitude );
238 
240  virtual void setDefaultBowSize( double size );
241 
243  virtual void setDefaultSpraySizeScale( double scale );
244 
246  virtual void setDefaultNumHullSprays( int sprays );
247 
249  virtual void setDefaultHullSpraySizeScale( double scale );
250 
252  virtual void setDefaultHullSprayVelocityScale( double scale );
253 
255  virtual void setDefaultHullSprayStart( double extent );
256 
258  virtual void setDefaultHullSprayEnd( double extent );
259 
261  virtual void setDefaultHullSprayVerticalOffset( double offset );
262 
265  virtual bool contributesToBound() const;
266 
267  protected:
269  virtual Triton::WakeGenerator* wakeGenerator();
270 
272  virtual void deleteWakeGenerator(void);
273 
275  virtual void deleteWakeGeneratorAndSetVisibility(bool visibility);
276 
278  virtual void slot_tritonAboutToBeDeleted();
279 
280  protected:
281  Triton::WakeGenerator* myWakeGenerator;
282 
283  double myShipLength;
284  double myBeamWidth;
285  double myWakeOffset;
291  double myDraft;
295  double myBowSize;
303 
318 
320  };
321 }
double myMaxBowWaveAmplitude
Definition: DtTritonWakeModelInstance.h:294
The base class for all model instances.
Definition: DtModelInstance.h:41
A model of a triton wake is used to interface with the triton API to generate a Kelvin wake effect...
Definition: DtTritonWakeModel.h:30
double myBowSprayOffset
Definition: DtTritonWakeModelInstance.h:286
double mySprayVelocityScale
Definition: DtTritonWakeModelInstance.h:292
double myDraft
Definition: DtTritonWakeModelInstance.h:291
bool myMaxBowWaveAmplitudeSet
Definition: DtTritonWakeModelInstance.h:313
double myBowWaveOffset
Definition: DtTritonWakeModelInstance.h:287
bool myHullSprayEndSet
Definition: DtTritonWakeModelInstance.h:315
bool myBowSprayOffsetSet
Definition: DtTritonWakeModelInstance.h:308
Triton::WakeGenerator * myWakeGenerator
Definition: DtTritonWakeModelInstance.h:281
double myHullSprayVerticalOffset
Definition: DtTritonWakeModelInstance.h:302
voidpf void uLong size
Definition: ioapi.h:39
double myBowSize
Definition: DtTritonWakeModelInstance.h:295
Updater for the Kelvin wake model.
Definition: DtTritonWakeUpdater.h:35
bool myHullSprayStartSet
Definition: DtTritonWakeModelInstance.h:316
bool myWakeOffsetSet
Definition: DtTritonWakeModelInstance.h:307
double myBeamWidth
Definition: DtTritonWakeModelInstance.h:284
bool mySprayEnabled
Definition: DtTritonWakeModelInstance.h:304
bool mySternWaveOffsetSet
Definition: DtTritonWakeModelInstance.h:310
Contains DLL export macros.
bool myHullSprayVerticalOffsetSet
Definition: DtTritonWakeModelInstance.h:317
double myHullSprayEnd
Definition: DtTritonWakeModelInstance.h:300
int myNumHullSprays
Definition: DtTritonWakeModelInstance.h:297
#define DT_DLL_VRVTRITON
Definition: vrvTriton.h:19
double myHullSprayStart
Definition: DtTritonWakeModelInstance.h:299
bool myPropWashOffsetSet
Definition: DtTritonWakeModelInstance.h:311
Implementation of a Triton wake model.
Definition: DtTritonWakeModelInstance.h:33
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
bool mySternWaveEnabled
Definition: DtTritonWakeModelInstance.h:305
double myBowWaveScale
Definition: DtTritonWakeModelInstance.h:293
DtSignalConnectionManager mySignals
Definition: DtTritonWakeModelInstance.h:319
bool myBowWaveOffsetSet
Definition: DtTritonWakeModelInstance.h:309
Contains makVrv::DtModelInstance class.
Base class to provide boost signal/slot management.
double myHullSprayVelocityScale
Definition: DtTritonWakeModelInstance.h:301
DT_DLL_VRVCORE double length(const makVrv::DtCoordinateSystem &, const std::vector< DtVector > &vertices)
Returns the total distance of a segmented line defined by the provided vector of vertices. Coordinates are in local database coordinates. The coordinate system is used to convert between the local database coordinates and geocentric. All distance is in 2D – the Z value is ignored.
double myWakeOffset
Definition: DtTritonWakeModelInstance.h:285
double mySpraySizeScale
Definition: DtTritonWakeModelInstance.h:296
double myShipLength
Definition: DtTritonWakeModelInstance.h:283
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
double myHullSpraySizeScale
Definition: DtTritonWakeModelInstance.h:298
double mySternWaveOffset
Definition: DtTritonWakeModelInstance.h:288
voidpf uLong offset
Definition: ioapi.h:42
bool myPropWashEnabled
Definition: DtTritonWakeModelInstance.h:306
bool myPropWashFadeTimeSet
Definition: DtTritonWakeModelInstance.h:312
double myPropWashOffset
Definition: DtTritonWakeModelInstance.h:289
double myPropWashFadeTime
Definition: DtTritonWakeModelInstance.h:290
bool myNumHullSpraysSet
Definition: DtTritonWakeModelInstance.h:314

Document ID: Generated on Thu Oct 23 22:29:17 EDT 2025 from SVN revision 280951
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)