focus = h / (zoom * tan α)
tan α = h / (zoom * focus)
function getFOV(){
var h =panoview.getHeight();
var w =panoview.getWidth()/2;
var zoom = panoview.getZoom();
var focus = panoview.getFocus();
var alpha = w/(zoom*focus) ;
//alpha =1;
var rad =Math.atan(alpha);
var deg =rad/Math.PI*180;
setDebugText("focus:"+focus+", zoom:"+zoom+", h:"+ h +", alpha "+ alpha+", rad "+ rad +"\n");
return deg*2;
}
參考
http://blog.tartiflop.com/2008/08/understanding-zoom-focus-and-field-of-view-in-papervision3d/
http://gtt.webco.tw/modules/pano/picture_view.php?picture_id=0000000007420110513095250http://gtt.webco.tw/modules/pano/picture_view.php?picture_id=0000000007420110513095250