किसी भी एंटिटी को सीन में ड्रॉ करता है, जैसे drawAnyAsync करता है, ड्रॉ किया गया ऑब्जेक्ट वापस दिए बिना; उस स्क्रिप्ट के अंतिम चरण के लिए जिसे केवल परिणाम दिखना चाहिए।
ड्रॉ की जाने वाली एंटिटी और वैकल्पिक ड्रॉइंग विकल्प
लाइब्रेरी द्वारा बनाई गई किसी भी एंटिटी को सीन में ड्रॉ करता है और ड्रॉ किया गया ऑब्जेक्ट वापस देता है: OCCT, JSCAD और Manifold की कर्नेल शेप्स, पॉइंट, लाइनें, पॉलीलाइनें, वक्र, मेश, टैग और नोड।
विकल्प एंटिटी से मेल खाते हैं, कोई न दिए जाने पर डिफ़ॉल्ट के साथ; उसी जगह फिर से ड्रॉ करने के लिए पिछला परिणाम अपडेट स्लॉट में वापस दें।
एंटिटी को ड्रॉ करने से जो बनता है: ज्यामिति के लिए एक सीन ऑब्जेक्ट, टैग के लिए टैग या टैग्स, नोड के लिए एक अक्ष त्रिक; खाली सूची के लिए undefined
const box = await bitbybit.occt.shapes.solid.createBox({ width: 10, length: 10, height: 10, center: [0, 0, 0] });
const options = bitbybit.draw.optionsOcctShapeSimple({ precision: 0.01, drawFaces: true, faceColour: "#ff0000", drawEdges: true, edgeColour: "#ffffff", edgeWidth: 2, drawTwoSided: true, backFaceColour: "#0000ff", backFaceOpacity: 1 });
const drawn = await bitbybit.draw.drawAnyAsync({ entity: box, options });
ऐसी एंटिटी ड्रॉ करता है जिसे कर्नेल के काम की ज़रूरत नहीं, जैसे drawAny करता है, ड्रॉ किया गया ऑब्जेक्ट वापस दिए बिना; पॉइंट, लाइनें, पॉलीलाइनें और टैग योग्य हैं, कर्नेल शेप्स नहीं।
ड्रॉ की जाने वाली एंटिटी और वैकल्पिक ड्रॉइंग विकल्प
ऐसी एंटिटी को तुरंत सीन में ड्रॉ करता है जिसे कर्नेल के काम की ज़रूरत नहीं और ड्रॉ किया गया ऑब्जेक्ट वापस देता है: पॉइंट, लाइनें, पॉलीलाइनें, टैग और नोड।
OCCT, JSCAD और Manifold की कर्नेल शेप्स को drawAnyAsync से जाना चाहिए, जो कर्नेल के उन्हें मेश करने की प्रतीक्षा करता है।
एंटिटी को ड्रॉ करने से जो बनता है: ज्यामिति के लिए एक सीन ऑब्जेक्ट, टैग के लिए टैग या टैग्स, नोड के लिए एक अक्ष त्रिक; खाली सूची के लिए undefined
const options = bitbybit.draw.optionsSimple({ colours: "#00ff00", size: 0.5, opacity: 1, updatable: false, hidden: false, drawTwoSided: true, backFaceColour: "#0000ff", backFaceOpacity: 1, colorMapStrategy: Bit.Inputs.Base.colorMapStrategyEnum.lastColorRemainder, arrowSize: 0, arrowAngle: 15 });
const drawn = bitbybit.draw.drawAny({ entity: [[0, 0, 0], [5, 5, 5], [10, 0, 0]], options });
ग्राउंड प्लेन पर एक ग्रिड ड्रॉ करता है, जैसे drawGridMesh करता है, मेश वापस दिए बिना।
ग्रिड का आकार, लाइनों के बीच की दूरी, रंग और अपारदर्शिता
ग्राउंड प्लेन, मूल बिंदु से होकर गुज़रते XZ प्लेन, पर एक ग्रिड ड्रॉ करता है ताकि पैमाने और ओरिएंटेशन का अनुमान हो; डिफ़ॉल्ट रूप से हर दसवीं लाइन मोटी ड्रॉ होती है।
ग्रिड का आकार, लाइनों के बीच की दूरी, रंग और अपारदर्शिता
ग्रिड मेश
createPBRMaterial के टेक्सचर स्लॉट के लिए URL से एक इमेज टेक्सचर बनाता है, टाइलिंग, ऑफ़सेट, रोटेशन और फ़िल्टरिंग के साथ जिनका हर रेंडरर में एक ही अर्थ है।
इमेज URL और टाइलिंग, ऑफसेट, रोटेशन, फ्लिप और सैंपलिंग विकल्प
इंजन का टेक्सचर
उन सेटिंग से एक भौतिक रूप से आधारित मैटेरियल बनाता है जिनका हर रेंडरर में एक ही अर्थ है: आधार रंग, मेटैलिक और रफनेस, अपारदर्शिता, उत्सर्जक चमक, टेक्सचर स्लॉट और अल्फ़ा तथा साइड विकल्प; इसे ड्रॉइंग विकल्पों के faceMaterial में रखें।
नाम, रंग, मेटैलिक और रफनेस मान, अपारदर्शिता, टेक्सचर और रेंडरिंग विकल्प
इंजन का मैटेरियल
const material = bitbybit.draw.createPBRMaterial({ name: "steel", baseColor: "#c0c0c0", metallic: 1, roughness: 0.4, alpha: 1, emissiveColor: "#000000", emissiveIntensity: 1, zOffset: 0, zOffsetUnits: 0, alphaMode: Bit.Inputs.Draw.alphaModeEnum.opaque, alphaCutoff: 0.5, doubleSided: false, wireframe: false, unlit: false });
const options = bitbybit.draw.optionsOcctShapeMaterial({ precision: 0.01, faceMaterial: material, drawEdges: true, edgeColour: "#ffffff", edgeWidth: 2 });
पॉइंट, लाइनों, पॉलीलाइनों, वक्रों, सतहों और JSCAD मेश के लिए ड्रॉइंग विकल्प बनाता है: रंग, आकार, अपारदर्शिता, दो-तरफ़ा रेंडरिंग और लाइनों पर तीर की नोकें, छोड़े गए के लिए डिफ़ॉल्ट के साथ।
वे विकल्प जिनसे शुरू करना है
ड्रॉइंग विकल्प
const options = bitbybit.draw.optionsSimple({ colours: "#ff0000", size: 2, opacity: 1, updatable: false, hidden: false, drawTwoSided: true, backFaceColour: "#0000ff", backFaceOpacity: 1, colorMapStrategy: Bit.Inputs.Base.colorMapStrategyEnum.lastColorRemainder, arrowSize: 0, arrowAngle: 15 });
OCCT शेप्स के लिए पूरे ड्रॉइंग विकल्प बनाता है: मेशिंग परिशुद्धता, फेस, एज और वर्टेक्स के रंग और आकार, इंडेक्स लेबल, एज पर तीर, दो-तरफ़ा रेंडरिंग और त्रिभुजन कैश, छोड़े गए के लिए डिफ़ॉल्ट के साथ।
वे विकल्प जिनसे शुरू करना है
ड्रॉइंग विकल्प
const options = bitbybit.draw.optionsOcctShape({ faceOpacity: 1, edgeOpacity: 1, edgeColour: "#ffffff", faceColour: "#ff0000", edgeWidth: 2, drawEdges: true, drawFaces: true, drawVertices: false, vertexColour: "#ff00ff", vertexSize: 0.03, precision: 0.01, drawEdgeIndexes: false, edgeIndexHeight: 0.06, edgeIndexColour: "#ff00ff", drawFaceIndexes: false, faceIndexHeight: 0.06, faceIndexColour: "#0000ff", drawTwoSided: true, backFaceColour: "#0000ff", backFaceOpacity: 1, edgeArrowSize: 0, edgeArrowAngle: 15, keepMeshData: false, allowQualityDecrease: true, forceFaceDeflection: false });
OCCT शेप्स के लिए सबसे अधिक उपयोग होने वाले ड्रॉइंग विकल्प बनाता है, परिशुद्धता, फेस और एज के रंग और दो-तरफ़ा रेंडरिंग, छोड़े गए के लिए डिफ़ॉल्ट के साथ।
वे विकल्प जिनसे शुरू करना है
ड्रॉइंग विकल्प
उन OCCT शेप्स के लिए ड्रॉइंग विकल्प बनाता है जिनके फेस पूरा इंजन मैटेरियल उपयोग करते हैं, जैसा createPBRMaterial बनाता है, साथ में परिशुद्धता और एज स्टाइल।
वे विकल्प जिनसे शुरू करना है
ड्रॉइंग विकल्प
const material = bitbybit.draw.createPBRMaterial({ name: "steel", baseColor: "#c0c0c0", metallic: 1, roughness: 0.4, alpha: 1, emissiveColor: "#000000", emissiveIntensity: 1, zOffset: 0, zOffsetUnits: 0, alphaMode: Bit.Inputs.Draw.alphaModeEnum.opaque, alphaCutoff: 0.5, doubleSided: false, wireframe: false, unlit: false });
const options = bitbybit.draw.optionsOcctShapeMaterial({ precision: 0.01, faceMaterial: material, drawEdges: true, edgeColour: "#ffffff", edgeWidth: 2 });
Manifold सॉलिड और क्रॉस-सेक्शन के लिए ड्रॉइंग विकल्प बनाता है: फेस का रंग या पूरा इंजन मैटेरियल, क्रॉस-सेक्शन की लाइन स्टाइल, नॉर्मल और दो-तरफ़ा रेंडरिंग।
वे विकल्प जिनसे शुरू करना है
ड्रॉइंग विकल्प
const options = bitbybit.draw.optionsManifoldShapeMaterial({ faceOpacity: 1, faceColour: "#ff0000", faceMaterial: material, crossSectionColour: "#ff00ff", crossSectionWidth: 2, crossSectionOpacity: 1, computeNormals: false, drawTwoSided: true, backFaceColour: "#0000ff", backFaceOpacity: 1 });
const drawn = await bitbybit.draw.drawAnyAsync({ entity: solid, options });
ट्रांसफॉर्म नोड के लिए ड्रॉइंग विकल्प बनाता है, जो दी गई लंबाई की रंगीन अक्ष लाइनों के त्रिक के रूप में ड्रॉ होते हैं।
वे विकल्प जिनसे शुरू करना है
ड्रॉइंग विकल्प
सीन में कुछ भी ड्रॉ करना: कर्नेल शेप्स, पॉइंट, लाइनें, पॉलीलाइनें, कर्व, मेश और टैग सभी
drawAnyAsyncसे होकर जाते हैं, जो एंटिटी के लिए सही रेंडरर चुनता है और ड्रॉ की गई वस्तु लौटाता है।optionsमेथड प्रत्येक प्रकार की एंटिटी के लिए डिफ़ॉल्ट के साथ ड्रॉइंग विकल्प बनाते हैं,createPBRMaterialऔरcreateTextureफेस स्लॉट के लिए मैटेरियल बनाते हैं, और ड्रॉ की गई वस्तु को वापस पास करके उसी जगह पुनः ड्रॉ किया जा सकता है।