Google Maps API V3 - ближайший уличный вид
-
25-09-2019 - |
Вопрос
Когда StreetView недоступен для определенного местоположения, я хотел бы найти ближайшее местоположение с StreetView?
Единственный способ, которым я мог думать, есть.
radius = 0;
noOfPoints = 3;
while(radius < 10 miles){
radius = radius + 0.2 miles
points = calculate 4 * noOfPoints at this radius
loop(points)
{
if(streetview visibile for point)
bingo, break;
}
break if bingo;
noOfPOints = noOfPoints+1;
}
Но это смешно дорого, даже если я хочу найти StreetView в радиусе 10 миль, и я рассчитываю на удачу, чтобы найти StreetView в одном из этих пунктов, то есть я мог просто пропустить фактическую точку с уличным.
Может кто-нибудь, пожалуйста, направьте меня к лучшему подходу ??
Решение
Вы можете попытаться воспользоваться Wredviewservice, чтобы помочь вам найти ближайший существующий вид на улицу:
var astorPlace = new google.maps.LatLng(40.729884, -73.990988);
var webService = new google.maps.StreetViewService();
/**Check in a perimeter of 50 meters**/
var checkaround = 50;
/** checkNearestStreetView is a valid callback function **/
webService.getPanoramaByLocation(astorPlace,checkaround ,checkNearestStreetView);
function checkNearestStreetView(panoData){
if(panoData){
if(panoData.location){
if(panoData.location.latLng){
/**Well done you can use a nearest existing street view coordinates**/
}
}
}
/** Else do something... **/
}
Не связан с StackOverflow