Mapbox行车方向

时间:2015-12-08 05:13:15

标签: javascript php mysql codeigniter mapbox

我想使用它的Driving Direction API将mapbox用于mapView。我想用这个api给我两个已经定义的位置之间的路径。假设我们知道位置,我们不应该在它们之间绘制路线。此外,用户应该能够将位置(地图上的市场/销)更改为他们想要的任何位置,因此mapbox应相应地绘制相应的路线。

这可以与mapbox Driving Direction有关,但我也想要的是能够获取位置,例如当用户在输入框中输入或使用市场来定位原点和目的地时,后端我希望能够跟踪这些位置并记录它们。

的Javascript Mapbox PHP

<div id='map'></div>
<div id='inputs'></div>
<div id='errors'></div>
<!--
<div id='directions'>
    <div id='routes'></div>
    <div id='instructions'></div>
</div>
 -->
<script>
L.mapbox.accessToken = 'pk.eyJ1IjoiZmFyc2hpZGFsYXZpIiwiYSI6ImNpZjNmNTRrYzQ0b2xzNWx1bXN5MnlmdjUifQ.IvZZfdiPe4rxQNolE88fhg';

var start = {lat: '<?php echo $__logbook->__route[0]->latitude ?>', lng: '<?php echo $__logbook->__route[0]->longitude ?>'};
var finish = {lat: '<?php echo end($__logbook->__route)->latitude ?>', lng: '<?php echo end($__logbook->__route)->longitude ?>'};

var map = L.mapbox.map('map', 'mapbox.streets', {zoomControl: false}).setView([start.lat, start.lng], 6);

map.attributionControl.setPosition('bottomleft');

var directions = L.mapbox.directions();

directions.setOrigin(L.latLng(start.lat, start.lng));
directions.setDestination(L.latLng(finish.lat, finish.lng));
directions.query();

var directionsLayer = L.mapbox.directions.layer(directions).addTo(map);
var directionsInputControl = L.mapbox.directions.inputControl('inputs', directions).addTo(map);
var directionsErrorsControl = L.mapbox.directions.errorsControl('errors', directions).addTo(map);
var directionsRoutesControl = L.mapbox.directions.routesControl('routes', directions).addTo(map);
var directionsInstructionsControl = L.mapbox.directions.instructionsControl('instructions', directions).addTo(map);

console.log(L.mapbox.directions.inputControl);

$('#btn').click(function() {
    var obj = $('#live');
    obj.html('I just changed!!!');
    obj.trigger('contentchanged');
});

$('#inputs').bind('contentchanged', function(e) {
    console.log(L.mapbox.directions.inputControl);
});

</script>

1 个答案:

答案 0 :(得分:0)

我找到了解决方案,我将directions.js加载到我的本地库并进行了很多更改,实际上我将它与我的角度和范围(部署)合并,它就像一个魅力。我很高兴揭露我的一些代码留给我一个PM。感谢