从谷歌api使用地理编码获得道路协调

时间:2016-06-14 01:52:47

标签: google-maps

使用google map api我想只使用地址获取道路 到目前为止我做了什么

  

<script type="text/javascript">
        var geocoder;
        var map;
        var   infoWindow;

    function initMap() {
     geocoder = new google.maps.Geocoder();
      map = new google.maps.Map(document.getElementById('map'), {
        zoom: 8,
        center: {lat: 0, lng: -180},
       });

     /* var marker = new google.maps.Marker({
        position: myLatLng,
        map: map,
        title: 'Hello World!'
      });*/
      codeAddress();
        infoWindow = new google.maps.InfoWindow;


    }
    function codeAddress() {
         geocoder.geocode( { 'address':  "my adress goes here"}, function(results, status) {
          if (status == google.maps.GeocoderStatus.OK) {
            console.log(results);
            var obj1={lat:results[0].geometry.bounds.j.H,lng:results[0].geometry.bounds.H.H};
            var obj2={lat:results[0].geometry.bounds.H.j,lng:results[0].geometry.bounds.j.j};
            map.setCenter(results[0].geometry.location);
            var marker = new google.maps.Marker({
                map: map,
                position: results[0].geometry.location,
                title:"my address "
            });

          } else {
            alert("Geocode was not successful for the following reason: " + status);
          }
        });
      }


        </script>

我需要的是获取地址和结束的开始,以便我可以使用google api的折线任何想法如何实现这一点,谢谢

1 个答案:

答案 0 :(得分:0)

  

我需要的是获取地址和结尾的开头,以便我可以使用谷歌api的折线任何想法如何实现这一点?

您可以使用google.maps.Polyline({params});

来自Map sample

function initMap() {
  var map = new google.maps.Map(document.getElementById('map'), {
    zoom: 3,
    center: {lat: 0, lng: -180},
    mapTypeId: google.maps.MapTypeId.TERRAIN
  });

  var flightPlanCoordinates = [
    {lat: 37.772, lng: -122.214},
    {lat: 21.291, lng: -157.821},
    {lat: -18.142, lng: 178.431},
    {lat: -27.467, lng: 153.027}
  ];
  var flightPath = new google.maps.Polyline({
    path: flightPlanCoordinates,
    geodesic: true,
    strokeColor: '#FF0000',
    strokeOpacity: 1.0,
    strokeWeight: 2
  });

  flightPath.setMap(map);
}

Maps Polyline docs的补充阅读:

折线

要在地图上绘制线条,请使用折线。 Polyline类定义了地图上连接线段的线性叠加。 Polyline对象由LatLng位置数组组成,并创建一系列以有序顺序连接这些位置的线段。

添加折线

Polyline构造函数采用一组PolylineOptions指定线条的LatLng坐标和一组样式来调整折线的视觉行为。

折线对象在地图上绘制为一系列直线段。您可以在构造线时为PolylineOptions中的线条描边指定自定义颜色,粗细和不透明度,也可以在构造后更改这些属性。折线支持以下笔触样式:

  • strokeColor 指定格式为#34;#FFFFFF&#34;的十六进制HTML颜色。 Polyline类不支持命名颜色。

  • strokeOpacity 指定介于0.0和1.0之间的数值,以确定线条颜色的不透明度。默认值为1.0。 strokeWeight指定行的宽度(以像素为单位)。 折线的可编辑属性指定用户是否可以编辑形状