File: OrthographicCamera.html

package info (click to toggle)
three.js 111%2Bdfsg1-2
  • links: PTS, VCS
  • area: main
  • in suites:
  • size: 15,184 kB
  • sloc: javascript: 133,174; makefile: 24; sh: 1
file content (153 lines) | stat: -rw-r--r-- 5,317 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
<!DOCTYPE html>
<html lang="en">
	<head>
		<meta charset="utf-8" />
		<base href="../../../" />
		<script src="list.js"></script>
		<script src="page.js"></script>
		<link type="text/css" rel="stylesheet" href="page.css" />
	</head>
	<body>
		[page:Object3D] &rarr; [page:Camera] &rarr;

		<h1>正交相机([name])</h1>

		<p class="desc">
			这一摄像机使用[link:https://en.wikipedia.org/wiki/Orthographic_projection orthographic projection](正交投影)来进行投影。<br /><br />

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


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


		<h2>示例</h2>

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

		<code>var camera = new THREE.OrthographicCamera( width / - 2, width / 2, height / 2, height / - 2, 1, 1000 );
scene.add( camera );</code>



		<h2>构造器</h2>



		<h3>[name]( [param:Number left], [param:Number right], [param:Number top], [param:Number bottom], [param:Number near], [param:Number far] )</h3>
		<p>

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

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

		</p>


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

		<h3>[property:Float bottom]</h3>
		<p>摄像机视锥体下侧面。</p>

		<h3>[property:Float far]</h3>
		<p>
			摄像机视锥体远端面,其默认值为*2000*。<br /><br />
			其值的有效范围介于[page:.near near](摄像机视锥体近端面)和无穷大之间。

		</p>

		<h3>[property:Boolean isOrthographicCamera]</h3>
		<p>
			用于测试这个类或者派生类是否为OrthographicCameras,默认为*true*。<br /><br />
			你不应当对这个属性进行改变,因为它在内部由渲染器使用,以用于优化。
		</p>

		<h3>[property:Float left]</h3>
		<p>摄像机视锥体左侧面。</p>

		<h3>[property:Float near]</h3>
		<p>
			摄像机视锥体近端面。其默认值为*0.1*.<br /><br />

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

		</p>

		<h3>[property:Float right]</h3>
		<p>摄像机视锥体右侧面。</p>

		<h3>[property:Float top]</h3>
		<p>摄像机视锥体上侧面。</p>

		<h3>[property:Object view]</h3>
		<p>这个值是由[page:OrthographicCamera.setViewOffset setViewOffset]来设置的,其默认值为*null*。</p>

		<h3>[property:number zoom]</h3>
		<p>
			获取或者设置摄像机的缩放倍数,其默认值为*1*。</p>

		<h2>方法</h2>
		<p>共有方法请参见其基类[page:Camera]。</p>

		<h3>[method:null setViewOffset]( [param:Float fullWidth], [param:Float fullHeight], [param:Float x], [param:Float y], [param:Float width], [param:Float height] )</h3>
		<p>
		fullWidth — 多视图的全宽设置<br />
		fullHeight — 多视图的全高设置<br />
		x — 副摄像机的水平偏移<br />
		y — 副摄像机的垂直偏移<br />
		width — 副摄像机的宽度<br />
		height — 副摄像机的高度<br /><br />

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

		</p>

		<h3>[method:null clearViewOffset]()</h3>
		<p>
			清除任何由.setViewOffset设置的偏移量。
		</p>

		<h3>[method:null updateProjectionMatrix]()</h3>
		<p>
			更新摄像机投影矩阵。在任何参数被改变以后必须被调用。

		</p>

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


		<h2>源代码</h2>

		<p>
			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
		</p>
	</body>
</html>