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

      • inputs: TranslateByVectorsDto<ManifoldPointer>

        सॉलिड और वे वेक्टर जितना प्रतिलिपियों को स्थानांतरित करना है

      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 });
      
    • सॉलिड को मूल बिंदु के चारों ओर डिग्री में यूलर कोणों से घुमाता है: पहले 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; },
      });