3

我正在在我的一个 DIV 中显示街景的网页上构建自定义视图。我正在使用 V3 Javascript API 来控制视图中的导航。我的自定义控件实际上与同一页面上的街景视图位于不同的 DIV 中。

myPano.setPov({heading:someNewHeading, pitch:someNewPitch, zoom:someNewZoom})是我用来倾斜和平移/旋转场景的工具,它工作正常。我不确定如何复制类似于按下向上箭头的前进动作。

在街景中,即使用户的 POV 标题与路径有点不对齐,向上箭头也会沿路径移动。我如何使用setPosition()或类似地如何计算模拟这种向前运动的长/纬度?

提前感谢您的智慧和贡献。

4

3 回答 3

1
function difference(link) {

    var diff = Math.abs(panorama.pov.heading % 360 - link.heading);
    if(diff>180)
       diff=Math.abs(360-diff);

    return diff;

}

我会考虑使用这个功能差异而不是 raz0r 提出的功能差异,因为它没有以正确的方式监控。

例如(下图): Link 0:向后 Link 1:向前 Link 2:左(学院大道)

在 raz0r 差异中,我们有 173 用于向后,353 用于向前,因为在他的函数中它得到了最小值,这意味着当我调用 moveForward() 时我要向后退!!

在此处输入图像描述

于 2013-04-14T09:47:52.680 回答
1
function difference(link) {
  return Math.abs(pano.pov.heading%360 - link.heading);
}

function moveForward() {
  var curr;
  for(i=0; i < pano.links.length; i++) {
    var differ = difference(pano.links[i]);
    if(curr == undefined) {
      curr = pano.links[i];
    }

    if(difference(curr) > difference(pano.links[i])) {
      curr = curr = pano.links[i];
    }
  }
  pano.setPano(curr.pano);
}

其中 pano 是 google.maps.StreetViewPanorama

于 2012-03-20T20:58:19.030 回答
0

发现了一些东西:D。目前,请检查http://www.mapchannels.com/mm/streetview/driver.htmhttp://gmaps-samples.googlecode.com/svn/trunk/streetview/streetview_directions.html的来源。在http://groups.google.com/group/google-maps-api/browse_thread/thread/7150eccbba9dfe40/0ca970e639a2c240上找到了它们,因此作者和那里的回答者都得到了好评。希望它有所帮助:D。

  1. 好像跟followLink有关,本地好像不行
于 2011-11-21T20:12:50.430 回答