Я пытаюсь сделать приложение, которое связывает с Google streetview использование координат широты/долготы и показывает streetview ближайшей дороги. Это прибывает из довольно маленькой и хорошо покрытой области, таким образом, там не будет никакими координатами посреди океана.
Существует ли опубликованный API, показывающий получить параметры, которые необходимо связать непосредственно с streetview?
Возможно, вас заинтересует следующий справочник, в котором описаны все известные параметры, которые можно передать на maps.google.com, включая параметры просмотра улиц:
Хотя это не официальный API, я думаю, будет справедливо сказать, что они должны быть достаточно надежными, поскольку это те же параметры, которые используются для постоянных ссылок в Google Maps.
С его помощью вы сможете построить что-то вроде следующего:
http://maps.google.com/?cbll=40.714103,-74.006206&cbp=12,20.09,,0,5&layer=c
Ниже приводится ссылка на изображение улицы с координатами 40.437, -79.962 (широта, долгота):
Я не уверен, почему координаты повторяются несколько раз, я подозреваю, что это может иметь какое-то отношение к направлению обзора и т.п. Я не проверял, работает ли это для других координат. Надеюсь это поможет.
Если вы хотите извлечь необработанные jpeg из сервиса Streetview, это можно сделать довольно легко. Техника обсуждается здесь:
http://jamiethompson.co.uk/web/2010/05/15/google-streetview-static-api/
Метаданные XML для панорамы можно получить с помощью следующего запроса
http://cbk0.google.com/cbk?output=xml&ll=[LAT,LNG]
который дает что-то вроде этого:
<panorama>
<data_properties image_width="13312" image_height="6656" tile_width="512" tile_height="512" pano_id="sLaiF6Jex7mJmNol7tdOoA" num_zoom_levels="3" lat="51.495090" lng="-0.146971" original_lat="51.495098" original_lng="-0.147000">
<copyright>© 2010 Google</copyright>
<text>Eccleston Pl</text>
<region>London, England</region>
<country>United Kingdom</country>
<data_flag>1</data_flag>
</data_properties>
<projection_properties projection_type="spherical" pano_yaw_deg="201.78" tilt_yaw_deg="92.06" tilt_pitch_deg="1.75"/>
<annotation_properties>
<link yaw_deg="204.7" pano_id="CeutxcyB2V74lfN_fJwRww" road_argb="0x80ffffff">
<link_text>Eccleston Pl</link_text>
</link>
<link yaw_deg="24.7" pano_id="t_mnKSugTLrQTEnJplXQ3A" road_argb="0x80ffffff">
<link_text>Eccleston Pl</link_text>
</link>
</annotation_properties>
Идентификаторы pano_ids можно затем использовать для получения миниатюр или плиток высокого разрешения из API Streetview
Thumbnail
http://cbk0. google.com/cbk?output=thumbnail&w=416&h=208&panoid=sLaiF6Jex7mJmNol7tdOoA
Tile
http://cbk0.google.com/cbk?output=tile&panoid=sLaiF6Jex7mJmNol7tdOoA&zoom=4&x=0&y=3