VR-Forces 4.7 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
radarCoverageModel.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2018 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
6 #pragma once
7 
9 #include <vrvCore/DtModel.h>
10 #include <vector>
11 
12 namespace makVrv
13 {
14  class DtModelInstance;
15  class DtSceneObject;
16  class DtOsgSceneConnector;
17 }
18 
19 namespace makVrf
20 {
24  {
25  public:
28 
30  virtual ~DtRadarCoverageModel();
31 
33  int numberOfAreas() const
34  {
35  return myAreas.size();
36  }
37 
38  const std::vector<makVrv::DtModelInstance*>& areas() const
39  {
40  return myAreas;
41  }
42 
44  virtual void setVisible(bool);
45 
48  virtual void setAreasVisible(bool);
49 
51  virtual void setVisible(int i, bool);
52 
54  virtual void update();
55 
57  virtual void setNumberOfAreas(int);
58 
60  virtual void removeArea(int);
61 
63  virtual void setColor(int i, float r, float g, float b, float a) = 0;
64 
65  virtual void setPosition( int vtx, const DtVector& position );
66 
67  virtual void setOrigin(const DtVector&);
68 
69  protected:
70  virtual void areaSetVisible(makVrv::DtModelInstance*, bool);
71 
73  virtual makVrv::DtModelInstance* createArea() = 0;
74 
77  virtual void addToScene( const makVrv::DtUniqueID& sceneObjectId, int modelSet,
78  int visualizerType );
79 
81  virtual void removeFromScene();
82 
86  virtual void setIsSupportModel(bool isSupport);
87 
89  virtual void update(makVrv::DtModelInstance*) = 0;
90 
92  virtual void removeArea(makVrv::DtModelInstance*) = 0;
93 
94  protected:
95  std::vector<makVrv::DtModelInstance*> myAreas;
99  };
100 
104  {
105  public:
107  virtual ~DtRadarCoverageOverlayModel();
108 
109  virtual void setColor(int i, float r, float g, float b, float a);
110 
112  virtual void setPosition(int i, int index, const DtVector&);
113 
114  virtual void setOrigin(const DtVector&);
115 
116  protected:
117  virtual void update(makVrv::DtModelInstance*);
118  virtual makVrv::DtModelInstance* createArea();
119  virtual void removeArea(makVrv::DtModelInstance*);
120  };
121 
125  {
126  public:
128  virtual ~DtRadarCoverageExtrudedModel();
129 
130  virtual void setOrigin(const DtVector&);
131 
132  virtual void setOutsideColor(int i, float r, float g, float b, float a);
133  virtual void setInsideColor(int i, float r, float g, float b, float a);
134 
135  virtual void setUpExtent(int i, double);
136  virtual void setPositions(int i, const std::vector<DtVector>&, const DtVector& origin);
137 
138  protected:
139  virtual void setColor(int i, float r, float g, float b, float a);
140  virtual void update(makVrv::DtModelInstance*);
141  virtual makVrv::DtModelInstance* createArea();
142  virtual void removeArea(makVrv::DtModelInstance*);
143  virtual void areaSetVisible(makVrv::DtModelInstance*, bool);
144 
145  protected:
146  std::map<makVrv::DtModelInstance*, makVrv::DtOsgSceneConnector*> mySceneConnectors;
147  };
148 }
149 

Document ID: Generated on Fri Apr 26 21:53:14 EDT 2019 from SVN revision 197883
Copyright © 2005-2019 VT MAK. All Rights Reserved (www.mak.com)