/*定義控件*/
var krpano = document.getElementById("krpanoSWFObject");
/*獲取變量*/
var fov = Number(krpano.get("view.fov"));
var hlookat = Number(krpano.get("view.hlookat"));
var vlookat = Number(krpano.get("view.vlookat"));
/*放大*/
fov -= 10.0;
krpano.set("view.fov", fov);
/*縮小*/
fov += 10.0;
krpano.set("view.fov", fov);
/*左旋轉*/
hlookat += 10.0;
krpano.set("view.hlookat", hlookat);
/*右旋轉*/
hlookat -= 10.0;
krpano.set("view.hlookat", hlookat);
/*上傾斜*/
vlookat -= 10.0;
krpano.set("view.vlookat", vlookat);
/*下傾斜*/
vlookat += 10.0;
krpano.set("view.vlookat", vlookat);
/*自動旋轉*/
krpano.set("autorotate.enabled", true);
/*VR模式*/
krpano.call("WebVR.enterVR();");
/*全屏*/
krpano.set("fullscreen", true);
/*停止旋轉*/
krpano.set("autorotate.enabled", false);
以上的方法如放大縮小是不帶動畫的,有卡頓的感覺。下面的方法利用setTimeout方法實現平滑過渡。
/*放大*/
krpano.set("fov_moveforce",-1);
setTimeout("krpano.set('fov_moveforce',0)",200);
/*縮小*/
krpano.set("fov_moveforce",1);
setTimeout("krpano.set('fov_moveforce',0)",200);
/*左旋轉*/
krpano.set("hlookat_moveforce",-1);
setTimeout("krpano.set('hlookat_moveforce',0)",200);
/*右旋轉*/
krpano.set("hlookat_moveforce",1);
setTimeout("krpano.set('hlookat_moveforce',0)",200);
/*上傾斜*/
krpano.set("vlookat_moveforce",-1);
setTimeout("krpano.set('vlookat_moveforce',0)",200);
/*下傾斜*/
krpano.set("vlookat_moveforce",1);
setTimeout("krpano.set('vlookat_moveforce',0)",200);