mirror of
https://github.com/tumic0/GPXSee.git
synced 2025-04-21 20:59:11 +02:00
Compare commits
2 Commits
1304fd5c3c
...
a281a68cbd
Author | SHA1 | Date | |
---|---|---|---|
a281a68cbd | |||
2e7f8dc341 |
@ -7,7 +7,7 @@
|
||||
#include "atlas.h"
|
||||
|
||||
|
||||
#define ZOOM_THRESHOLD 0.9
|
||||
#define ZOOM_THRESHOLD 0.8
|
||||
|
||||
#define TL(m) ((m)->xy2pp((m)->bounds().topLeft()))
|
||||
#define BR(m) ((m)->xy2pp((m)->bounds().bottomRight()))
|
||||
|
@ -62,9 +62,17 @@ RectC Map::llBounds()
|
||||
|
||||
qreal Map::resolution(const QRectF &rect)
|
||||
{
|
||||
qreal cy = rect.center().y();
|
||||
QPointF cl(rect.left(), cy);
|
||||
QPointF cr(rect.right(), cy);
|
||||
/* The haversine formula used in Coordinates::distanceTo() only gives
|
||||
"half world" distances and shorter so we have to use only the center
|
||||
"half rectangle" in case e.g. world map bounds are on the input */
|
||||
QRectF halfRect(QPointF(rect.left() + (rect.width() / 4.0),
|
||||
rect.top() + (rect.height() / 4.0)),
|
||||
QPointF(rect.right() - (rect.width() / 4.0),
|
||||
rect.bottom() - (rect.height() / 4.0)));
|
||||
|
||||
qreal cy = halfRect.center().y();
|
||||
QPointF cl(halfRect.left(), cy);
|
||||
QPointF cr(halfRect.right(), cy);
|
||||
|
||||
qreal ds = xy2ll(cl).distanceTo(xy2ll(cr));
|
||||
qreal ps = QLineF(cl, cr).length();
|
||||
|
Loading…
x
Reference in New Issue
Block a user