2009-06-22 2 views
1

Ниже приведен пример того, как согласовать многоугольник в API карт google.
Какова цель latOffset и lonOffset?
Мы создаем массив точек для создания многоугольника, но что именно делает офсет?Google maps Polygon question

var map = new GMap2(document.getElementById("map_canvas")); 
map.setCenter(new GLatLng(37.4419, -122.1419), 13); 
map.addControl(new GSmallMapControl()); 
GEvent.addListener(map, 'click', function(overlay, latlng) { 
    var lat = latlng.lat(); 
    var lon = latlng.lng(); 
    var latOffset = 0.01; 
    var lonOffset = 0.01; 
    var polygon = new GPolygon([ 
    new GLatLng(lat, lon - lonOffset), 
    new GLatLng(lat + latOffset, lon), 
    new GLatLng(lat, lon + lonOffset), 
    new GLatLng(lat - latOffset, lon), 
    new GLatLng(lat, lon - lonOffset) 
    ], "#f33f00", 5, 1, "#ff0000", 0.2); 
    map.addOverlay(polygon); 
}); 

ответ

5

Это просто здание бриллианта вокруг точки (lat, lon).

 * 

    * O * 

    * 

Lat широта и долгота lon. Смещения - это то, как далеко от центральной точки расположены углы алмаза.

Интересно, насколько хорошо он работает на северном полюсе.

+2

Забавно, как часто этот тип материала, игнорирующего полюс, кажется, появляется в «практическом» ГИС-коде. Однако удобно, что северный полюс действительно не существует на картах Google, так как он использует проекцию Меркатора, полюса бесконечно далеки в пиксельном пространстве. –

+2

Я так редко езжу на северный полюс. – Nosredna

0

изменение оба до o.02 u ll чувствую разницу. полигон больше будет размером