VertexTangentsHelper.html 2.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. <!DOCTYPE html>
  2. <html lang="zh">
  3. <head>
  4. <meta charset="utf-8" />
  5. <base href="../../../" />
  6. <script src="page.js"></script>
  7. <link type="text/css" rel="stylesheet" href="page.css" />
  8. </head>
  9. <body>
  10. [page:Object3D] &rarr; [page:Line] &rarr; [page:LineSegments] &rarr;
  11. <h1>[name]</h1>
  12. <p class="desc">
  13. Renders arrows to visualize an object's vertex tangent vectors.
  14. Requires that tangents have been specified in a [page:BufferAttribute custom attribute] or
  15. have been calculated using [page:BufferGeometryUtils.computeTangents computeTangents].<br /><br />
  16. This helper supports [page:BufferGeometry] only.
  17. </p>
  18. <h2>代码示例</h2>
  19. <code>
  20. const geometry = new THREE.BoxGeometry( 10, 10, 10, 2, 2, 2 );
  21. const material = new THREE.MeshNormalMaterial();
  22. const box = new THREE.Mesh( geometry, material );
  23. const helper = new VertexTangentsHelper( box, 1, 0x00ffff, 1 );
  24. scene.add( box );
  25. scene.add( helper );
  26. </code>
  27. <h2>例子</h2>
  28. <p>
  29. [example:webgl_helpers WebGL / helpers]
  30. </p>
  31. <h2>Constructor</h2>
  32. <h3>[name]( [param:Object3D object], [param:Number size], [param:Hex color], [param:Number linewidth] )</h3>
  33. <p>
  34. [page:Object3D object] -- object for which to render vertex tangents.<br />
  35. [page:Number size] -- (optional) length of the arrows. Default is *1*.<br />
  36. [page:Hex color] -- hex color of the arrows. Default is 0x00ffff.<br />
  37. [page:Number linewidth] -- (optional) width of the arrow lines. Default is *1*. (Setting lineWidth is currently not supported.)
  38. </p>
  39. <h2>Properties</h2>
  40. <p>See the base [page:LineSegments] class for common properties.</p>
  41. <h3>[property:Object matrixAutoUpdate]</h3>
  42. <p>
  43. See [page:Object3D.matrixAutoUpdate]. Set to *false* here as the helper is using the
  44. objects's [page:Object3D.matrixWorld matrixWorld].
  45. </p>
  46. <h3>[property:Object3D object]</h3>
  47. <p>The object for which the vertex tangents are being visualized.</p>
  48. <h3>[property:Number size]</h3>
  49. <p>Length of the arrows. Default is *1*.</p>
  50. <h2>Methods</h2>
  51. <p>See the base [page:LineSegments] class for common methods.</p>
  52. <h3>[method:null update]()</h3>
  53. <p>Updates the vertex tangents preview based on the object's world transform.</p>
  54. <h2>Source</h2>
  55. <p>
  56. [link:https://github.com/mrdoob/three.js/blob/master/examples/jsm/helpers/VertexTangentsHelper.js examples/jsm/helpers/VertexTangentsHelper.js]
  57. </p>
  58. </body>
  59. </html>