[page:Object3D] → [page:Camera] →

正交相机([name])

这一摄像机使用[link:https://en.wikipedia.org/wiki/Orthographic_projection orthographic projection](正交投影)来进行投影。

在这种投影模式下,无论物体距离相机距离远或者近,在最终渲染的图片中物体的大小都保持不变。

这对于渲染2D场景或者UI元素是非常有用的。

代码示例

const camera = new THREE.OrthographicCamera( width / - 2, width / 2, height / 2, height / - 2, 1, 1000 ); scene.add( camera );

例子

[example:webgl_camera camera ]
[example:webgl_interactive_cubes_ortho interactive / cubes / ortho ]
[example:webgl_materials_cubemap_dynamic materials / cubemap / dynamic ]
[example:webgl_postprocessing_advanced postprocessing / advanced ]
[example:webgl_postprocessing_dof2 postprocessing / dof2 ]
[example:webgl_postprocessing_godrays postprocessing / godrays ]
[example:webgl_rtt rtt ]
[example:webgl_shaders_tonemapping shaders / tonemapping ]
[example:webgl_shadowmap shadowmap ]

构造器

[name]( [param:Number left], [param:Number right], [param:Number top], [param:Number bottom], [param:Number near], [param:Number far] )

left — 摄像机视锥体左侧面。
right — 摄像机视锥体右侧面。
top — 摄像机视锥体上侧面。
bottom — 摄像机视锥体下侧面。
near — 摄像机视锥体近端面。
far — 摄像机视锥体远端面。

这些参数一起定义了摄像机的[link:https://en.wikipedia.org/wiki/Viewing_frustum viewing frustum](视锥体)。

属性

共有属性请参见其基类[page:Camera]。
请注意,在大多数属性发生改变之后,你将需要调用[page:OrthographicCamera.updateProjectionMatrix .updateProjectionMatrix]来使得这些改变生效。

[property:Float bottom]

摄像机视锥体下侧面。

[property:Float far]

摄像机视锥体远端面,其默认值为*2000*。

该值必须大于[page:.near near] plane(摄像机视锥体近端面)的值。

[property:Boolean isOrthographicCamera]

Read-only flag to check if a given object is of type [name].

[property:Float left]

摄像机视锥体左侧面。

[property:Float near]

摄像机视锥体近端面。其默认值为*0.1*.

其值的有效范围介于0和[page:.far far](摄像机视锥体远端面)之间。
请注意,和[page:PerspectiveCamera]不同,*0*对于OrthographicCamera的近端面来说是一个有效值。

[property:Float right]

摄像机视锥体右侧面。

[property:Float top]

摄像机视锥体上侧面。

[property:Object view]

这个值是由[page:OrthographicCamera.setViewOffset setViewOffset]来设置的,其默认值为*null*。

[property:number zoom]

获取或者设置摄像机的缩放倍数,其默认值为*1*。

方法

共有方法请参见其基类[page:Camera]。

[method:undefined setViewOffset]( [param:Float fullWidth], [param:Float fullHeight], [param:Float x], [param:Float y], [param:Float width], [param:Float height] )

fullWidth — 多视图的全宽设置
fullHeight — 多视图的全高设置
x — 副摄像机的水平偏移
y — 副摄像机的垂直偏移
width — 副摄像机的宽度
height — 副摄像机的高度

在较大的[link:https://en.wikipedia.org/wiki/Viewing_frustum viewing frustum](视锥体)中设置偏移量,对于多窗口或者多显示器的设置是很有用的。 对于如何使用它,请查看[page:PerspectiveCamera.setViewOffset PerspectiveCamera]中的示例。

[method:undefined clearViewOffset]()

清除任何由.setViewOffset设置的偏移量。

[method:undefined updateProjectionMatrix]()

更新摄像机投影矩阵。在任何参数被改变以后必须被调用。

[method:Object toJSON]([param:Object meta])

meta -- 包含有元数据的对象,例如对象后代中的纹理或图像
将摄像机转换为 three.js [link:https://github.com/mrdoob/three.js/wiki/JSON-Object-Scene-format-4 JSON Object/Scene format](three.js JSON 物体/场景格式)。

源代码

[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]