私はUberのようなアプリをやっています。ライブ トラッキングでは問題ありませんが、車両をどこかに向ける必要がある場合、地図上に 3 つのマーカーが表示されます。最初のマーカー ライブ トラッキング。2 番目が開始点で、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 つのマーカーのみが表示されるはずです。最初のマーカーには、現在の場所も表示されます。上記のスクリプト コードから緯度と経度の情報を取得しますが、更新されません。
ありがとう。