ShapePath.html 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687
  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. <h1>形状路径([name])</h1>
  11. <p class="desc">
  12. 该类用于转换一系列的形状为一个[page:Path]数组,例如转换SVG中的Path为three.js中的Path(请参阅下方的example)。
  13. </p>
  14. <h2>例子</h2>
  15. <p>
  16. [example:webgl_geometry_extrude_shapes2 geometry / extrude / shapes2]
  17. </p>
  18. <h2>构造函数</h2>
  19. <h3>[name]( )</h3>
  20. <p>
  21. 创建一个新的ShapePath。和[page:Path]不同,因为ShapePath被设计为在创建之后生成,所以没有点被传入到构造函数中。
  22. </p>
  23. <h2>属性</h2>
  24. <h3>[property:Array subPaths]</h3>
  25. <p>
  26. [page:Path]数组。
  27. </p>
  28. <h3>[property:Array currentPath]</h3>
  29. <p>
  30. 当前将要被生成的路径。
  31. </p>
  32. <h2>方法</h2>
  33. <h3>[method:this moveTo]( [param:Float x], [param:Float y] )</h3>
  34. <p>
  35. 创建一个新的[page:Path],并在[page:Path]上调用[page:Path.moveTo]( x, y )。
  36. </p>
  37. <h3>[method:this lineTo]( [param:Float x], [param:Float y] )</h3>
  38. <p>这一方法从[page:ShapePath.currentPath currentPath](当前路径)的偏移量创建一条到X和Y的线,并将偏移量更新为X和Y。
  39. </p>
  40. <h3>[method:this quadraticCurveTo]( [param:Float cpX], [param:Float cpY], [param:Float x], [param:Float y] )</h3>
  41. <p>这一方法从[page:ShapePath.currentPath currentPath](当前路径)创建一条到X和Y的二次曲线,cpX和cpY作为控制点,
  42. 并将[page:ShapePath.currentPath currentPath]的偏移量更新为x和y。
  43. </p>
  44. <h3>[method:this bezierCurveTo]( [param:Float cp1X], [param:Float cp1Y], [param:Float cp2X], [param:Float cp2Y], [param:Float x], [param:Float y] )</h3>
  45. <p>
  46. 这一方法从[page:ShapePath.currentPath currentPath](当前路径)的偏移量创建一条到X和Y的贝塞尔曲线,
  47. cp1X、cp1Y和cp2X、cp2Y为控制点,并将[page:ShapePath.currentPath currentPath]的偏移量更新为x和y。
  48. </p>
  49. <h3>[method:this splineThru] ( [param:Array points] ) </h3>
  50. <p>points - 一个[page:Vector2]数组。</p>
  51. <p>
  52. 连接一个新的[page:SplineCurve](样条曲线)到[page:ShapePath.currentPath currentPath](当前路径)。</p>
  53. <h3>[method:Array toShapes]( [param:Boolean isCCW] )</h3>
  54. <p>
  55. isCCW -- 更改实体形状和孔洞的生成方式。
  56. </p>
  57. <p>
  58. 将[page:ShapePath.subPaths subPaths]数组转换为到Shapes数组。默认情况下,实体形状按照顺时针(CW)来定义,孔洞按照逆时针(CCW)来定义。
  59. 如果isCCW被设置为true,则孔洞和实体形状的定义将被反转。
  60. <br/>
  61. </p>
  62. <h2>源代码</h2>
  63. <p>
  64. [link:https://github.com/mrdoob/three.js/blob/master/src/extras/core/Path.js src/extras/core/Path.js]
  65. </p>
  66. </body>
  67. </html>