VR-Forces 5.0.1 Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtRotorWashDistributor.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 <vrvCore/vrvCore.h>
13 #include <vrvCore/DtUniqueID.h>
14 
15 #include <matrix/vlVector.h>
16 #include <matrix/vlTaitBryan.h>
17 #include <string>
18 
19 namespace makVrv
20 {
21  class DtSceneObject;
22  class DtRotorWashModel;
23  class DtModel;
24 
32  {
33  public:
34 
37 
39  virtual ~DtRotorWashDistributor();
40 
42  virtual const std::string& className() const;
43 
47  void setupRotorWashModel(DtUniqueID helicopterUniqueID, DtUniqueID rwModelUniqueID);
48 
51  virtual void modelToBeDestroyed(DtModel* model);
52 
55  virtual void setModelDefinition(const std::string& def);
56 
58  virtual void setRotorDiameter(double diameter);
60  virtual double rotorDiameter() const;
62 
64  virtual void setRotorWindSpeed(double speed);
66  virtual double rotorWindSpeed() const;
68 
70  virtual void setDefaultRotorDiameter(double diameter);
73  virtual double defaultRotorDiameter() const;
75 
77  virtual void setDefaultRotorWindSpeed(double speed);
80  virtual double defaultRotorWindSpeed() const;
82 
84  virtual void start();
85 
87  virtual void stop();
88 
90  virtual void setOffsetPos(const DtVector& offset);
91 
97  virtual void setVisible(bool isVisible);
98 
100  virtual bool isStopped();
101 
104  virtual void setHelicopterPos(const DtVector& modelPos);
105 
108  virtual void setHelicopterOri(const DtTaitBryan& modelOri);
109 
112  virtual void setIntensity(float intensity);
113 
115  virtual void setRotorWashDir(const DtVector& dir);
116 
118  virtual void update();
119 
120  protected:
122  virtual DtVector currentHeloPosition() const;
123 
125  virtual DtTaitBryan currentHeloOrientation() const;
126 
128  virtual DtSceneObject* sceneObject() const;
129 
130  private:
137 
138  protected:
142  };
143 }
DtRotorWashModel * myRotorWashModel
Definition: DtRotorWashDistributor.h:141
#define DT_DLL_VRVCORE
Definition: vrvCore.h:20
DtUniqueID myUniqueId
Definition: DtRotorWashDistributor.h:140
A DtSceneObject represents an object that can be positioned in the scene by (possibly) attaching it t...
Definition: DtSceneObject.h:42
A model which owns a single model instance. A DtModel is a managing container for a single DtModelIns...
Definition: DtModel.h:55
Contains makVrv::DtUniqueID type.
The interface for a model of a rotorWash.
Definition: DtRotorWashModel.h:23
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
voidpf uLong offset
Definition: ioapi.h:42
DtDe & myDe
Definition: DtRotorWashDistributor.h:139
The DtRotorWashDistributor is used to update the currently active.
Definition: DtRotorWashDistributor.h:31
Contains DLL export macros.

Document ID: Generated on Mon Jun 20 00:38:30 EDT 2022 from SVN revision 244029
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)