Android 谷歌地图API-根据旅行距离更新地图上的当前位置
假设我在谷歌地图API上设置了从a点到B点的步行路线。 我从A点开始。考虑到步行的距离,我如何或是否可能更新地图上的当前位置?(我从Google fit SDK获得了步行距离) 例如: 从A点到B点有1.5公里(谷歌地图上标出的路线) 我跑了450米 如何在此基础上更新地图当前位置Android 谷歌地图API-根据旅行距离更新地图上的当前位置,android,google-maps,google-maps-api-3,Android,Google Maps,Google Maps Api 3,假设我在谷歌地图API上设置了从a点到B点的步行路线。 我从A点开始。考虑到步行的距离,我如何或是否可能更新地图上的当前位置?(我从Google fit SDK获得了步行距离) 例如: 从A点到B点有1.5公里(谷歌地图上标出的路线) 我跑了450米 如何在此基础上更新地图当前位置 PS:我不能使用GPS,因为我正在制作的应用程序没有显示你当前的真实位置。这是一个错误的位置好的,这是可能的,但你需要知道你的方向。 为此,你需要三件事- 你从源头到目的地的运动方向 源代码很长 旅行的距离 如果你有
PS:我不能使用GPS,因为我正在制作的应用程序没有显示你当前的真实位置。这是一个错误的位置好的,这是可能的,但你需要知道你的方向。 为此,你需要三件事-
private LatLng getDestinationPoint (LatLng source,double brng, double dist){
dist = dist / 6371;
brng = Math.toRadians(brng);
double lat1 = Math.toRadians(source.latitude), lon1 = Math.toRadians(source.longitude);
double lat2 = Math.asin(Math.sin(lat1) * Math.cos(dist) +
Math.cos(lat1) * Math.sin(dist) * Math.cos(brng));
double lon2 = lon1 + Math.atan2(Math.sin(brng) * Math.sin(dist) *
Math.cos(lat1),
Math.cos(dist) - Math.sin(lat1) *
Math.sin(lat2));
if (Double.isNaN(lat2) || Double.isNaN(lon2)) {
return null;
}
return new LatLng(Math.toDegrees(lat2), Math.toDegrees(lon2));
}
使用上面函数中的代码,将参数放入函数,作为回报,您将获得目标latlng
让我知道这对你是否有帮助
谢谢你如果我有运动轴承,这将是完美的。不幸的是我没有。我仅有的数据是旅行距离,以及谷歌地图api为路线制定提供的所有数据(包括来源和目的地)。其想法是在地图上精确定位一个标记,该标记会随着行驶的距离而相应更新。该标记必须遵循路线集。谢谢你的解决方案。那么你怎么知道你要往哪个方向走呢??这不仅仅是1.5公里的行程。西南方向一定有1.5公里左右的地方,最理想的方法是用谷歌地图制作一条路线。它将从a点到B点形成一条“线”。我想沿着这条线走,那么告诉我从哪里获得这两个位置a和B。以及从哪里获得所有其他数据。并尽可能具体。告诉我函数名。。。如果可能的话,我还不能给你任何函数,因为我的问题是,是否有可能使用谷歌地图api来实现这一点,或者我是否需要以其他方式来实现这一点。但我会尽量详细说明:该应用程序将生成一条从巴塞罗那到马德里的步行路线(你不需要做任何事情,它都是由该应用程序生成的)。我正在使用google fit sdk来注册距离(使用步长和高度来估计,没有GPS)。目的是使标记器沿路线移动,并记录距离