summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBruno de Oliveira Abinader <bruno@mapbox.com>2018-11-24 17:31:13 +0200
committerBruno de Oliveira Abinader <bruno@mapbox.com>2018-11-27 15:23:26 +0200
commit23f0dde6dd01b98af3881d1657ce43497b31da5d (patch)
tree89e8eec5ee0e5b7fe1816b5e93f7e836e0118c70
parent22a77bdcfc6fa92fd7d65398c819c3ef21a92a56 (diff)
downloadqtlocation-mapboxgl-upstream/transform-cleanup.tar.gz
[glfw] Use jumpTo() in the route demoupstream/transform-cleanup
-rw-r--r--platform/glfw/glfw_view.cpp14
1 files changed, 7 insertions, 7 deletions
diff --git a/platform/glfw/glfw_view.cpp b/platform/glfw/glfw_view.cpp
index 9179113139..d0c8a7be76 100644
--- a/platform/glfw/glfw_view.cpp
+++ b/platform/glfw/glfw_view.cpp
@@ -261,18 +261,18 @@ void GLFWView::onKey(GLFWwindow *window, int key, int /*scancode*/, int action,
static double routeDistance = ruler.lineDistance(lineString);
static double routeProgress = 0;
routeProgress += 0.0005;
- if (routeProgress > 1.0) routeProgress = 0;
+ if (routeProgress > 1.0) {
+ routeProgress = 0.0;
+ }
- double distance = routeProgress * routeDistance;
- auto point = ruler.along(lineString, distance);
+ auto point = ruler.along(lineString, routeProgress * routeDistance);
+ const mbgl::LatLng center { point.y, point.x };
auto latLng = routeMap->getLatLng();
- routeMap->setLatLng({ point.y, point.x });
double bearing = ruler.bearing({ latLng.longitude(), latLng.latitude() }, point);
double easing = bearing - routeMap->getBearing();
easing += easing > 180.0 ? -360.0 : easing < -180 ? 360.0 : 0;
- routeMap->setBearing(routeMap->getBearing() + (easing / 20));
- routeMap->setPitch(60.0);
- routeMap->setZoom(18.0);
+ bearing = routeMap->getBearing() + (easing / 20);
+ routeMap->jumpTo(mbgl::CameraOptions().withCenter(center).withZoom(18.0).withAngle(bearing).withPitch(60.0));
};
view->animateRouteCallback(view->map);
} break;