Как взять 5 км точек во все стороны локации, геокодирование google api?

Итак, у меня есть эти шнуры:

55.623151, 8.48215

Я хотел бы видеть геокоды в 5 км с севера, юга, востока, запада от этого географического местоположения выше^.

Как я могу это сделать?


person Karem    schedule 22.10.2011    source источник
comment
Что вы имеете в виду под геокодами? Координаты широта/долгота?   -  person Jiri Kriz    schedule 22.10.2011
comment
@Джири, да, это то, что я имею в виду   -  person Karem    schedule 22.10.2011


Ответы (1)


Если вы используете Google Maps API v3, вы должны действовать следующим образом:

Включите библиотеку Geometry на свою веб-страницу для Spherical Computations:

<script type="text/javascript" 
    src="http://maps.googleapis.com/maps/api/js?libraries=geometry&sensor=false"> 
</script>

Затем вы можете вычислить:

var point = new google.maps.LatLng(55.623151, 8.48215);
var spherical = google.maps.geometry.spherical; 
var north = spherical.computeOffset(point, 5000, 0); 
var west  = spherical.computeOffset(point, 5000, -90); 
var south = spherical.computeOffset(point, 5000, 180); 
var east  = spherical.computeOffset(point, 5000, 90); 

Вы можете проверить работающую версию на jsfiddle.

person Jiri Kriz    schedule 22.10.2011
comment
Когда я пытаюсь указать var north = calculateOffset(point, 5000, 0); оповещение('тест:' +север); я вообще не получаю оповещений? даже не тест: ... - person Karem; 22.10.2011
comment
@Karem: функции геометрии должны быть квалифицированы. Я обновил свой ответ соответственно. - person Jiri Kriz; 22.10.2011
comment
@Karem: я добавил работающую программу. Если у вас проблемы со сферическими, то используйте google.maps.geometry.spherical.computeOffset(point, 5000, 0); - person Jiri Kriz; 22.10.2011