正交相机(OrthographicCamera)
这一摄像机使用orthographic projection(正交投影)来进行投影。
在这种投影模式下,无论物体距离相机距离远或者近,在最终渲染的图片中物体的大小都保持不变。
这对于渲染2D场景或者UI元素是非常有用的。
示例
var camera = new THREE.OrthographicCamera( width / - 2, width / 2, height / 2, height / - 2, 1, 1000 );
scene.add( camera );
构造器
OrthographicCamera( left : Number, right : Number, top : Number, bottom : Number, near : Number, far : Number )
left — 摄像机视锥体左侧面。
right — 摄像机视锥体右侧面。
top — 摄像机视锥体上侧面。
bottom — 摄像机视锥体下侧面。
near — 摄像机视锥体近端面。
far — 摄像机视锥体远端面。
这些参数一起定义了摄像机的viewing frustum(视锥体)。
属性
请参阅其基类Camera来查看其共有属性。
请注意,在大多数属性发生改变之后,你将需要调用.updateProjectionMatrix来使得这些改变生效。
# .bottom : Float
摄像机视锥体下侧面。
# .far : Float
摄像机视锥体远端面,其默认值为2000。
其值的有效范围介于near(摄像机视锥体近端面)和无穷大之间。
# .isOrthographicCamera : Boolean
用于测试这个类或者派生类是否为OrthographicCameras,默认为true。
你不应当对这个属性进行改变,因为它在内部由渲染器使用,以用于优化。
# .left : Float
摄像机视锥体左侧面。
# .near : Float
摄像机视锥体近端面。其默认值为0.1.
其值的有效范围介于0和far(摄像机视锥体远端面)之间。
请注意,和PerspectiveCamera不同,0对于OrthographicCamera的近端面来说是一个有效值。
# .right : Float
摄像机视锥体右侧面。
# .top : Float
摄像机视锥体上侧面。
# .view : Object
这个值是由setViewOffset来设置的,其默认值为null。
# .zoom : number
获取或者设置摄像机的缩放倍数,其默认值为1。
方法
请参阅其基类Camera来查看其共有方法。
# .setViewOffset ( fullWidth : Float, fullHeight : Float, x : Float, y : Float, width : Float, height : Float ) : null
fullWidth — 多视图的全宽设置
fullHeight — 多视图的全高设置
x — 副摄像机的水平偏移
y — 副摄像机的垂直偏移
width — 副摄像机的宽度
height — 副摄像机的高度
在较大的viewing frustum(视锥体)中设置偏移量,对于多窗口或者多显示器的设置是很有用的。 对于如何使用它,请查看PerspectiveCamera中的示例。
# .clearViewOffset () : null
清除任何由.setViewOffset设置的偏移量。
# .updateProjectionMatrix () : null
更新摄像机投影矩阵。在任何参数被改变以后必须被调用。
# .toJSON () : JSON
使用JSON格式来返回摄像机数据。
源代码
src/cameras/OrthographicCamera.js