我有一种情况,我必须找到3公里范围内最近的酒店,并显示他们的距离和给定地点的预计时间。
我的代码可以到达3公里左右的所有最近的酒店。
Hotels.geoNear({
type: "Point",
coordinates: [userLat, userLng]
}, {
spherical: true,
maxDistance: 3000,
distanceMultiplier: 0.001
}).then(function(hotels) {
console.log(hotels);
});
在这里,我可以获得所有物体的距离,但我不知道如何获得每个位置的估计时间。
有任何建议我如何找到每个地点的预计时间?
答案 0 :(得分:0)
可能的解决方案是使用每个位置的历史数据。例如,要在数据库中保存user1从location1到location2所需的时间,以及当user2在同一路径上时,然后根据该数据计算ETA。
但是,如果您无法访问历史数据,请使用一些恒定速度值,例如:
了解这些值:
eta_in_minutes = (distance_in_km * 60) / constant_estimated_speed_in_km_per_h
请注意,这些只是我的估计,它们可能不是很准确,所以只需使用这些值来找出哪一个最适合您的需求。