openscad

 
 

प्रोग्रामरों के लिए ओपन सोर्स 3D CAD मॉडलर

ओपन सोर्स मुफ्त पाइथन API के माध्यम से CSG, एक्सट्रूज़न और कॉन्फ़िगरेबल पैरामीटर का उपयोग करके ठोस 3D मॉडल बनाएं।

OpenSCAD क्या है?

OpenSCAD एक मुफ्त और ओपन सोर्स 3D CAD मॉडलिंग टूल है जो विशेष रूप से प्रोग्रामर और इंजीनियरों के लिए डिज़ाइन किया गया है। इंटरैक्टिव 3D मॉडलरों के विपरीत, OpenSCAD स्क्रिप्ट-आधारित दृष्टिकोण का उपयोग करके कंस्ट्रक्टिव सॉलिड जियोमेट्री (CSG) और एक्सट्रूज़न तकनीकों के माध्यम से ठोस 3D ऑब्जेक्ट्स को परिभाषित करता है। यह सटीक, पुनरुत्पादनीय और पैरामीट्रिक मॉडलिंग को सक्षम बनाता है, जो मैकेनिकल पार्ट्स, प्रोटोटाइप और तकनीकी डिज़ाइनों के लिए आदर्श है। यह टूल Linux, Windows और macOS को सपोर्ट करता है, और ऑटोमेशन व स्क्रिप्टिंग के लिए Python-आधारित वर्कफ़्लो के साथ अच्छी तरह एकीकृत होता है।

OpenSCAD उस स्क्रिप्ट फ़ाइल को पढ़ता है जो वस्तु का वर्णन करती है और उसके अनुसार 3D मॉडल को रेंडर करता है, जिससे डिज़ाइनरों को मॉडलिंग प्रक्रिया पर पूर्ण नियंत्रण मिलता है। यह यूनियन, इंटरसेक्शन, डिफरेंस जैसी ऑपरेशन्स और ट्रांसलेट, रोटेट, स्केल जैसी ट्रांसफ़ॉर्मेशन को सपोर्ट करता है। डेटा को DXF फ़ाइलों से आयात किया जा सकता है और STL, OFF और अन्य फ़ॉर्मेट्स में निर्यात किया जा सकता है। इसकी ओपन आर्किटेक्चर और सक्रिय समुदाय इसे उन डेवलपर्स के लिए एक शक्तिशाली विकल्प बनाते हैं जो GUI इंटरैक्शन पर निर्भर हुए बिना प्रोग्रामेटिक 3D मॉडलिंग क्षमताओं की तलाश में हैं।

Previous Next

OpenSCAD के साथ शुरुआत

