Google maps GStreetviewPanorama参数值

Google maps GStreetviewPanorama参数值,google-maps,Google Maps,我在我的一个项目中使用GStreetviewPanorama来显示一个位置的街景。我想要在GStreetviewPanorama方法中传递的参数值,这样我就可以像maps.google.com显示相同的相机方向一样精确地显示位置。我用过: latlngPoint是我这里的GLatLng对象 var panoramaOptions = { latlng: latlngPoint }; myPano = new GStreetviewPanorama(document.getE

我在我的一个项目中使用GStreetviewPanorama来显示一个位置的街景。我想要在GStreetviewPanorama方法中传递的参数值,这样我就可以像maps.google.com显示相同的相机方向一样精确地显示位置。我用过:

latlngPoint是我这里的GLatLng对象

var panoramaOptions = { latlng: latlngPoint };          
 myPano = new GStreetviewPanorama(document.getElementById("strpano_div"), panoramaOptions);
我也试过了

  myPano = new GStreetviewPanorama(document.getElementById("strpano_div"));         
  var myPOV = {yaw:270};
  myPano.setLocationAndPOV(latlngPoint,myPOV);
当我在maps.google.com中传递与上面latlng对应的地址时,位置以不同的角度显示。请给我建议GPov选项的最佳值,如:偏航、俯仰和缩放,以便相机方向与maps.google.com使用的完全相同


谢谢。

我已经更改了原始代码,但我相信您可以按照以下步骤操作:

    var panoPosLat = panoPos.lat() / 180 * Math.PI;
var panoPosLng = panoPos.lng() / 180 * Math.PI;

var y = Math.sin(markerPosLng - panoPosLng) * Math.cos(markerPosLat); 
var x = Math.cos(panoPosLat)*Math.sin(markerPosLat) - Math.sin(panoPosLat)*Math.cos(markerPosLat)*Math.cos(markerPosLng - panoPosLng); 
brng = Math.atan2(y, x) / Math.PI * 195;

var pov = mybigpano2.getPov(); 
pov.heading = parseFloat(brng); 
mybigpano2.setPov(pov);
我使用195度,因为有许多街道有许多曲线

改变标题是关键

我想这就是我找到代码的地方:

我最初在stackoverflow上发布了一些问题:


希望能有所帮助

您是否将其与使用lat、lng或地址或其他搜索字符串的谷歌搜索进行比较?我正在使用地址在谷歌和我的代码中进行搜索,对于同一地址,我使用geocoder.getLatLng和panoClient.getNearestPanoramaLatLng,其中geocoder作为GClientGeocoder对象,panoClient作为GStreetviewClient客户端。