summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/location/declarativemaps/qdeclarativecirclemapitem.cpp14
-rw-r--r--src/location/declarativemaps/qdeclarativepolylinemapitem.cpp1
2 files changed, 11 insertions, 4 deletions
diff --git a/src/location/declarativemaps/qdeclarativecirclemapitem.cpp b/src/location/declarativemaps/qdeclarativecirclemapitem.cpp
index a30b7b30..608260cd 100644
--- a/src/location/declarativemaps/qdeclarativecirclemapitem.cpp
+++ b/src/location/declarativemaps/qdeclarativecirclemapitem.cpp
@@ -513,7 +513,7 @@ void QDeclarativeCircleMapItem::updatePolish()
invertedCircle = true;
} else {
geometry_.updateSourcePoints(*map(), circlePath);
- geometry_.updateScreenPoints(*map());
+ geometry_.updateScreenPoints(*map(), border_.width());
}
borderGeometry_.clear();
@@ -552,9 +552,17 @@ void QDeclarativeCircleMapItem::updatePolish()
}
QRectF combined = QGeoMapItemGeometry::translateToCommonOrigin(geoms);
- setWidth(combined.width());
- setHeight(combined.height());
+ if (invertedCircle || !preserve) {
+ setWidth(combined.width());
+ setHeight(combined.height());
+ setPositionOnMap(geometry_.origin(), geometry_.firstPointOffset());
+ } else {
+ setWidth(combined.width() + 2 * border_.width());
+ setHeight(combined.height() + 2 * border_.width());
+ }
+
+ // No offsetting here, even in normal case, because first point offset is already translated
setPositionOnMap(geometry_.origin(), geometry_.firstPointOffset());
}
diff --git a/src/location/declarativemaps/qdeclarativepolylinemapitem.cpp b/src/location/declarativemaps/qdeclarativepolylinemapitem.cpp
index 620ed14e..2dab58e9 100644
--- a/src/location/declarativemaps/qdeclarativepolylinemapitem.cpp
+++ b/src/location/declarativemaps/qdeclarativepolylinemapitem.cpp
@@ -60,7 +60,6 @@ QT_BEGIN_NAMESPACE
static const double kClipperScaleFactor = 281474976710656.0; // 48 bits of precision
-static const double kClipperScaleFactorInv = 1.0 / kClipperScaleFactor;
static inline IntPoint toIntPoint(const double x, const double y)
{