Skip to content
This repository has been archived by the owner on Aug 8, 2023. It is now read-only.

[android] - correct bearing conversion when animating the map with ju… #9050

Merged
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion platform/android/src/map/camera_position.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ jni::Object<CameraPosition> CameraPosition::New(jni::JNIEnv &env, mbgl::CameraOp
center.wrap();

// convert bearing, core ranges from [−π rad, π rad], android from 0 to 360 degrees
double bearing_degrees = options.angle.value_or(0) * 180.0 / M_PI;
double bearing_degrees = (options.angle.value_or(0) * 180.0 / M_PI) + 180;
while (bearing_degrees > 360) {
bearing_degrees -= 360;
}
Expand Down
6 changes: 3 additions & 3 deletions platform/android/src/native_map_view.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -385,7 +385,7 @@ void NativeMapView::moveBy(jni::JNIEnv&, jni::jdouble dx, jni::jdouble dy, jni::
void NativeMapView::jumpTo(jni::JNIEnv&, jni::jdouble angle, jni::jdouble latitude, jni::jdouble longitude, jni::jdouble pitch, jni::jdouble zoom) {
mbgl::CameraOptions options;
if (angle != -1) {
options.angle = (-angle * M_PI) / 180;
options.angle = (angle - 180 * M_PI) / 180;
}
options.center = mbgl::LatLng(latitude, longitude);
options.padding = insets;
Expand All @@ -402,7 +402,7 @@ void NativeMapView::jumpTo(jni::JNIEnv&, jni::jdouble angle, jni::jdouble latitu
void NativeMapView::easeTo(jni::JNIEnv&, jni::jdouble angle, jni::jdouble latitude, jni::jdouble longitude, jni::jlong duration, jni::jdouble pitch, jni::jdouble zoom, jni::jboolean easing) {
mbgl::CameraOptions cameraOptions;
if (angle != -1) {
cameraOptions.angle = (-angle * M_PI) / 180;
cameraOptions.angle = (angle - 180 * M_PI) / 180;
}
cameraOptions.center = mbgl::LatLng(latitude, longitude);
cameraOptions.padding = insets;
Expand All @@ -426,7 +426,7 @@ void NativeMapView::easeTo(jni::JNIEnv&, jni::jdouble angle, jni::jdouble latitu
void NativeMapView::flyTo(jni::JNIEnv&, jni::jdouble angle, jni::jdouble latitude, jni::jdouble longitude, jni::jlong duration, jni::jdouble pitch, jni::jdouble zoom) {
mbgl::CameraOptions cameraOptions;
if (angle != -1) {
cameraOptions.angle = (-angle * M_PI) / 180 ;
cameraOptions.angle = (angle - 180 * M_PI / 180);
}
cameraOptions.center = mbgl::LatLng(latitude, longitude);
cameraOptions.padding = insets;
Expand Down