如何解决传单地图实时路线跟踪
我正在开发一个类似 Uber 的应用。实时跟踪没有问题,但是当我需要将车辆引导到某个地方时,地图上有 3 个标记。第一个标记实时跟踪。第二个是起点,第三个标记是目标。通常,应该有2家杂货店。我的即时位置和目的地。我在某处有问题,但我无法解决问题。我该如何解决这个问题?
无需此请求即可进行实时跟踪:
<script type="text/javascript">
var timer_control = 0;
var lati,longi;
timer_control = setInterval(req_control,15000)
function onLocationFound(e) {
if (current_position) {
map.removeLayer(current_position);
}
var radius = e.accuracy / 2;
current_position = L.marker(e.latlng).addTo(map).bindPopup("Test : {{ $car->test }}");
lati = e.latlng.lat;
longi = e.latlng.lng;
$.get( "/trac/mobil?lati="+e.latlng.lat + "&longi=" + e.latlng.lng+"&car_id="+carid);
}
function onLocationError(e) {
alert(e.message);
}
map.on('locationfound',onLocationFound);
map.on('locationerror',onLocationError);
function locate() {
map.locate({setView: true,maxZoom: 16});
}
setInterval(locate,10000);
</script>
至于路由请求:
<script type="text/javascript">
$.post( "{{ route('example.route.request') }}",{
car_id:data.car_id
},).done(function(data2) {
if(data2!=0 || data2!=2)
{
document.getElementById("address1").setAttribute("value",data.address1);
document.getElementById("address2").setAttribute("value",data.address2);
clearInterval(req_control);
if (current_position) {
map.removeLayer(current_position);
}
example_data = L.Routing.control({
waypoints: [
L.latLng(lati,longi),L.latLng(data2.lati,data2.longi)
]
}).addTo(map);
}
});
</script>
我想将其用作导航应用。当您接近目标时,路线应该更新,并且应该只有 2 个标记可见。第一个标记还应显示我的当前位置。我从上面的脚本代码中得到了经纬度信息,但是没有更新。
谢谢。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。