在三维渲染场景中,相机好比观众的眼睛,人站立的位置影响事物的大小,视角的不同影响看到事物的范围,目光的朝向影响看到事物的正反。
vtkCamera负责把三维场景投影到二维平面,如屏幕、图像等。
下图为相机投影示意图:
相机位置:即相机所在的位置,用方法vtkCamera::SetPosition()设置。
视角:透视投影时需要指定相机的视角(View Angle),默认的视角大小为30º,可以用方法vtkCamera::SetViewAngle()设置。此方法在平行投影模式下不起作用。为完美透视观看设置角度的公式为:angle = 2*atan((h/2)/d),其中 h 是 RenderWindow 的高度(通过将尺子举到屏幕上来测量),d 是从眼睛到屏幕的距离。
相机焦点:用方法vtkCamera::SetFocalPoint()设置, 默认的焦点位置在世界坐标系的原点。
朝上方向:SetViewUp()设置相机的 view 向上方向 ,默认值为 (0,1,0&#