Bitbybit Docs
    Preparing search index...

    Class ManifoldBooleans

    Manifold सॉलिड्स को संयोजित करना: दो या कई को एक साथ फ़्यूज़, कट और इंटरसेक्ट करना, और सॉलिड को दूसरे सॉलिड या प्लेन से विभाजित करना। चूँकि कर्नेल बंद त्रिभुज मेश पर काम करता है, ये तेज़ हैं और हमेशा जलरोधी परिणाम देते हैं; दो-शेप और बहु-शेप रूप समान परिणाम देते हैं और सुविधा के लिए मौजूद हैं। हर मेथड नए सॉलिड्स लौटाता है और इनपुट को जैसे हैं वैसा छोड़ देता है।

    Index

    Constructors

    2 manifolds

    • दूसरे सॉलिड को पहले में से काटता है, subtract जैसा ही।

      Parameters

      • inputs: TwoManifoldsDto<ManifoldPointer>

        वह सॉलिड जिसमें से काटना है और वह सॉलिड जिससे काटना है

      Returns Promise<ManifoldPointer>

      पहले सॉलिड में से दूसरा घटाकर

      const holed = await bitbybit.manifold.manifold.booleans.differenceTwo({ manifold1: cube, manifold2: sphere });
      
    • दो सॉलिड को एक में फ़्यूज़ करता है, add जैसा ही।

      Parameters

      Returns Promise<ManifoldPointer>

      फ़्यूज़ किया गया सॉलिड

      const fused = await bitbybit.manifold.manifold.booleans.unionTwo({ manifold1: cube, manifold2: sphere });
      
    • केवल वह आयतन रखता है जो दो सॉलिड साझा करते हैं, intersect जैसा ही।

      Parameters

      Returns Promise<ManifoldPointer>

      साझा आयतन

      const common = await bitbybit.manifold.manifold.booleans.intersectionTwo({ manifold1: cube, manifold2: sphere });
      

    a to b

    • दूसरे सॉलिड को पहले में से काटता है, पहले का जो बचता है उसे छोड़ते हुए।

      Parameters

      • inputs: TwoManifoldsDto<ManifoldPointer>

        वह सॉलिड जिसमें से काटना है और वह सॉलिड जिससे काटना है

      Returns Promise<ManifoldPointer>

      पहले सॉलिड में से दूसरा घटाकर

      const holed = await bitbybit.manifold.manifold.booleans.subtract({ manifold1: cube, manifold2: sphere });
      
    • दो सॉलिड को एक बंद, जलरोधी सॉलिड में फ़्यूज़ करता है।

      Parameters

      Returns Promise<ManifoldPointer>

      फ़्यूज़ किया गया सॉलिड

      const fused = await bitbybit.manifold.manifold.booleans.add({ manifold1: cube, manifold2: sphere });
      
    • केवल वह आयतन रखता है जो दो सॉलिड साझा करते हैं, बाकी सब हटाते हुए।

      Parameters

      Returns Promise<ManifoldPointer>

      साझा आयतन

      const common = await bitbybit.manifold.manifold.booleans.intersect({ manifold1: cube, manifold2: sphere });
      

    minkowski

    • दूसरे सॉलिड को पहले की पूरी सतह पर स्वीप करता है और जिस-जिस से वह गुज़रता है उसे फ़्यूज़ कर देता है, जिससे पहला सॉलिड दूसरे के आकार जितना बढ़ जाता है - मिंकोव्स्की योग, जिससे किसी सॉलिड को गोले से गोल या मोटा किया जाता है।

      Parameters

      • inputs: TwoManifoldsDto<ManifoldPointer>

        बढ़ाया जाने वाला सॉलिड और स्वीप किया जाने वाला सॉलिड

      Returns Promise<ManifoldPointer>

      बढ़ा हुआ सॉलिड

      const padded = await bitbybit.manifold.manifold.booleans.minkowskiSum({ manifold1: cube, manifold2: sphere });
      
    • दूसरे सॉलिड को पहले की पूरी सतह पर स्वीप करता है और जिस-जिस से वह गुज़रता है उसे काट देता है, जिससे पहला सॉलिड दूसरे के आकार जितना सिकुड़ जाता है - मिंकोव्स्की अंतर, वह अपरदन जो मिंकोव्स्की योग को उलट देता है।

      Parameters

      • inputs: TwoManifoldsDto<ManifoldPointer>

        सिकोड़ा जाने वाला सॉलिड और स्वीप किया जाने वाला सॉलिड

      Returns Promise<ManifoldPointer>

      सिकुड़ा हुआ सॉलिड

      const eroded = await bitbybit.manifold.manifold.booleans.minkowskiDifference({ manifold1: cube, manifold2: sphere });
      

    multiple

    • सूची के हर आगे के सॉलिड को पहले में से काटता है।

      Parameters

      • inputs: ManifoldsDto<ManifoldPointer>

        सॉलिड्स, जिनमें पहला वह है जिसमें से काटा जाता है

      Returns Promise<ManifoldPointer>

      पहले सॉलिड में से बाकी सभी घटाकर

      const holed = await bitbybit.manifold.manifold.booleans.difference({ manifolds: [cube, sphere, cylinder] });
      
    • सूची के सभी सॉलिड को एक में फ़्यूज़ करता है।

      Parameters

      Returns Promise<ManifoldPointer>

      फ़्यूज़ किया गया सॉलिड

      const fused = await bitbybit.manifold.manifold.booleans.union({ manifolds: [cube, sphere, cylinder] });
      
    • केवल वह आयतन रखता है जो सूची के सभी सॉलिड साझा करते हैं।

      Parameters

      Returns Promise<ManifoldPointer>

      उन सभी में साझा आयतन

      const common = await bitbybit.manifold.manifold.booleans.intersection({ manifolds: [cube, sphere] });
      

    split

    • सॉलिड को दूसरे सॉलिड से काटता है और दोनों टुकड़े रखता है: काटने वाले के भीतर का हिस्सा और उसके बाहर का हिस्सा।

      जब दोनों चाहिए तब इंटरसेक्शन के बाद सबट्रैक्शन से सस्ता।

      Parameters

      • inputs: SplitManifoldsDto<ManifoldPointer>

        विभाजित किया जाने वाला सॉलिड और वह सॉलिड जिससे काटना है

      Returns Promise<ManifoldPointer[]>

      दो सॉलिड्स: कटर के भीतर का हिस्सा, फिर उसके बाहर का हिस्सा

      const [inside, outside] = await bitbybit.manifold.manifold.booleans.split({ manifoldToSplit: cube, manifoldCutter: sphere });
      
    • सॉलिड को प्लेन से काटता है और दोनों टुकड़े रखता है।

      प्लेन उसके नॉर्मल और उस नॉर्मल के साथ मूल बिंदु से उसकी दूरी से दिया जाता है; पहला टुकड़ा उस ओर है जिस ओर नॉर्मल इशारा करता है, दूसरा दूसरी ओर।

      Parameters

      • inputs: SplitByPlaneDto<ManifoldPointer>

        सॉलिड, प्लेन का नॉर्मल और मूल बिंदु से प्लेन की दूरी

      Returns Promise<ManifoldPointer[]>

      दो सॉलिड्स: नॉर्मल की ओर का हिस्सा, फिर बाकी

      const [top, bottom] = await bitbybit.manifold.manifold.booleans.splitByPlane({ manifold: cube, normal: [0, 0, 1], originOffset: 0.5 });
      
    • सॉलिड को कई समानांतर प्लेन से, सभी एक ही नॉर्मल के साथ, मूल बिंदु से दी गई दूरियों पर पटियों में काटता है।

      हर कटाव नॉर्मल की दूर वाली ओर का हिस्सा तैयार टुकड़े के रूप में रखता है और बाकी को अगली दूरी तक ले जाता है, इसलिए ऑफ़सेट बढ़ते होने चाहिए; n ऑफ़सेट n + 1 टुकड़े देते हैं, खाली वाले हटा दिए जाते हैं।

      Parameters

      • inputs: SplitByPlaneOnOffsetsDto<ManifoldPointer>

        सॉलिड, प्लेन का नॉर्मल और मूल बिंदु से प्लेनों की दूरियाँ

      Returns Promise<ManifoldPointer[]>

      स्लैब, दिए गए ऑफसेट से एक अधिक

      const slabs = await bitbybit.manifold.manifold.booleans.splitByPlaneOnOffsets({ manifold: cube, normal: [0, 0, 1], originOffsets: [0.25, 0.5, 0.75] });
      

    trim

    • सॉलिड को प्लेन से काटता है और केवल उस ओर का हिस्सा रखता है जिस ओर नॉर्मल इशारा करता है।

      प्लेन उसके नॉर्मल और उस नॉर्मल के साथ मूल बिंदु से उसकी दूरी से दिया जाता है।

      Parameters

      • inputs: TrimByPlaneDto<ManifoldPointer>

        सॉलिड, प्लेन का नॉर्मल और मूल बिंदु से प्लेन की दूरी

      Returns Promise<ManifoldPointer>

      सॉलिड का नॉर्मल की ओर का हिस्सा

      const half = await bitbybit.manifold.manifold.booleans.trimByPlane({ manifold: sphere, normal: [0, 0, 1], originOffset: 0 });