Создание ломаной линии для направлений движения Google - PullRequest
0 голосов
/ 04 декабря 2011

Я читал материал о Google API, и я хотел реализовать обычные маршруты движения Google, которые карты Google имеют для 2 разных точек. Вот мой код пока

(function() {
  window.onload = function() {

// Creating a map
var options = {
  zoom: 5,
  center: new google.maps.LatLng(36.1834, -117.4960),
  mapTypeId: google.maps.MapTypeId.ROADMAP
};
var map = new google.maps.Map(document.getElementById('map'), options);

// Creating an array that will contain the points for the polyline
var route = [
  new google.maps.LatLng(37.7671, -122.4206),
  new google.maps.LatLng(34.0485, -118.2568)
];

// Creating the polyline object
var polyline = new google.maps.Polyline({
  path: route,
  strokeColor: "#ff0000",
  strokeOpacity: 0.6,
  strokeWeight: 5
});

// Adding the polyline to the map
polyline.setMap(map);

  };
 })();

Между двумя городами прямая линия ...

Ответы [ 2 ]

1 голос
/ 04 декабря 2011

Вот пример использования DirectionsService:

var directionsService = new google.maps.DirectionsService();
var directionsDisplay;
var homeLatlng;

function initialize() {
    homeLatlng = new google.maps.LatLng(37.7671, -122.4206);

    var myOptions = {
        zoom: 10,
        center: homeLatlng,
        mapTypeId: google.maps.MapTypeId.ROADMAP
    };
    var map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);

    var infowindow = new google.maps.InfoWindow({
        content: ''
    });

    directionsDisplay = new google.maps.DirectionsRenderer({
        draggable: false,
        map: map, 
        markerOptions: {
            draggable: false
        },
        panel: document.getElementById("directionsPanel"),
        infoWindow: infowindow
    });

    var request = {
        origin:homeLatlng,
        destination:new google.maps.LatLng(34.0485, -118.2568),
        travelMode: google.maps.DirectionsTravelMode[DRIVING],
        unitSystem: google.maps.UnitSystem[METRIC]
    };

    directionsService.route(request, function(result, status) {
        if (status == google.maps.DirectionsStatus.OK) {
            directionsDisplay.setDirections(result);
        }
    });
}
0 голосов
/ 04 декабря 2011

Если вы хотите нарисовать маршрут, основанный на направлениях движения (или направлениях пешеходного или транзитного или велосипедного направления), используйте Google Directions API .Я не верю, что API не будет рисовать для вас маршрут, но он даст вам все точки широты и долготы, которые вам нужно соединить в вашей полилинии, чтобы показать маршрут.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...