VertexNormalsHelper.html 2.3 KB
Newer Older
M
Mr.doob 已提交
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
<!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:Line] &rarr;

		<h1>[name]</h1>

		<div class="desc">
			Renders [page:ArrowHelper arrows] to visualize an object's vertex normal vectors.
			Requires that normals have been specified in a [page:BufferAttribute custom attribute] or
			have been calculated using [page:Geometry.computeVertexNormals computeVertexNormals].<br /><br />

			Unlike [page:FaceNormalsHelper], this works with [page:BufferGeometry].
		</div>

		<h2>Example</h2>

		[example:webgl_helpers WebGL / helpers]

		<code>
		var geometry = new THREE.BoxGeometry( 10, 10, 10, 2, 2, 2 );
		var material = new THREE.MeshBasicMaterial( { color: 0xff0000 } );
		var box = new THREE.Mesh( geometry, material );

		var helper = new THREE.VertexNormalsHelper( box, 2, 0x00ff00, 1 );

		scene.add( box );
		scene.add( helper );
		</code>


		<h2>Constructor</h2>


		<h3>[name]( [page:Object3D object], [page:Number size], [page:Hex color], [page:Number linewidth] )</h3>
		<div>
			[page:Object3D object] -- object for which to render vertex normals.<br />
			[page:Number size] -- (optional) length of the arrows. Default is 1.<br />
			[page:Hex color] -- hex color of the arrows. Default is 0xff0000.<br />
			[page:Number linewidth] -- (optional) width of the arrow lines. Default is 1.
		</div>


		<h2>Properties</h2>
		<div>See the base [page:LineSegments] class for common properties.</div>

		<h3>[property:object matrixAutoUpdate]</h3>
		<div>
			See [page:Object3D.matrixAutoUpdate]. Set to *false* here as the helper is using the
			objects's [page:Object3D.matrixWorld matrixWorld].
		</div>

		<h3>[property:Object3D object]</h3>
		<div>The object for which the vertex normals are being visualized.</div>

		<h3>[property:Number size]</h3>
		<div>Length of the arrows. Default is *1*.</div>


		<h2>Methods</h2>
		<div>See the base [page:LineSegments] class for common methods.</div>


		<h3>[method:null update]()</h3>
		<div>Updates the vertex normal preview based on movement of the object.</div>


		<h2>Source</h2>

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