|
| View (QObject *parent=nullptr) |
|
QDateTime | beginTime () const |
|
Q_INVOKABLE void | centerOnGeoCoordinate (QPointF geoCoord) |
|
QTransform | deviceTransform () const |
|
QDateTime | endTime () const |
|
int | level () const |
|
double | mapMetersToScene (double meters) const |
|
Q_INVOKABLE double | mapMetersToScreen (double meters) const |
|
QRectF | mapSceneToScreen (const QRectF &sceneRect) const |
|
QPointF | mapSceneToScreen (QPointF scenePos) const |
|
double | mapScreenDistanceToSceneDistance (double distance) const |
|
Q_INVOKABLE double | mapScreenToMeters (int pixels) const |
|
Q_INVOKABLE QPointF | mapScreenToScene (QPointF screenPos) const |
|
double | panHeight () const |
|
void | panScreenSpace (QPoint offset) |
|
Q_INVOKABLE void | panTopLeft (double x, double y) |
|
double | panWidth () const |
|
double | panX () const |
|
double | panY () const |
|
QRectF | sceneBoundingBox () const |
|
QTransform | sceneToScreenTransform () const |
|
int | screenHeight () const |
|
int | screenWidth () const |
|
void | setBeginTime (const QDateTime &beginTime) |
|
void | setDeviceTransform (const QTransform &t) |
|
void | setEndTime (const QDateTime &endTime) |
|
void | setLevel (int level) |
|
void | setSceneBoundingBox (const QRectF &bbox) |
|
void | setSceneBoundingBox (OSM::BoundingBox bbox) |
|
void | setScreenSize (QSize size) |
|
void | setViewport (const QRectF &viewport) |
|
Q_INVOKABLE void | setZoomLevel (double zoom, QPointF screenCenter) |
|
QRectF | viewport () const |
|
QRectF | viewportForZoom (double zoom, QPointF screenCenter) const |
|
Q_INVOKABLE void | zoomIn (QPointF screenCenter) |
|
double | zoomLevel () const |
|
Q_INVOKABLE void | zoomOut (QPointF screenCenter) |
|
| QObject (QObject *parent) |
|
QBindable< QString > | bindableObjectName () |
|
bool | blockSignals (bool block) |
|
const QObjectList & | children () const const |
|
QMetaObject::Connection | connect (const QObject *sender, const char *signal, const char *method, Qt::ConnectionType type) const const |
|
void | deleteLater () |
|
void | destroyed (QObject *obj) |
|
bool | disconnect (const char *signal, const QObject *receiver, const char *method) const const |
|
bool | disconnect (const QObject *receiver, const char *method) const const |
|
void | dumpObjectInfo () const const |
|
void | dumpObjectTree () const const |
|
QList< QByteArray > | dynamicPropertyNames () const const |
|
virtual bool | event (QEvent *e) |
|
virtual bool | eventFilter (QObject *watched, QEvent *event) |
|
T | findChild (const QString &name, Qt::FindChildOptions options) const const |
|
QList< T > | findChildren (const QRegularExpression &re, Qt::FindChildOptions options) const const |
|
QList< T > | findChildren (const QString &name, Qt::FindChildOptions options) const const |
|
QList< T > | findChildren (Qt::FindChildOptions options) const const |
|
bool | inherits (const char *className) const const |
|
void | installEventFilter (QObject *filterObj) |
|
bool | isQuickItemType () const const |
|
bool | isWidgetType () const const |
|
bool | isWindowType () const const |
|
void | killTimer (int id) |
|
virtual const QMetaObject * | metaObject () const const |
|
void | moveToThread (QThread *targetThread) |
|
QString | objectName () const const |
|
void | objectNameChanged (const QString &objectName) |
|
QObject * | parent () const const |
|
QVariant | property (const char *name) const const |
|
| Q_CLASSINFO (Name, Value) |
|
| Q_EMIT Q_EMIT |
|
| Q_ENUM (...) |
|
| Q_ENUM_NS (...) |
|
| Q_ENUMS (...) |
|
| Q_FLAG (...) |
|
| Q_FLAG_NS (...) |
|
| Q_FLAGS (...) |
|
| Q_GADGET Q_GADGET |
|
| Q_GADGET_EXPORT (EXPORT_MACRO) |
|
| Q_INTERFACES (...) |
|
| Q_INVOKABLE Q_INVOKABLE |
|
| Q_MOC_INCLUDE Q_MOC_INCLUDE |
|
| Q_NAMESPACE Q_NAMESPACE |
|
| Q_NAMESPACE_EXPORT (EXPORT_MACRO) |
|
| Q_OBJECT Q_OBJECT |
|
| Q_PROPERTY (...) |
|
| Q_REVISION Q_REVISION |
|
| Q_SET_OBJECT_NAME (Object) |
|
| Q_SIGNAL Q_SIGNAL |
|
| Q_SIGNALS Q_SIGNALS |
|
| Q_SLOT Q_SLOT |
|
| Q_SLOTS Q_SLOTS |
|
T | qobject_cast (const QObject *object) |
|
T | qobject_cast (QObject *object) |
|
| QT_NO_NARROWING_CONVERSIONS_IN_CONNECT QT_NO_NARROWING_CONVERSIONS_IN_CONNECT |
|
void | removeEventFilter (QObject *obj) |
|
void | setObjectName (const QString &name) |
|
void | setObjectName (QAnyStringView name) |
|
void | setParent (QObject *parent) |
|
bool | setProperty (const char *name, const QVariant &value) |
|
bool | setProperty (const char *name, QVariant &&value) |
|
bool | signalsBlocked () const const |
|
int | startTimer (int interval, Qt::TimerType timerType) |
|
int | startTimer (std::chrono::milliseconds interval, Qt::TimerType timerType) |
|
QThread * | thread () const const |
|
|
static QRectF | mapGeoToScene (OSM::BoundingBox box) |
|
static QPointF | mapGeoToScene (OSM::Coordinate coord) |
|
static Q_INVOKABLE OSM::BoundingBox | mapSceneToGeo (const QRectF &box) |
|
static OSM::Coordinate | mapSceneToGeo (QPointF p) |
|
QMetaObject::Connection | connect (const QObject *sender, const char *signal, const QObject *receiver, const char *method, Qt::ConnectionType type) |
|
QMetaObject::Connection | connect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method, Qt::ConnectionType type) |
|
QMetaObject::Connection | connect (const QObject *sender, PointerToMemberFunction signal, const QObject *context, Functor functor, Qt::ConnectionType type) |
|
QMetaObject::Connection | connect (const QObject *sender, PointerToMemberFunction signal, const QObject *receiver, PointerToMemberFunction method, Qt::ConnectionType type) |
|
QMetaObject::Connection | connect (const QObject *sender, PointerToMemberFunction signal, Functor functor) |
|
bool | disconnect (const QMetaObject::Connection &connection) |
|
bool | disconnect (const QObject *sender, const char *signal, const QObject *receiver, const char *method) |
|
bool | disconnect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method) |
|
bool | disconnect (const QObject *sender, PointerToMemberFunction signal, const QObject *receiver, PointerToMemberFunction method) |
|
QString | tr (const char *sourceText, const char *disambiguation, int n) |
|
View transformations and transformation manipulation.
There are three different coordinate systems involved here:
- The geographic world coordinates of the OSM input data. This uses OSM::Coordinate.
- The scene coordinates which have a the Web Mercator projection applied (see https://en.wikipedia.org/wiki/Mercator_projection). This uses QPointF ranging from 0x0 to 256x256
- The screen coordinates (ie. visible pixels on screen). This uses QPoint. Further, there's also three slight variations of those in use here:
- "HUD" coordinates: elements that follow the scene coordinates for their positioning, but the screen coordinates regarding scaling and rotation. This is used for map labels.
- Geographic distances. This is needed to display things in a fixed width in meters in the scene, or to compute the map scale. Note that this only works due to the relatively high zoom levels, so that earth curvature or map projection effects are negligible.
- "pan space": same transform as screen space, but with the origin at the origin of the scene bounding box This is useful for implementing scene-wide panning and showing scroll bars.
Definition at line 39 of file view.h.