summaryrefslogtreecommitdiffstats
path: root/app/qcheapruler.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'app/qcheapruler.hpp')
-rw-r--r--app/qcheapruler.hpp57
1 files changed, 0 insertions, 57 deletions
diff --git a/app/qcheapruler.hpp b/app/qcheapruler.hpp
deleted file mode 100644
index 8d3d7bb..0000000
--- a/app/qcheapruler.hpp
+++ /dev/null
@@ -1,57 +0,0 @@
-#pragma once
-
-#include <QGeoCoordinate>
-#include <QJSValue>
-#include <QObject>
-#include <QtCore>
-
-#include <mapbox/cheap_ruler.hpp> /* BSD3 LICENSE */
-
-namespace cr = mapbox::cheap_ruler;
-
-class QCheapRuler : public QObject{
- Q_OBJECT
- //registy the read write&notify function for qml
- //the distance from start point to end point(read only)
- Q_PROPERTY(double distance READ distance)
- //the distance from start point to current postion along the route(read notify)
- Q_PROPERTY(double currentDistance READ currentDistance NOTIFY currentDistanceChanged)
- //the coordinate info of current postion(read)
- Q_PROPERTY(QGeoCoordinate currentPosition READ currentPosition NOTIFY currentPositionChanged)
- //the route path info postion(read write&notify)
- Q_PROPERTY(QJSValue path READ path WRITE setPath NOTIFY pathChanged)
-
-public:
- QCheapRuler();
- ~QCheapRuler();
-
- //read write&notify function for qml
- double distance() const;
- double currentDistance() const;
- QGeoCoordinate currentPosition() const;
- QJSValue path() const;
- void setPath(const QJSValue &value);
- void setCurrentPosition(double, double);
-
- //functions that can called by qml(Q_INVOKABLE)
- Q_INVOKABLE void setCurrentCoordinate(QString,QString);
- Q_INVOKABLE void setCurrentDistance(QString);
-
-signals:
- //notify signals to qml
- //notify signal when the distance from start point to current postion changed
- void currentDistanceChanged();
- //notify signal when currentPosition changed
- void currentPositionChanged();
- //notify signal when the distance from start point to current postion changed
- void pathChanged();
-
-private:
- cr::CheapRuler ruler() const;
-
- double m_distance = 0.;
- double m_currentDistance = 0.;
- QGeoCoordinate m_currentPosition;
-
- cr::line_string m_path;
-};