2016-06-24 56 views
0

我正在使用Google Streetview Api,我試圖鎖定高低,以便用戶只能向左或向右平移。這是我試過Streetview Api,鎖定間距(垂直平移)

panorama.addListener('pov_changed', function(e) { 
    var curHeading = panorama.getPov().heading; 
    this.setPov({ 
     'pitch': 0, 
     'heading': curHeading 
    }); 
}); 

不幸的是,發生了什麼是「setPov」方法觸發另一個「pov_changed」所以​​這個無限循環結束。我應該怎麼做,以保持我的球場在0?

回答

0

從這StreetViewPov object specification

pitch

  • 攝像機間距度,相對於街道視圖車輛。範圍從90°(直接向上)到-90°(直接向下)。

試着保持0以使POV攝像機從左到右移動。

希望這會有所幫助。

+0

是啊,我是問的問題是如何保持在零。如果你檢查上面的代碼,我試圖讓它在pov發生變化時將pov設置爲0。麻煩的是,這觸發了另一個pov_changed事件,它將其置於無限循環中。 – steffy

0

您可以避免使用設置器(setPov)並直接覆蓋音調值。

修改您的事件處理程序來(這不會觸發無限循環):

panorama.addListener('pov_changed', function(e) { 
 
    if (!this.pov.pitch) { return; } 
 
    this.pov.pitch = 0; 
 
});