Bitbybit Docs
    Preparing search index...

    Class MeshBitByBit

    الهندسة على شبكات المثلثات البسيطة: الشبكة قائمة من المثلثات، كل منها ثلاث نقاط. تحسب الدوال هنا مستوى المثلث، والمسافة من نقطة إلى مستوى، وأين تقطع شبكتان إحداهما الأخرى، كقطع أو كخطوط متعددة الأضلاع أو كقوائم نقاط. لا تحتاج إلى نواة CAD، لذا تعمل على أي بيانات مثلثة.

    Index

    Constructors

    base

    • يقيس مدى بعد نقطة عن مستوى، مع إشارة: موجبة على الجانب الذي يشير إليه الناظم، وسالبة على الجانب الآخر.

      مثال: النقطة [0,5,0] والمستوى XZ بالناظم [0,1,0] -> 5

      Parameters

      Returns number

      المسافة ذات الإشارة بوحدات النموذج

      const above = bitbybit.mesh.signedDistanceToPlane({ point: [0, 5, 0], plane: { normal: [0, 1, 0], d: 0 } });
      

    mesh

    • يجد كل قطعة يخترق عندها سطحا شبكتين بعضهما، باختبار كل مثلث من إحداهما ضد كل مثلث من الأخرى.

      مثال: شبكة مكعب وشبكة كرة -> القطع التي ترسم معاً منحنى تقاطعهما

      Parameters

      Returns Segment3[]

      قطع التقاطع، بدون ترتيب معين

      const segments = bitbybit.mesh.meshMeshIntersectionSegments({ mesh1: cubeTriangles, mesh2: sphereTriangles, tolerance: 1e-7 });
      
    • يجد أين يخترق سطحا شبكتين بعضهما ويصل القطع في خطوط متعددة الأضلاع، مغلقة حيث يلتف المنحنى.

      مثال: شبكة مكعب وشبكة كرة -> خطوط متعددة الأضلاع مغلقة حيث يلتقي السطحان

      Parameters

      Returns Polyline3[]

      منحنيات التقاطع كخطوط متعددة الأضلاع

      const curves = bitbybit.mesh.meshMeshIntersectionPolylines({ mesh1: cubeTriangles, mesh2: sphereTriangles, tolerance: 1e-7 });
      
    • يجد أين يخترق سطحا شبكتين بعضهما، كقائمة نقاط واحدة لكل منحنى.

      يكرر المنحنى المغلق نقطته الأولى في النهاية لتكون الحلقة صريحة. مثال: شبكة مكعب وشبكة كرة -> قوائم نقاط ترسم أين يلتقي السطحان

      Parameters

      Returns Point3[][]

      قائمة نقاط واحدة لكل منحنى تقاطع

      const curves = bitbybit.mesh.meshMeshIntersectionPoints({ mesh1: cubeTriangles, mesh2: sphereTriangles, tolerance: 1e-7 });
      

    traingle

    • يجد المستوى الذي يقع فيه مثلث: ناظمه الوحدوي ومسافته من نقطة الأصل على طول ذلك الناظم.

      يتبع الناظم قاعدة اليد اليمنى حول نقاط المثلث. المثلث الذي لا مساحة له، ونقاطه على خط واحد، ليس له مستوى ويعطي undefined. مثال: [[0,0,0], [1,0,0], [0,1,0]] -> { normal: [0,0,1], d: 0 }

      Parameters

      • inputs: TriangleToleranceDto

        المثلث والتفاوت الذي تُعد مساحته دونه صفرا

      Returns TrianglePlane3

      المستوى، أو undefined لمثلث منبسط

      const plane = bitbybit.mesh.calculateTrianglePlane({ triangle: [[0, 0, 0], [1, 0, 0], [0, 1, 0]], tolerance: 1e-7 });
      
    • يجد القطعة التي يخترق عندها مثلثان بعضهما.

      المثلثات التي لا تتلامس، أو المتوازية، أو الواقعة في المستوى نفسه تعطي undefined. مثال: مثلث في المستوى XY وآخر قائم عبره -> القطعة التي يتقاطعان عندها

      Parameters

      Returns Segment3

      قطعة التقاطع، أو undefined عندما لا توجد

      const cut = bitbybit.mesh.triangleTriangleIntersection({
      triangle1: [[0, 0, 0], [2, 0, 0], [1, 2, 0]],
      triangle2: [[1, -1, 1], [1, 1, 1], [1, 1, -1]],
      tolerance: 1e-7,
      });