CatmullRomCurve3.html 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
  1. <!DOCTYPE html>
  2. <html lang="ar">
  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 class="rtl">
  10. [page:Curve] &rarr;
  11. <h1>[name]</h1>
  12. <p class="desc">
  13. قم بإنشاء منحنى شريط 3d ناعم من سلسلة من النقاط باستخدام
  14. [link:https://en.wikipedia.org/wiki/Centripetal_Catmull-Rom_spline Catmull-Rom] خوارزمية.
  15. </p>
  16. <h2>مثال الكود</h2>
  17. <code>
  18. // إنشاء حلقة مغلقة متموجة
  19. const curve = new THREE.CatmullRomCurve3( [
  20. new THREE.Vector3( -10, 0, 10 ),
  21. new THREE.Vector3( -5, 5, 5 ),
  22. new THREE.Vector3( 0, 0, 0 ),
  23. new THREE.Vector3( 5, -5, 5 ),
  24. new THREE.Vector3( 10, 0, 10 )
  25. ] );
  26. const points = curve.getPoints( 50 );
  27. const geometry = new THREE.BufferGeometry().setFromPoints( points );
  28. const material = new THREE.LineBasicMaterial( { color: 0xff0000 } );
  29. // إنشاء الكائن النهائي لإضافته إلى المشهد
  30. const curveObject = new THREE.Line( geometry, material );
  31. </code>
  32. <h2>أمثلة (Examples)</h2>
  33. <p>
  34. [example:webgl_geometry_extrude_splines WebGL / geometry / extrude / splines]
  35. </p>
  36. <h2>المنشئ (Constructor)</h2>
  37. <h3>
  38. [name]( [param:Array points], [param:Boolean closed], [param:String curveType], [param:Float tension] )
  39. </h3>
  40. <p>
  41. points – مصفوفة من نقاط [page:Vector3]<br />
  42. closed – ما إذا كان المنحنى مغلقًا. الافتراضي هو `false`.<br />
  43. curveType – نوع المنحنى. الافتراضي هو `centripetal`.<br />
  44. tension – توتر المنحنى. الافتراضي هو `0.5`.
  45. </p>
  46. <h2>الخصائص (Properties)</h2>
  47. <p>راجع فئة [page:Curve] الأساسية للحصول على الخصائص المشتركة.</p>
  48. <h3>[property:Array points]</h3>
  49. <p>
  50. مصفوفة من نقاط [page:Vector3] التي تحدد المنحنى. يحتاج على الأقل إلى دخولين.
  51. </p>
  52. <h3>[property:Boolean closed]</h3>
  53. <p>سيعود المنحنى إلى نفسه عندما يكون هذا صحيحًا.</p>
  54. <h3>[property:String curveType]</h3>
  55. <p>القيم الممكنة هي `centripetal` و `chordal` و `catmullrom`.</p>
  56. <h3>[property:Float tension]</h3>
  57. <p>عندما يكون [page:.curveType] هو `catmullrom` ، يعرف توتر catmullrom.</p>
  58. <h2>الوظائف (Methods)</h2>
  59. <p>راجع فئة [page:Curve] الأساسية للحصول على طرق مشتركة.</p>
  60. <h2>المصدر (Source)</h2>
  61. <p>
  62. [link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
  63. </p>
  64. </body>
  65. </html>