Bitbybit Docs
    Preparing search index...

    Class BabylonNode

    عقد التحويل: نقاط غير مرئية لها موضع وتوجيه يمكن ربط الشبكات والعقد الأخرى بها كأصل، بحيث تتحرك مجموعة كاملة كوحدة واحدة. بناء تسلسل هرمي من العقد هو الطريقة التي توضع بها الترتيبات المعقدة: أدر الأصل فيدور معه كل عنصر فرعي. تنشئ الدوال هنا العقد، وتقرأ محاورها ومواضعها في الفضاء العالمي أو المحلي، وتنقلها وتدورها وتعيد ربطها بأصل آخر؛ والزوايا بالدرجات.

    Index

    Constructors

    Methods

    • يرسم المحاور الثلاثة لعقدة كخطوط ملونة بالطول المعطى، تابعة لها، بحيث يمكن رؤية موضعها واتجاهها؛ الألوان الافتراضية هي الأحمر لـ X والأخضر لـ Y والأزرق لـ Z.

      Parameters

      • inputs: DrawNodeDto

        العقدة وألوان المحاور وطول المحور

      Returns void

      bitbybit.babylon.node.drawNode({ node, colorX: "#ff0000", colorY: "#00ff00", colorZ: "#0000ff", size: 2 });
      
    • يرسم المحاور الثلاثة لعدة عقد كخطوط ملونة بالطول المعطى، كل مجموعة تابعة لعقدتها، كما يفعل drawNode لعقدة واحدة.

      Parameters

      • inputs: DrawNodesDto

        العقد وألوان المحاور وطول المحور

      Returns void

      bitbybit.babylon.node.drawNodes({ nodes: [nodeA, nodeB], colorX: "#ff0000", colorY: "#00ff00", colorZ: "#0000ff", size: 2 });
      
    • ينشئ عقدة عند origin مُدارة بزوايا rotation الثلاث بالدرجات حول X وY وZ، داخل نظام إحداثيات parent عندما يُعطى أصل.

      Parameters

      • inputs: CreateNodeFromRotationDto

        الأصل الاختياري ونقطة الأصل وزوايا التدوير بالدرجات

      Returns TransformNode

      العقدة الجديدة

      const node = bitbybit.babylon.node.createNodeFromRotation({ parent: null, origin: [0, 5, 0], rotation: [0, 45, 0] });
      
    • ينشئ عقدة تابعة للعقدة الجذرية للمشهد، وهي نقطة بداية جديدة لبناء تسلسل هرمي عند نقطة أصل العالم.

      Returns TransformNode

      العقدة الجديدة، وأصلها هو العقدة الجذر للمشهد

      const world = bitbybit.babylon.node.createWorldNode();
      const arm = bitbybit.babylon.node.createNodeFromRotation({ parent: world, origin: [0, 5, 0], rotation: [0, 0, 30] });
    • يقرأ الاتجاه الذي يشير إليه المحور Z المحلي للعقدة في فضاء العالم، مع تطبيق تدوير كل أصل.

      Parameters

      Returns number[]

      الاتجاه الأمامي كمتجه

    • يقرأ الاتجاه الذي يشير إليه المحور X المحلي للعقدة في فضاء العالم، مع تطبيق تدوير كل أصل.

      Parameters

      Returns number[]

      الاتجاه الأيمن كمتجه

    • يقرأ الاتجاه الذي يشير إليه المحور Y المحلي للعقدة في فضاء العالم، مع تطبيق تدوير كل أصل.

      Parameters

      Returns number[]

      الاتجاه العلوي كمتجه

    • يقرأ مكان نقطة أصل العقدة في فضاء العالم، مع تطبيق تحويل كل أصل.

      Parameters

      Returns number[]

      الموضع العالمي كنقطة

    • يقرأ تدوير العقدة في فضاء العالم، مع تطبيق تدوير كل أصل، كمصفوفة 4x4 من 16 رقمًا.

      Parameters

      Returns number[]

      التدوير كمصفوفة من 16 رقما

    • يقرأ تدوير العقدة نسبيًا إلى أصلها كمصفوفة 4x4 من 16 رقمًا؛ يجب أن تحمل العقدة رباعي تدوير، وهو ما يعطيه لها rotate وsetDirection.

      Parameters

      Returns number[]

      التدوير كمصفوفة من 16 رقما

    • يسرد العقد والشبكات التابعة مباشرة لعقدة، وهي التي تتحرك معها.

      Parameters

      Returns Node[]

      العناصر الفرعية المباشرة

    • يقرأ العقدة التي تتبعها عقدة، وهي التي تتحرك معها؛ العقدة في المستوى الأعلى ليس لها أصل.

      Parameters

      Returns Node

      العقدة الأصل

    • يقرأ موضع العقدة مقيسًا بمحاورها المحلية الخاصة بدلًا من محاور أصلها، وهو ما يختلف بمجرد تدوير العقدة.

      Parameters

      Returns number[]

      الموضع كنقطة في الفضاء المحلي للعقدة

    • يعطي العقدة الجذرية للمشهد، وهي قمة التسلسل الهرمي التي يتبعها createWorldNode.

      Returns TransformNode

      العقدة الجذر

    • يقرأ تدوير العقدة نسبيًا إلى أصلها كثلاث زوايا بالدرجات حول X وY وZ.

      Parameters

      Returns number[]

      زوايا التدوير بالدرجات

    • يدير العقدة بمقدار angle درجة حول محور يمر بـ position، فتدور العقدة حول تلك النقطة بدلًا من الدوران في مكانها؛ وتتبعها فروعها.

      Parameters

      Returns void

      bitbybit.babylon.node.rotateAroundAxisWithPosition({ node, position: [0, 0, 0], axis: [0, 1, 0], angle: 90 });
      
    • يدير العقدة بمقدار angle درجة حول محور يمر بنقطة أصلها الخاصة، فوق تدويرها الحالي؛ وتتبعها فروعها.

      Parameters

      • inputs: RotateNodeDto

        العقدة واتجاه المحور والزاوية بالدرجات

      Returns void

      bitbybit.babylon.node.rotate({ node, axis: [0, 1, 0], angle: 45 });
      
    • ينقل العقدة إلى نقطة في فضاء العالم، مهما كانت أصولها؛ وتتبعها فروعها.

      Parameters

      Returns void

      bitbybit.babylon.node.setAbsolutePosition({ node, position: [10, 0, 0] });
      
    • يدير العقدة بحيث يشير محورها Z المحلي على طول direction؛ وتتبعها فروعها.

      Parameters

      Returns void

      bitbybit.babylon.node.setDirection({ node, direction: [1, 0, 0] });
      
    • يجعل العقدة تابعة لأخرى فتتحرك معها من ذلك الحين، مع الاحتفاظ بمكانها الحالي في العالم؛ الأصل null يفصلها.

      Parameters

      Returns void

      bitbybit.babylon.node.setParent({ node: wheel, parentNode: car });
      
    • ينقل العقدة بمقدار distance من وحدات المشهد على طول direction، المعطى بالمحاور المحلية الخاصة بالعقدة؛ وتتبعها فروعها.

      Parameters

      Returns void

      bitbybit.babylon.node.translate({ node, direction: [0, 1, 0], distance: 5 });