1 #ifndef OSMSCOUT_CLIENT_QT_OVERLAYOBJECT_H 2 #define OSMSCOUT_CLIENT_QT_OVERLAYOBJECT_H 26 #include <QMutexLocker> 48 Q_PROPERTY(QString type READ getTypeName WRITE setTypeName)
49 Q_PROPERTY(
int size READ getSize)
50 Q_PROPERTY(QString objectType READ getObjectTypeStr)
51 Q_PROPERTY(qint8 layer READ getLayer WRITE setLayer)
52 Q_PROPERTY(QString name READ getName WRITE setName)
53 Q_PROPERTY(QString color READ getColor WRITE setColor)
54 Q_PROPERTY(
LocationEntry *boundingBox READ getBBoxAsLocation NOTIFY bboxChanged)
61 int8_t layer{std::numeric_limits<int8_t>::max()};
69 void addPoint(
double lat,
double lon);
77 explicit OverlayObject(
const std::vector<osmscout::Point> &nodes,
78 QString typeName=
"_route",
79 QObject *parent=Q_NULLPTR);
90 switch (getObjectType()){
104 QMutexLocker locker(&lock);
109 QMutexLocker locker(&lock);
114 QMutexLocker locker(&lock);
120 QMutexLocker locker(&lock);
126 QMutexLocker locker(&lock);
132 QMutexLocker locker(&lock);
138 QMutexLocker locker(&lock);
144 QMutexLocker locker(&lock);
148 void setColor(
const QString &c);
149 void setColorValue(Color &c);
152 osmscout::GeoBox boundingBox()
const;
153 std::vector<osmscout::GeoCoord> getCoords()
const;
154 std::vector<osmscout::Point> getPoints()
const;
158 osmscout::FeatureValueBuffer &features)
const;
161 osmscout::GeoBox boundingBoxInternal()
const;
164 std::vector<SegmentGeoBox> segments()
const;
175 explicit OverlayArea(
const std::vector<osmscout::Point> &nodes,
176 QString typeName=
"_route",
177 QObject *parent=Q_NULLPTR);
186 const osmscout::TypeConfig &typeConfig)
const;
196 explicit OverlayWay(
const std::vector<osmscout::Point> &nodes,
197 QString typeName=
"_route",
198 QObject *parent=Q_NULLPTR);
207 const osmscout::TypeConfig &typeConfig)
const;
217 explicit OverlayNode(
const std::vector<osmscout::Point> &nodes,
218 QString typeName=
"_route",
219 QObject *parent=Q_NULLPTR);
228 const osmscout::TypeConfig &typeConfig)
const;
#define OSMSCOUT_CLIENT_QT_API
Definition: ClientQtImportExport.h:45
Definition: OverlayObject.h:168
std::shared_ptr< Node > NodeRef
Definition: Node.h:124
virtual osmscout::RefType getObjectType() const
Definition: OverlayObject.h:85
QString getTypeName() const
Definition: OverlayObject.h:102
osmscout::RefType getObjectType() const override
Definition: OverlayObject.h:181
Definition: ObjectRef.h:135
QString getObjectTypeStr() const
Definition: OverlayObject.h:89
std::shared_ptr< Way > WayRef
Definition: Way.h:202
qint8 getLayer() const
Definition: OverlayObject.h:118
Definition: OverlayObject.h:189
Definition: ObjectRef.h:133
RefType
Definition: ObjectRef.h:131
QMutex lock
Definition: OverlayObject.h:64
QString getName() const
Definition: OverlayObject.h:130
std::shared_ptr< OverlayObject > OverlayObjectRef
Definition: OverlayObject.h:232
std::shared_ptr< Area > AreaRef
Definition: Area.h:358
Definition: OverlayObject.h:210
Definition: ObjectRef.h:134
Definition: OverlayObject.h:45
Definition: LocationEntry.h:42
void setLayer(qint8 l)
Definition: OverlayObject.h:124
osmscout::RefType getObjectType() const override
Definition: OverlayObject.h:202
std::shared_ptr< TypeInfo > TypeInfoRef
Definition: TypeConfig.h:58
Definition: Geometry.h:1173
void setName(const QString &n)
Definition: OverlayObject.h:136
Definition: ObjectRef.h:136
QString getColor() const
Definition: OverlayObject.h:142
osmscout::RefType getObjectType() const override
Definition: OverlayObject.h:223
void setTypeName(const QString &name)
Definition: OverlayObject.h:108
size_t getSize()
Definition: OverlayObject.h:113
std::optional< osmscout::Color > colorValue
Definition: OverlayObject.h:65