Bitbybit Docs
    Preparing search index...

    Class ManifoldTransforms

    Manifold সলিড সরানো, ঘোরানো, স্কেল করা, মিরর করা ও বিকৃত করা। কার্নেল রূপান্তরগুলি অলসভাবে মেলায়, তাই সেগুলি চেইন করা সস্তা; কোণ ডিগ্রিতে, এবং ঘূর্ণন মূলবিন্দু ঘিরে ঘোরে, প্রথমে X, তারপর Y, তারপর Z। প্রতিটি মেথড একটি নতুন সলিড ফেরত দেয়।

    Index

    Constructors

    matrix

    • একটি সলিডে একটি 4x4 ম্যাট্রিক্স প্রয়োগ করে।

      ম্যাট্রিক্সটি কলাম-মেজর, 16 সংখ্যা যার সরানোটি 12 থেকে 14 সূচকে; কার্নেল এটিকে একটি 3x4 অ্যাফাইন ট্রান্সফর্ম হিসেবে পড়ে এবং শেষ সারি উপেক্ষা করে।

      Parameters

      Returns Promise<ManifoldPointer>

      রূপান্তরিত সলিড

      const moved = await bitbybit.manifold.manifold.transforms.transform({ manifold: cube, transform: matrix });
      
    • একটি সলিডে 4x4 ম্যাট্রিক্সের একটি তালিকা একটির পর একটি প্রয়োগ করে, প্রথম থেকে শেষ পর্যন্ত, এবং চূড়ান্ত ফলাফল ফেরত দেয়।

      একটি খালি তালিকা একটি ত্রুটি থ্রো করে।

      Parameters

      Returns Promise<ManifoldPointer>

      সব ম্যাট্রিক্সের পরে সলিডটি

      const placed = await bitbybit.manifold.manifold.transforms.transforms({ manifold: cube, transforms: [turn, move] });
      

    multiple

    • প্রতিটি ভেক্টরের জন্য একটি সলিডের একটি সরানো কপি তৈরি করে, পুনরাবৃত্তি সাজানোর জন্য।

      Parameters

      Returns Promise<ManifoldPointer[]>

      প্রতি ভেক্টরে একটি সরানো কপি, একই ক্রমে

      const row = await bitbybit.manifold.manifold.transforms.translateByVectors({ manifold: cube, vectors: [[0, 0, 0], [10, 0, 0], [20, 0, 0]] });
      

    transforms

    • একটি সলিডকে X, Y ও Z বরাবর আলাদা ফ্যাক্টর দিয়ে স্কেল করে, মূলবিন্দুর সাপেক্ষে।

      Parameters

      Returns Promise<ManifoldPointer>

      স্কেল করা সলিড

      const stretched = await bitbybit.manifold.manifold.transforms.scale3D({ manifold: cube, vector: [1, 2, 1] });
      
    • একটি সলিডকে প্রতি অক্ষে একটি ফ্যাক্টর দিয়ে স্কেল করে, মূলবিন্দুর সাপেক্ষে; এটি scale3D এর মতো একই ইনপুট নেয়, তাই একটি সমান স্কেলের জন্য সমান ফ্যাক্টর ব্যবহার করুন।

      Parameters

      Returns Promise<ManifoldPointer>

      স্কেল করা সলিড

      const bigger = await bitbybit.manifold.manifold.transforms.scale({ manifold: cube, vector: [2, 2, 2] });
      
    • একটি সলিডকে দেওয়া নর্মালসহ মূলবিন্দু দিয়ে যাওয়া প্লেনের আড়াআড়ি মিরর করে।

      শূন্য-দৈর্ঘ্যের নর্মাল একটি খালি সলিড দেয়।

      Parameters

      Returns Promise<ManifoldPointer>

      মিরর করা সলিড

      const other = await bitbybit.manifold.manifold.transforms.mirror({ manifold: shape, normal: [1, 0, 0] });
      
    • একটি সলিডকে একটি ভেক্টর দিয়ে সরায়, মডেল এককে।

      Parameters

      Returns Promise<ManifoldPointer>

      সরানো সলিড

      const moved = await bitbybit.manifold.manifold.transforms.translate({ manifold: cube, vector: [10, 0, 0] });
      
    • একটি সলিডকে X, Y ও Z বরাবর আলাদা দূরত্বে সরায়, মডেল এককে।

      Parameters

      Returns Promise<ManifoldPointer>

      সরানো সলিড

      const moved = await bitbybit.manifold.manifold.transforms.translateXYZ({ manifold: cube, x: 10, y: 0, z: 5 });
      
    • একটি সলিডকে মূলবিন্দুর সাপেক্ষে ডিগ্রিতে Euler কোণ দিয়ে ঘোরায়: প্রথমে X এর চারপাশে, তারপর Y, তারপর Z।

      90 ডিগ্রির গুণিতকগুলি হুবহু, কোনো গোল করার ত্রুটি ছাড়া।

      Parameters

      Returns Promise<ManifoldPointer>

      ঘোরানো সলিড

      const turned = await bitbybit.manifold.manifold.transforms.rotate({ manifold: cube, vector: [0, 0, 45] });
      
    • একটি সলিডকে মূলবিন্দুর সাপেক্ষে X, তারপর Y, তারপর Z এর চারপাশে ডিগ্রিতে আলাদা কোণ দিয়ে ঘোরায়।

      90 ডিগ্রির গুণিতকগুলি হুবহু, কোনো গোল করার ত্রুটি ছাড়া।

      Parameters

      Returns Promise<ManifoldPointer>

      ঘোরানো সলিড

      const turned = await bitbybit.manifold.manifold.transforms.rotateXYZ({ manifold: cube, x: 0, y: 0, z: 45 });
      
    • একটি সলিডের প্রতিটি ভার্টেক্সকে আপনার নিজস্ব একটি ফাংশন দিয়ে সরায় যা ভার্টেক্সের অবস্থান জায়গাতেই বদলায়, বাঁকানো, সরু করা ও অন্য মুক্ত বিকৃতির জন্য।

      মেশের সংযোগ একই থাকে এবং ফলাফল এখনো অর্থবহ কিনা তা কিছুই পরীক্ষা করে না, তাই সারফেসকে নিজের মধ্য দিয়ে ভাঁজ করা একটি ফাংশন একটি ভাঙা সলিড দেয়।

      Parameters

      • inputs: ManifoldWarpDto<ManifoldPointer>

        সলিড এবং যে ফাংশন প্রতিটি ভার্টেক্স সরায়

      Returns Promise<ManifoldPointer>

      বিকৃত করা সলিড

      const bent = await bitbybit.manifold.manifold.transforms.warp({
      manifold: cube,
      warpFunc: (vert) => { vert[0] += vert[2] * 0.2; },
      });