DISPLACE  1.0
A spatial model of fisheries to help sustainable fishing and maritime spatial planning
nodegraphics.h
Go to the documentation of this file.
1 /* --------------------------------------------------------------------------
2  * DISPLACE: DYNAMIC INDIVIDUAL VESSEL-BASED SPATIAL PLANNING
3  * AND EFFORT DISPLACEMENT
4  * Copyright (c) 2012, 2013, 2014 Francois Bastardie <fba@aqua.dtu.dk>
5  *
6  * This program is free software; you can redistribute it and/or modify
7  * it under the terms of the GNU General Public License as published by
8  * the Free Software Foundation; either version 2 of the License, or
9  * (at your option) any later version.
10  *
11  * This program is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14  * GNU General Public License for more details.
15  *
16  * You should have received a copy of the GNU General Public License along
17  * with this program; if not, write to the Free Software Foundation, Inc.,
18  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
19  * --------------------------------------------------------------------------
20  */
21 #ifndef NODEGRAPHICS_H
22 #define NODEGRAPHICS_H
23 
24 #include <QMapControl/GeometryPointShapeScaled.h>
25 #include <modelobjects/nodedata.h>
26 #include <modeltypes.h>
27 
28 #include <QBrush>
29 #include <QSettings>
30 
32 
33 class NodeGraphics : public qmapcontrol::GeometryPointShapeScaled {
34 protected:
35  QColor c;
36 
40 
41  std::shared_ptr<types::EnvironmentData> getEnvtData();
42 public:
43  NodeGraphics (NodeData *node, MapObjectsController *controller, int indx);
44 
45 protected:
46  virtual void drawShape(QPainter &painter, const qmapcontrol::RectWorldPx &rect);
47 
48 public:
49  static int piew();
50  static int pieh();
51  static void setPieSize(int w, int h);
52 
53 private:
54  static QSettings *settings;
55 };
56 
58 public:
61 
62  NodeWithPopStatsGraphics(Type type, NodeData *node, MapObjectsController *controller, int indx)
63  : NodeGraphics(node, controller, indx),
64  mType(type)
65  {}
66 
67 protected:
68  virtual void drawShape(QPainter &painter, const qmapcontrol::RectWorldPx &rect);
69 
70  Type getType() const { return mType; }
71  boost::optional<double> getValueForPop(int pop) const;
72  QList<int> getInterestingList() const;
73 
74 private:
75  Type mType;
76 };
77 
79 public:
81  : NodeGraphics(node, controller, indx) {}
82 
83 protected:
84  virtual void drawShape(QPainter &painter, const qmapcontrol::RectWorldPx &rect);
85 };
86 
88 public:
90  : NodeGraphics(node, controller, indx) {}
91 
92 protected:
93  virtual void drawShape(QPainter &painter, const qmapcontrol::RectWorldPx &rect);
94 };
95 
96 
98 public:
100  : NodeGraphics(node, controller, indx) {}
101 
102 protected:
103  virtual void drawShape(QPainter &painter, const qmapcontrol::RectWorldPx &rect);
104 };
105 
106 
108 public:
110  : NodeGraphics(node, controller, indx) {}
111 
112 protected:
113  virtual void drawShape(QPainter &painter, const qmapcontrol::RectWorldPx &rect);
114 };
115 
117 public:
119  : NodeGraphics(node, controller, indx) {}
120 
121 protected:
122  virtual void drawShape(QPainter &painter, const qmapcontrol::RectWorldPx &rect);
123 };
124 
126 public:
128  : NodeGraphics(node, controller, indx) {}
129 
130 protected:
131  virtual void drawShape(QPainter &painter, const qmapcontrol::RectWorldPx &rect);
132 };
133 
134 
136 public:
138  : NodeGraphics(node, controller, indx) {}
139 
140 protected:
141  virtual void drawShape(QPainter &painter, const qmapcontrol::RectWorldPx &rect);
142 };
143 
145 public:
147  : NodeGraphics(node, controller, indx) {}
148 
149 protected:
150  virtual void drawShape(QPainter &painter, const qmapcontrol::RectWorldPx &rect);
151 };
152 
153 
155 public:
157  : NodeGraphics(node, controller, indx) {}
158 
159 protected:
160  virtual void drawShape(QPainter &painter, const qmapcontrol::RectWorldPx &rect);
161 };
162 
163 
165 public:
167  : NodeGraphics(node, controller, indx) {}
168 
169 protected:
170  virtual void drawShape(QPainter &painter, const qmapcontrol::RectWorldPx &rect);
171 };
172 
174 public:
176  : NodeGraphics(node, controller, indx) {}
177 
178 protected:
179  virtual void drawShape(QPainter &painter, const qmapcontrol::RectWorldPx &rect);
180 };
181 
183 public:
185  : NodeGraphics(node, controller, indx) {}
186 
187 protected:
188  virtual void drawShape(QPainter &painter, const qmapcontrol::RectWorldPx &rect);
189 };
190 
191 
193 public:
194  NodeWithSSTGraphics(NodeData *node, MapObjectsController *controller, int indx)
195  : NodeGraphics(node, controller, indx) {}
196 
197 protected:
198  virtual void drawShape(QPainter &painter, const qmapcontrol::RectWorldPx &rect);
199 };
200 
202 public:
203  NodeWithWindGraphics(NodeData *node, MapObjectsController *controller, int indx)
204  : NodeGraphics(node, controller, indx) {}
205 
206 protected:
207  virtual void drawShape(QPainter &painter, const qmapcontrol::RectWorldPx &rect);
208 };
209 
210 
212 public:
214  : NodeGraphics(node, controller, indx) {}
215 
216 protected:
217  virtual void drawShape(QPainter &painter, const qmapcontrol::RectWorldPx &rect);
218 };
219 
220 
222 public:
224  : NodeGraphics(node, controller, indx) {}
225 
226 protected:
227  virtual void drawShape(QPainter &painter, const qmapcontrol::RectWorldPx &rect);
228 };
229 
231 public:
233  : NodeGraphics(node, controller, indx) {}
234 
235 protected:
236  virtual void drawShape(QPainter &painter, const qmapcontrol::RectWorldPx &rect);
237 };
238 
240 public:
242  : NodeGraphics(node, controller, indx) {}
243 
244 protected:
245  virtual void drawShape(QPainter &painter, const qmapcontrol::RectWorldPx &rect);
246 };
247 
249 public:
251  : NodeGraphics(node, controller, indx) {}
252 
253 protected:
254  virtual void drawShape(QPainter &painter, const qmapcontrol::RectWorldPx &rect);
255 };
256 
257 
259 public:
261  : NodeGraphics(node, controller, indx) {}
262 
263 protected:
264  virtual void drawShape(QPainter &painter, const qmapcontrol::RectWorldPx &rect);
265 };
266 
267 
269 public:
271  : NodeGraphics(node, controller, indx) {}
272 
273 protected:
274  virtual void drawShape(QPainter &painter, const qmapcontrol::RectWorldPx &rect);
275 };
276 
277 #endif // NODEGRAPHICS_H
Definition: nodegraphics.h:59
Definition: nodegraphics.h:116
NodeWithPopStatsGraphics(Type type, NodeData *node, MapObjectsController *controller, int indx)
Definition: nodegraphics.h:62
NodeWithDissolvedCarbonGraphics(NodeData *node, MapObjectsController *controller, int indx)
Definition: nodegraphics.h:241
Definition: nodegraphics.h:59
Definition: nodegraphics.h:59
NodeWithCumSubsurfaceSweptAreaGraphics(NodeData *node, MapObjectsController *controller, int indx)
Definition: nodegraphics.h:99
std::shared_ptr< types::EnvironmentData > getEnvtData()
Definition: nodegraphics.cpp:43
virtual void drawShape(QPainter &painter, const qmapcontrol::RectWorldPx &rect)
Definition: nodegraphics.cpp:278
virtual void drawShape(QPainter &painter, const qmapcontrol::RectWorldPx &rect)
Definition: nodegraphics.cpp:51
static void setPieSize(int w, int h)
Definition: nodegraphics.cpp:76
NodeData * mNode
Definition: nodegraphics.h:37
NodeWithNbChokedGraphics(NodeData *node, MapObjectsController *controller, int indx)
Definition: nodegraphics.h:146
Definition: nodegraphics.h:59
virtual void drawShape(QPainter &painter, const qmapcontrol::RectWorldPx &rect)
Definition: nodegraphics.cpp:83
Definition: nodegraphics.h:230
virtual void drawShape(QPainter &painter, const qmapcontrol::RectWorldPx &rect)
Definition: nodegraphics.cpp:193
NodeWithSalinityGraphics(NodeData *node, MapObjectsController *controller, int indx)
Definition: nodegraphics.h:184
Definition: nodegraphics.h:201
virtual void drawShape(QPainter &painter, const qmapcontrol::RectWorldPx &rect)
Definition: nodegraphics.cpp:242
virtual void drawShape(QPainter &painter, const qmapcontrol::RectWorldPx &rect)
Definition: nodegraphics.cpp:250
Definition: nodegraphics.h:154
virtual void drawShape(QPainter &painter, const qmapcontrol::RectWorldPx &rect)
Definition: nodegraphics.cpp:234
virtual void drawShape(QPainter &painter, const qmapcontrol::RectWorldPx &rect)
Definition: nodegraphics.cpp:379
Definition: nodegraphics.h:182
Definition: nodegraphics.h:97
virtual void drawShape(QPainter &painter, const qmapcontrol::RectWorldPx &rect)
Definition: nodegraphics.cpp:226
Definition: nodegraphics.h:60
Definition: nodegraphics.h:78
Type getType() const
Definition: nodegraphics.h:70
virtual void drawShape(QPainter &painter, const qmapcontrol::RectWorldPx &rect)
Definition: nodegraphics.cpp:218
MapObjectsController * mController
Definition: nodegraphics.h:38
virtual void drawShape(QPainter &painter, const qmapcontrol::RectWorldPx &rect)
Definition: nodegraphics.cpp:210
Definition: nodegraphics.h:192
virtual void drawShape(QPainter &painter, const qmapcontrol::RectWorldPx &rect)
Definition: nodegraphics.cpp:347
Definition: nodegraphics.h:125
virtual void drawShape(QPainter &painter, const qmapcontrol::RectWorldPx &rect)
Definition: nodegraphics.cpp:337
Definition: nodegraphics.h:144
NodeWithNitrogenGraphics(NodeData *node, MapObjectsController *controller, int indx)
Definition: nodegraphics.h:213
Definition: nodegraphics.h:87
NodeGraphics(NodeData *node, MapObjectsController *controller, int indx)
Definition: nodegraphics.cpp:33
virtual void drawShape(QPainter &painter, const qmapcontrol::RectWorldPx &rect)
Definition: nodegraphics.cpp:269
NodeWithSSTGraphics(NodeData *node, MapObjectsController *controller, int indx)
Definition: nodegraphics.h:194
virtual void drawShape(QPainter &painter, const qmapcontrol::RectWorldPx &rect)
Definition: nodegraphics.cpp:297
int mModelIndex
Definition: nodegraphics.h:39
NodeWithCumSweptAreaGraphics(NodeData *node, MapObjectsController *controller, int indx)
Definition: nodegraphics.h:89
Definition: nodegraphics.h:107
NodeWithWindGraphics(NodeData *node, MapObjectsController *controller, int indx)
Definition: nodegraphics.h:203
Definition: nodegraphics.h:135
NodeWithCumDiscardsRatioGraphics(NodeData *node, MapObjectsController *controller, int indx)
Definition: nodegraphics.h:137
Definition: nodegraphics.h:59
NodeWithCumFTimeGraphics(NodeData *node, MapObjectsController *controller, int indx)
Definition: nodegraphics.h:80
Definition: nodegraphics.h:239
NodeWithCumCatchesWithThresholdGraphics(NodeData *node, MapObjectsController *controller, int indx)
Definition: nodegraphics.h:118
Definition: nodegraphics.h:248
NodeWithOxygenGraphics(NodeData *node, MapObjectsController *controller, int indx)
Definition: nodegraphics.h:232
an extension class for Node
Definition: nodedata.h:43
NodeWithTariffs2Graphics(NodeData *node, MapObjectsController *controller, int indx)
Definition: nodegraphics.h:175
boost::optional< double > getValueForPop(int pop) const
Definition: nodegraphics.cpp:135
NodeWithCumDiscardsGraphics(NodeData *node, MapObjectsController *controller, int indx)
Definition: nodegraphics.h:127
Definition: nodegraphics.h:57
virtual void drawShape(QPainter &painter, const qmapcontrol::RectWorldPx &rect)
Definition: nodegraphics.cpp:259
NodeWithCumCatchesGraphics(NodeData *node, MapObjectsController *controller, int indx)
Definition: nodegraphics.h:109
virtual void drawShape(QPainter &painter, const qmapcontrol::RectWorldPx &rect)
Definition: nodegraphics.cpp:327
QColor c
Definition: nodegraphics.h:35
Definition: mapobjectscontroller.h:91
Definition: nodegraphics.h:268
Definition: nodegraphics.h:33
virtual void drawShape(QPainter &painter, const qmapcontrol::RectWorldPx &rect)
Definition: nodegraphics.cpp:368
NodeWithShippingdensityGraphics(NodeData *node, MapObjectsController *controller, int indx)
Definition: nodegraphics.h:260
Definition: nodegraphics.h:59
NodeWithBathymetryGraphics(NodeData *node, MapObjectsController *controller, int indx)
Definition: nodegraphics.h:250
virtual void drawShape(QPainter &painter, const qmapcontrol::RectWorldPx &rect)
Definition: nodegraphics.cpp:287
QList< int > getInterestingList() const
Definition: nodegraphics.cpp:167
virtual void drawShape(QPainter &painter, const qmapcontrol::RectWorldPx &rect)
Definition: nodegraphics.cpp:317
Type
Definition: nodegraphics.h:59
NodeWithTariffs1Graphics(NodeData *node, MapObjectsController *controller, int indx)
Definition: nodegraphics.h:166
NodeWithTariffs0Graphics(NodeData *node, MapObjectsController *controller, int indx)
Definition: nodegraphics.h:156
virtual void drawShape(QPainter &painter, const qmapcontrol::RectWorldPx &rect)
Definition: nodegraphics.cpp:357
Definition: nodegraphics.h:211
static int piew()
Definition: nodegraphics.cpp:64
NodeWithPhosphorusGraphics(NodeData *node, MapObjectsController *controller, int indx)
Definition: nodegraphics.h:223
Definition: nodegraphics.h:164
Definition: nodegraphics.h:221
Definition: nodegraphics.h:173
virtual void drawShape(QPainter &painter, const qmapcontrol::RectWorldPx &rect)
Definition: nodegraphics.cpp:202
NodeWithSiltfractionGraphics(NodeData *node, MapObjectsController *controller, int indx)
Definition: nodegraphics.h:270
Definition: nodegraphics.h:258
static int pieh()
Definition: nodegraphics.cpp:70
virtual void drawShape(QPainter &painter, const qmapcontrol::RectWorldPx &rect)
Definition: nodegraphics.cpp:307
Definition: nodegraphics.h:59