OpenSCAD आधिकारिक वेबसाइट से Linux, macOS, और Windows के लिए पूर्वनिर्मित बाइनरी के रूप में उपलब्ध है। डेवलपर्स के लिए, स्रोत कोड GitHub पर होस्ट किया गया है, और आप इसे CMake और प्रदान किए गए बिल्ड स्क्रिप्ट्स का उपयोग करके स्रोत से बना सकते हैं। आधिकारिक [openscad GitHub](https://github.com/openscad/openscad) रिपॉजिटरी सभी प्रमुख प्लेटफ़ॉर्म के लिए विस्तृत बिल्ड निर्देश शामिल करती है। जल्दी शुरू करने के लिए, नवीनतम रिलीज़ डाउनलोड करें, इसे इंस्टॉल करें, और अपना पहला SCAD स्क्रिप्ट लिखने के लिए एडिटर खोलें।

पैकेज मैनेजर्स के माध्यम से OpenSCAD स्थापित करें

# Ubuntu/Debian
sudo apt install openscad

# macOS (Homebrew)
brew install --cask openscad

# Windows (Chocolatey)
choco install openscad

संरचनात्मक ठोस ज्यामिति (CSG)

OpenSCAD की मुख्य ताकत उसके कंस्ट्रक्टिव सॉलिड जियोमेट्री (CSG) के समर्थन में निहित है, जो बुनियादी 3D प्रिमिटिव्स को यूनियन, इंटरसेक्शन और डिफरेंस जैसी बूलियन ऑपरेशन्स का उपयोग करके संयोजित करने की अनुमति देता है। यह दृष्टिकोण सटीक, नॉन-मैनीफोल्ड-सेफ मॉडलिंग सुनिश्चित करता है जो इंजीनियरिंग और निर्माण के लिए उपयुक्त है। उदाहरण के लिए, आप बड़े सिलिंडर से छोटे सिलिंडर को घटाकर एक छेद वाला सिलिंडर बना सकते हैं। CSG ऑपरेशन्स को स्क्रिप्ट में घोषणात्मक रूप से परिभाषित किया जाता है, जिससे आसान पैरामीटराइज़ेशन और संशोधन संभव होता है। यह OpenSCAD को यांत्रिक भागों, एन्क्लोज़र, और कार्यात्मक प्रोटोटाइप्स के डिजाइन के लिए आदर्श बनाता है जहाँ सटीकता और पुनरुत्पादनशीलता महत्वपूर्ण हैं।

OpenSCAD में CSG का उपयोग करके छेद वाला सिलिंडर कैसे बनाएं?

difference() {
    cylinder(h = 20, r = 10);
    cylinder(h = 25, r = 4, center = true);
}

2D रूपरेखा एक्सट्रूज़न

OpenSCAD DXF फ़ाइलों से आयात किए गए 2D रूपरेखाओं या सीधे SCAD कोड में परिभाषित 2D रूपरेखाओं को एक्सट्रूड करने का समर्थन करता है। यह तकनीक 2D प्रोफ़ाइल से जटिल 3D आकार बनाने के लिए आवश्यक है, जैसे गियर्स, ब्रैकेट्स, या कस्टम एन्क्लोज़र। आप पाथ को रैखिक रूप से एक्सट्रूड कर सकते हैं या उन्हें अक्ष के चारों ओर (रोटेशन के माध्यम से) घुमा सकते हैं। एक्सट्रूज़न प्रक्रिया वर्टिसेज़ के क्रम का सम्मान करती है और 2D पॉलीगॉन और छेद वाले पाथ दोनों का समर्थन करती है। ट्रांसफ़ॉर्मेशन और मॉड्यूल के साथ मिलाकर, यह पाइप, फ्रेम, या वास्तु तत्वों जैसे भागों की पैरामीट्रिक जनरेशन को सक्षम बनाता है, जिससे OpenSCAD तकनीकी डिज़ाइन और निर्माण कार्यप्रवाहों के लिए एक शक्तिशाली उपकरण बन जाता है।

2D बहुभुज को 3D वस्तु में कैसे एक्सट्रूड करें?

linear_extrude(height = 10, center = true, convexity = 10)
  polygon(points = [[0,0], [10,0], [5,10]]);

पैरामीट्रिक मॉडलिंग और कॉन्फ़िगरेशन

OpenSCAD पैरामीट्रिक मॉडलिंग में उत्कृष्ट है, जहाँ आयाम और आकार वेरिएबल्स और फ़ंक्शन्स का उपयोग करके परिभाषित किए जाते हैं। यह डिज़ाइनों को कुछ पैरामीटर बदलकर आसानी से अनुकूलित करने की अनुमति देता है, जिससे यह आवर्ती प्रोटोटाइपिंग और कस्टमाइज़ेशन के लिए आदर्श बन जाता है। उदाहरण के लिए, आप एक मॉड्यूल परिभाषित कर सकते हैं जो चौड़ाई, ऊँचाई और मोटाई के पैरामीटर स्वीकार करता है, और फिर इसे कई डिज़ाइनों में पुन: उपयोग कर सकते हैं। पैरामीटर बाहरी डेटा, जैसे CSV या DXF फ़ाइल से मानों द्वारा भी संचालित हो सकते हैं, जिससे Python-आधारित डेटा पाइपलाइन के साथ एकीकरण संभव हो जाता है। यह क्षमता जनरेटिव डिज़ाइन का समर्थन करती है, जहाँ मॉडल बदलती आवश्यकताओं या प्रतिबंधों के अनुसार स्वचालित रूप से अनुकूलित होते हैं।

पुन: उपयोग योग्य पैरामीट्रिक मॉड्यूल को कैसे परिभाषित करें?

module box(width, height, thickness) {
    difference() {
        cube([width, height, thickness]);
        translate([thickness, thickness, -1])
            cube([width - 2*thickness, height - 2*thickness, thickness + 2]);
    }
}

box(50, 30, 3);

डेटा आयात और निर्यात एकीकरण

OpenSCAD 2D DXF फ़ाइलों को आयात करने और 3D मॉडल को STL, OFF और अन्य फ़ॉर्मैट में निर्यात करने के लिए मजबूत समर्थन प्रदान करता है। यह CAD/CAM टूल्स, 3D प्रिंटर और सिमुलेशन सॉफ़्टवेयर के साथ एकीकरण को आसान बनाता है। DXF आयात में एक्सट्रूज़न के लिए पाथ शामिल हो सकते हैं, जबकि निर्यात में 3D प्रिंटिंग के लिए बाइनरी और ASCII STL दोनों समर्थित हैं। अतिरिक्त रूप से, OpenSCAD DXF फ़ाइलों से डिज़ाइन पैरामीटर पढ़ सकता है, जिससे हाइब्रिड वर्कफ़्लो संभव होते हैं जहाँ ज्यामिति बाहरी टूल्स में परिभाषित होती है लेकिन प्रोग्रामेटिक रूप से परिष्कृत की जाती है। यह इंटरऑपरेबिलिटी, इसके स्क्रिप्ट-आधारित स्वभाव के साथ मिलकर, डेवलपर्स को Python या शेल स्क्रिप्ट्स का उपयोग करके मॉडल जेनरेशन और बैच प्रोसेसिंग को स्वचालित करने की अनुमति देती है, जिससे उत्पादन वर्कफ़्लो को सुव्यवस्थित किया जा सकता है।

DXF को कैसे आयात करें और इसे 3D में एक्सट्रूड करें?

linear_extrude(height = 5) {
    import(file = "profile.dxf", layer = "outer");
}
 हिन्दी