123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160 |
- <!DOCTYPE html>
- <html lang="ar">
- <head>
- <meta charset="utf-8" />
- <base href="../../../../" />
- <script src="page.js"></script>
- <link type="text/css" rel="stylesheet" href="page.css" />
- </head>
- <body class="rtl">
- [page:Curve] → [page:CurvePath] →
-
- <h1>[name]</h1>
-
- <p class="desc">
- تمثيل مسار ثنائي الأبعاد. توفر الفئة طرقًا لإنشاء مسارات
- ومحيطات الأشكال ثنائية الأبعاد المشابهة لواجهة برمجة التطبيقات Canvas 2D.
- </p>
-
- <h2>مثال الكود</h2>
-
- <code>
- const path = new THREE.Path();
-
- path.lineTo( 0, 0.8 );
- path.quadraticCurveTo( 0, 1, 0.2, 1 );
- path.lineTo( 1, 1 );
-
- const points = path.getPoints();
-
- const geometry = new THREE.BufferGeometry().setFromPoints( points );
- const material = new THREE.LineBasicMaterial( { color: 0xffffff } );
-
- const line = new THREE.Line( geometry, material );
- scene.add( line );
- </code>
-
- <h2>المنشئ (Constructor)</h2>
-
- <h3>[name]( [param:Array points] )</h3>
- <p>
- points -- (اختياري) مصفوفة من [page:Vector2 Vector2s].<br /><br />
-
- يُنشئ مسارًا من النقاط. يُعرِّف النقطة الأولى الإزاحة، ثُم
- يتم إضافة النقاط المتتالية إلى مصفوفة [page:CurvePath.curves curves] كـ
- [page:LineCurve LineCurves].<br /><br />
-
- إذا لم يتم تحديد أي نقاط، يتم إنشاء مسار فارغ ويتم تعيين
- [page:.currentPoint] على المنشأ.
- </p>
- <h2>الخصائص (Properties)</h2>
- <p>انظر فئة [page:CurvePath] الأساسية للخصائص المشتركة.</p>
-
- <h3>[property:Vector2 currentPoint]</h3>
- <p>
- الإزاحة الحالية للمسار. سيبدأ أي [page:Curve] جديد يتم إضافته
- هنا.
- </p>
-
- <h2>الوظائف (Methods)</h2>
- <p>انظر فئة [page:CurvePath] الأساسية للأساليب المشتركة.</p>
-
- <h3>[method:this absarc]( [param:Float x], [param:Float y], [param:Float radius], [param:Float startAngle], [param:Float endAngle], [param:Boolean clockwise] )</h3>
- <p>
- x، y -- مركز القوس المطلق.<br />
- radius -- نصف قطر القوس.<br />
- startAngle -- زاوية البدء بالراديان.<br />
- endAngle -- زاوية النهاية بالراديان.<br />
- clockwise -- تدوير القوس في اتجاه عقارب الساعة. يعتمد على `false`.<br /><br />
-
- يضيف [page:EllipseCurve EllipseCurve] مُوضَعًا مطلقًا إلى
- المسار.
- </p>
-
- <h3>[method:this absellipse]( [param:Float x], [param:Float y], [param:Float xRadius], [param:Float yRadius], [param:Float startAngle], [param:Float endAngle], [param:Boolean clockwise], [param:Float rotation] )</h3>
- <p>
- x، y -- مركز القطع الناقص المطلق.<br />
- xRadius -- نصف قطر القطع الناقص في المحور x.<br />
- yRadius -- نصف قطر القطع الناقص في المحور y.<br />
- startAngle -- زاوية البدء بالراديان.<br />
- endAngle -- زاوية النهاية بالراديان.<br />
- clockwise -- تدوير القطع الناقص في اتجاه عقارب الساعة. يعتمد على false.<br />
- rotation -- زاوية دوران القطع الناقص بالراديان، عكس اتجاه عقارب
- من المحور X الموجب. اختياري، يعتمد على 0.<br /><br />
-
- يضيف [page:EllipseCurve EllipseCurve] مُوضَعًا مطلقًا إلى
- المسار.
- </p>
-
- <h3>[method:this arc]( [param:Float x], [param:Float y], [param:Float radius], [param:Float startAngle], [param:Float endAngle], [param:Boolean clockwise] )</h3>
- <p>
- x، y -- مركز القوس المُزَوَّد من آخر استدعاء.<br />
- radius -- نصف قطر القوس.<br />
- startAngle -- زاوية البدء بالراديان.<br />
- endAngle -- زاوية النهاية بالراديان.<br />
- clockwise -- تدوير القوس في اتجاه عقارب الساعة. يعتمد على `false`.<br /><br />
-
- يضيف [page:EllipseCurve EllipseCurve] إلى المسار، مُوضَعًا نسبيًا
- إلى [page:.currentPoint].
- </p>
- <h3>[method:this bezierCurveTo]( [param:Float cp1X], [param:Float cp1Y], [param:Float cp2X], [param:Float cp2Y], [param:Float x], [param:Float y] )</h3>
- <p>
- يُنشئ منحى بيزيه من [page:.currentPoint] مع (cp1X، cp1Y)
- و(cp2X، cp2Y) كنقاط تحكم ويُحدِّث [page:.currentPoint] إلى x
- و y.
- </p>
- <h3>[method:this ellipse]( [param:Float x], [param:Float y], [param:Float xRadius], [param:Float yRadius], [param:Float startAngle], [param:Float endAngle], [param:Boolean clockwise], [param:Float rotation] )</h3>
- <p>
- x، y -- مركز القطع الناقص المُزَوَّد من آخر استدعاء.<br />
- xRadius -- نصف قطر القطع الناقص في المحور x.<br />
- yRadius -- نصف قطر القطع الناقص في المحور y.<br />
- startAngle -- زاوية البدء بالراديان.<br />
- endAngle -- زاوية النهاية بالراديان.<br />
- clockwise -- تدوير القطع الناقص في اتجاه عقارب الساعة. يعتمد على `false`.<br />
- rotation -- زاوية دوران القطع الناقص بالراديان، عكس اتجاه عقارب
- من المحور X الموجب. اختياري، يعتمد على `0`.<br /><br />
- يضيف [page:EllipseCurve EllipseCurve] إلى المسار، مُوضَعًا نسبيًا
- إلى [page:.currentPoint].
- </p>
- <h3>[method:this lineTo]( [param:Float x], [param:Float y] )</h3>
- <p>
- يُربِط [page:LineCurve] من [page:.currentPoint] إلى x، y على
- المسار.
- </p>
- <h3>[method:this moveTo]( [param:Float x], [param:Float y] )</h3>
- <p>تحريك [page:.currentPoint] إلى x، y.</p>
- <h3>[method:this quadraticCurveTo]( [param:Float cpX], [param:Float cpY], [param:Float x], [param:Float y] )</h3>
- <p>
- يُنشئ منحى رباعي من [page:.currentPoint] مع cpX و cpY كـ
- نقطة تحكم ويُحدِّث [page:.currentPoint] إلى x و y.
- </p>
- <h3>[method:this setFromPoints]( [param:Array vector2s] )</h3>
- <p>
- points -- مصفوفة من [page:Vector2 Vector2s].<br /><br />
- يتم إضافة النقاط إلى مصفوفة [page:CurvePath.curves curves] كـ
- [page:LineCurve LineCurves].
- </p>
- <h3>[method:this splineThru] ( [param:Array points] )</h3>
- <p>
- points - مصفوفة من [page:Vector2 Vector2s]<br /><br />
- يُربِط منحى جديدًا من نوع SplineCurve على المسار.
- </p>
- <h2>المصدر (Source)</h2>
- <p>
- [link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
- </p>
- </body>
- </html>
|