gpt4 book ai didi

android - 根据当前步行方向旋转 map android google maps

转载 作者:行者123 更新时间:2023-11-30 02:37:16 25 4
gpt4 key购买 nike

我有一个带有谷歌地图的安卓应用程序。谁能告诉我我们如何根据用户当前的行走方向旋转 map ?看了很多资料还是有点懵。

谢谢

最佳答案

您可以通过比较两点来计算方位。你说你的用户会走路,所以不应该太难让两个点彼此分开一段距离。

当你有两个点时,像这样做一些数学运算

lon1 = degToRad(lon1);
lon2 = degToRad(lon2);
lat1 = degToRad(lat1);
lat2 = degToRad(lat2);

double a = Math.Sin(lon2 - lon1) * Math.Cos(lat2);
double b = Math.Cos(lat1) * Math.Sin(lat2) - Math.Sin(lat1) * Math.Cos(lat2) * Math.Cos(lon2 - lon1);
double c = radToDeg(Math.Atan2(a, b)); // c is our bearing //

这些是我们的转换函数

public static double degToRad(double deg){
return deg * Math.PI / 180.0;
}
public static double radToDeg(double rad){
rad = rad * (180.0 / Math.PI);
if (rad < 0) rad = 360.0 + rad;
return rad;
}

获得方位后,您可以使用 CameraUpdateFactory 将其传递到您的 map 。

map.moveCamera(CameraUpdateFactory.newCameraPosition(new CameraPosition(LatLng, zoom, tilt, bearing)));

关于android - 根据当前步行方向旋转 map android google maps,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26303370/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com