У меня есть StreetViewPanorama, идентифицированная моими координатами Lat Lng. Мои координаты Lat и Lng не совсем в дороге, с которой автомобиль Google сделал снимок, но они находятся в центре здания, которое я хочу увидеть на картинке StreetView. Итак, у меня есть две пары координат, и я думаю, что можно рассчитать градусы POV, чтобы получить правильный снимок здания. Мне нужно, чтобы получить Lon Lat точки, в которую автоматически помещается «человек», чтобы я мог рассчитать правильные уровни POV.Google Maps Api StreetView PanoramaOptions Точка зрения от Lon Lat
0
A
ответ
3
Проблема решена:
// d is the position of the house or fisical element where I want to point the view
var d = {lat: 43.538524840485, lng: 10.322718769311};
var whereToLookLatLng = new google.maps.LatLng(parseFloat(d.lat), parseFloat(d.lng));
var panorama = new google.maps.StreetViewPanorama(
document.getElementById('pano'),
panoramaOptions
);
map.setStreetView(panorama);
var service = new google.maps.StreetViewService;
// With this function I get the panorama, if available, next the house or fisical element where I want to point the view
service.getPanoramaByLocation(panorama.getPosition(), 50,
function(panoData) {
if (panoData != null) {
// MamLatLng is the position of the point of view
var ManLatLng = panoData.location.latLng;
// Now I calculate the heading to point the view in the direction of whereToLookLatLng
var heading = google.maps.geometry.spherical.computeHeading(ManLatLng, whereToLookLatLng);
var pov = panorama.getPov();
pov.heading = heading;
panorama.setPov(pov);
}
});
}
3
Моя реализация решения kiks73 в.
Убедитесь, чтобы добавить библиотеку геометрии при загрузке API Карт:
https://maps.googleapis.com/maps/api/js?v=3.exp&libraries=visualization,places,geometry&sensor=true
var dist = 50;
service.getPanoramaByLocation(targetLatLng, dist, function(panoData){
panoramaLatLng = panoData.location.latLng;
initStreetView(targetLatLng, panoramaLatLng)
});
function initStreetView(targetLatLng, panoramaLatLng){
var panoramaOptions = {
position: targetLatLng
};
var streetView = new google.maps.StreetViewPanorama(document.getElementById('streetView'),panoramaOptions);
var heading = google.maps.geometry.spherical.computeHeading(panoramaLatLng, targetLatLng);
map.setStreetView(streetView);
streetView.setPov({heading:heading, pitch:0});
}
Смежные вопросы
- 1. Google StreetView/Maps API
- 2. Google Maps URL расширение - Missing Lat Lon
- 3. Google Maps API Вставить показать булавку с центральной Lat Lon
- 4. Google Maps JavaScript API V3, массив сюжетов Lat/Lon Points
- 5. Настройки карты Google lon/lat
- 6. Направление карты Google с использованием lat/lon
- 7. Streetview API не возвращает streetview
- 8. Google Maps - создать многоугольник с группой точек lon/lat
- 9. Google maps javascript - массив маркеров, как мне получить lat/lon?
- 10. Как полностью отключить StreetView от Google Maps
- 11. API карты Google не возвращает lat() или lon() только NAN
- 12. Google Maps StreetView с адреса
- 13. Избавьтесь от боковой панели при подключении к Google Maps Streetview
- 14. Найти lon/lat с помощью ссылки на Google Maps
- 15. Получение lon/lat от пиксельных координат в Статической карте Google
- 16. google maps - проверить, что точка действительна
- 17. использует преобразование lon/lat to street API API Google Maps, ограниченное количеством запросов?
- 18. Местоположение текстового поиска Google Maps API
- 19. GAE Python передать переменную Google Map Lon/Lat
- 20. Почтовые индексы от Lat/Lon (пакетный запрос)
- 21. Google Maps API Geolocation + Lat/Lng
- 22. Google Maps Streetview. Объект не имеет метода panTo
- 23. API геокодирования Google Maps - обработка ввода lat/lng от пользователя
- 24. Google API изображений Streetview
- 25. Получить google maps getplace lat и long
- 26. Использование Google Weather API с Lat и Lon - как отформатировать?
- 27. API Карт Google v3: контролируйте направление просмотра улиц и используйте адрес вместо lat/lon
- 28. Разница между Google Maps StreetView и Panorama
- 29. Google maps добавляет streetview к каждому infowindow
- 30. Google Maps API - GStreetviewPanorama - Удалить адрес Overlay
Расположение "камеры" является LatLng возвращаемый методом панорамного GetPosition: https: // developers.google.com/maps/documentation/javascript/reference#StreetViewPanorama – geocodezip