VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtWakeModel.h
Go to the documentation of this file.
1 /*****************************************************************************
2  * Copyright (c) 2015 MAK Technologies, Inc.
3  * All rights reserved.
4  *****************************************************************************/
5 
9 
10 #pragma once
11 
12 #include <vrvCore/vrvCore.h>
13 #include <vrvCore/DtModel.h>
14 #include <matrix/vlVector.h>
15 
16 namespace makVrv
17 {
18 
19  class DtWakeModelInstance;
20 
24  {
25  public:
26 
28  DtWakeModel( DtDe& de, DtUniqueID id );
29 
31  virtual ~DtWakeModel();
32 
35  virtual void setModelDefinition( const std::string& def ) = 0;
36 
38  virtual void setSprayEnabled( bool b ) = 0;
39 
41  virtual void setSternWaveEnabled( bool b ) = 0;
42 
45  virtual void setWakeOffset( double offset ) = 0;
46 
49  virtual void setBowSprayOffset( double offset ) = 0;
50 
53  virtual void setBowWaveOffset( double offset ) = 0;
54 
57  virtual void setSternWaveOffset( double offset ) = 0;
58 
60  virtual void setShipLength( double length ) = 0;
61 
63  virtual void setBeamWidth( double width ) = 0;
64 
66  virtual void setPropWashEnabled( bool b) = 0;
67 
70  virtual void setPropWashOffset( double offset ) = 0;
71 
74  virtual void setPropWashFadeTime( double fadeTime ) = 0;
75 
78  virtual void setDraft( double draft ) = 0;
79 
81  virtual void setSprayVelocityScale( double scale ) = 0;
82 
84  virtual void setBowWaveScale( double scale ) = 0;
85 
87  virtual void setMaxBowWaveAmplitude( double amplitude ) = 0;
88 
90  virtual void setBowSize( double size ) = 0;
91 
93  virtual void setSpraySizeScale( double scale ) = 0;
94 
97  virtual void setNumHullSprays( int numSprays ) = 0;
98 
101  virtual void setHullSprayStart( double extent ) = 0;
102 
105  virtual void setHullSprayEnd( double extent ) = 0;
106 
109  virtual void setHullSprayVelocityScale( double scale ) = 0;
110 
112  virtual void setHullSpraySizeScale( double scale ) = 0;
113 
115  virtual void setHullSprayVerticalOffset( double offset ) = 0;
116  };
117 }
voidpf void uLong size
Definition: ioapi.h:39
The (abstract) interface for a model of a Kelvin wake.
Definition: DtWakeModel.h:23
#define DT_DLL_VRVCORE
Definition: vrvCore.h:20
unsigned long long DtUniqueID
Definition: DtUniqueID.h:19
Contains makVrv::DtModel class.
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.
A model which owns a single model instance. A DtModel is a managing container for a single DtModelIns...
Definition: DtModel.h:56
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:72
voidpf uLong offset
Definition: ioapi.h:42
Contains DLL export macros.

Document ID: Generated on Tue Sep 24 19:28:17 EDT 2024 from SVN revision 269799
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)