AfriGIS Map SDK (BB10)  v 1.0.0
Provides easy integration of AfriGIS Maps into BB10 platform.
CircleItem.hpp
1 /*
2  * CircleItem.hpp
3  *
4  * Created on: Aug 19, 2013
5  * Author: sdsl
6  */
7 
8 #ifndef CIRCLEITEM_HPP_
9 #define CIRCLEITEM_HPP_
10 
11 #include "Item.hpp"
12 #include "AGMapDataStruct.hpp"
13 #include <bb/cascades/Application>
14 
15 using bb::cascades::Application;
16 
17 class ViewManager;
18 
26 class CircleItem: public Item
27 {
28  Q_OBJECT
29 
30 public:
31 
36  CircleItem(QList<AGLocationCoordinate2D> *circleCenter, float circleRadius, QColor *circleColor, ViewManager *viewManager, AGOffsetInPixel offset);
37 
42  ~CircleItem();
43 
44 public:
45 
50  void render();
51 
57  void updateLocation(QList<AGLocationCoordinate2D> *updatedGeoLocationCoordinates);
58 
64  QList<AGLocationCoordinate2D>* getLocation();
65 
70  void setView(AnnotationView *annotationView);
71 
77 
83  void setAssociatedData(QVariant associatedData);
84 
90  QVariant getAssociatedData();
91 
92 private:
93 
98  float circleRadius;
99 
104  static const int triangleAmount = 60;
105 
110  QList<AGLocationCoordinate2D> *circleCenter;
111 
116  QList<QPair<float,float> > *relativeCoordinates;
117 
122  QColor *circleColor;
123 
128  AGOffsetInPixel offset;
129 
134  AnnotationView *annotationView;
135 
140  ViewManager *viewManager;
141 };
142 
143 #endif /* CIRCLEITEM_HPP_ */
void render()
private.
Definition: CircleItem.cpp:57
~CircleItem()
destructor.
Definition: CircleItem.cpp:24
void updateLocation(QList< AGLocationCoordinate2D > *updatedGeoLocationCoordinates)
update location of circle centre.
Definition: CircleItem.cpp:32
void setAssociatedData(QVariant associatedData)
set any type of data associated with this circle.
Definition: CircleItem.cpp:72
Item interface that need to be implemented by all annotation item object. Currently CircleItem...
Definition: Item.hpp:25
View responsible for presenting annotations visually in map. Annotation view are loosely coupled to a...
Definition: AnnotationView.hpp:29
AGOffsetInPixel Move offset pixel to draw annotation item.
Definition: AGMapDataStruct.hpp:102
QVariant associatedData
private.
Definition: Item.hpp:99
QVariant getAssociatedData()
get the data associated with this circle.
Definition: CircleItem.cpp:77
Annotation Item object representing a circular area on map. This class manages the data that defines ...
Definition: CircleItem.hpp:26
CircleItem(QList< AGLocationCoordinate2D > *circleCenter, float circleRadius, QColor *circleColor, ViewManager *viewManager, AGOffsetInPixel offset)
private.
Definition: CircleItem.cpp:12
AnnotationView * getView()
private.
Definition: CircleItem.cpp:52
QList< AGLocationCoordinate2D > * getLocation()
get location of circle annotation.
Definition: CircleItem.cpp:41
void setView(AnnotationView *annotationView)
private.
Definition: CircleItem.cpp:46