
openscad
Pemodel CAD 3D Sumber Terbuka untuk Programmer
Buat Model 3D Padat Menggunakan CSG, Ekstrusi & Parameter yang Dapat Dikonfigurasi melalui API Python Gratis Sumber Terbuka.
Apa itu OpenSCAD?
OpenSCAD adalah alat pemodelan CAD 3D gratis dan sumber terbuka yang dirancang khusus untuk programmer dan insinyur. Tidak seperti pemodel 3D interaktif, OpenSCAD menggunakan pendekatan berbasis skrip untuk mendefinisikan objek 3D padat menggunakan konstruktif solid geometry (CSG) dan teknik ekstrusi. Hal ini memungkinkan pemodelan yang presisi, dapat direproduksi, dan parametrik yang ideal untuk komponen mekanik, prototipe, dan desain teknis. Alat ini mendukung Linux, Windows, dan macOS, serta terintegrasi dengan baik ke dalam alur kerja berbasis Python untuk otomatisasi dan scripting.
OpenSCAD membaca file skrip yang menggambarkan objek dan merender model 3D sesuai, memberikan desainer kontrol penuh atas proses pemodelan. Ia mendukung operasi seperti union, intersection, difference, dan transformasi seperti translate, rotate, dan scale. Data dapat diimpor dari file DXF dan diekspor ke STL, OFF, serta format lainnya. Arsitektur terbukanya dan komunitas yang aktif menjadikannya pilihan yang kuat bagi pengembang yang mencari kemampuan pemodelan 3D secara programatik tanpa bergantung pada interaksi GUI.
Memulai dengan OpenSCAD
OpenSCAD tersedia sebagai binari pra-bangun untuk Linux, macOS, dan Windows dari situs web resminya. Untuk pengembang, kode sumber dihosting di GitHub, dan Anda dapat membangunnya dari sumber menggunakan CMake dan skrip build yang disediakan. Repositori resmi [GitHub openscad](https://github.com/openscad/openscad) mencakup petunjuk build terperinci untuk semua platform utama. Untuk memulai dengan cepat, unduh rilis terbaru, instal, dan buka editor untuk menulis skrip SCAD pertama Anda.
Instal OpenSCAD melalui Pengelola Paket
# Ubuntu/Debian
sudo apt install openscad
# macOS (Homebrew)
brew install --cask openscad
# Windows (Chocolatey)
choco install openscad
Geometri Padat Konstruktif (CSG)
Kekuatan utama OpenSCAD terletak pada dukungannya terhadap konstruktif solid geometry (CSG), yang memungkinkan penggabungan primitif 3D dasar menggunakan operasi boolean seperti union, intersection, dan difference. Pendekatan ini memastikan pemodelan yang tepat, aman terhadap non-manifold, cocok untuk teknik dan manufaktur. Misalnya, Anda dapat membuat silinder dengan lubang dengan mengurangkan silinder yang lebih kecil dari yang lebih besar. Operasi CSG didefinisikan secara deklaratif dalam skrip, memungkinkan parametrisasi dan revisi yang mudah. Hal ini menjadikan OpenSCAD ideal untuk merancang bagian mekanik, penutup, dan prototipe fungsional di mana akurasi dan reproduktifitas sangat penting.
Cara Membuat Silinder dengan Lubang Menggunakan CSG di OpenSCAD?
difference() {
cylinder(h = 20, r = 10);
cylinder(h = 25, r = 4, center = true);
}
Ekstrusi Garis Besar 2D
OpenSCAD mendukung ekstrusi kontur 2D yang diimpor dari file DXF atau didefinisikan langsung dalam kode SCAD. Teknik ini penting untuk membuat bentuk 3D kompleks dari profil 2D, seperti roda gigi, braket, atau enkapsulasi khusus. Anda dapat mengekstrusi jalur secara linier atau memutarnya di sekitar sumbu (melalui rotasi). Proses ekstrusi menghormati urutan vertex dan mendukung baik poligon 2D maupun jalur dengan lubang. Dikombinasikan dengan transformasi dan modul, ini memungkinkan generasi parametrik bagian seperti pipa, rangka, atau elemen arsitektur, menjadikan OpenSCAD alat yang kuat untuk desain teknis dan alur kerja fabrikasi.
Bagaimana Cara Mengekstrusi Poligon 2D menjadi Objek 3D?
linear_extrude(height = 10, center = true, convexity = 10)
polygon(points = [[0,0], [10,0], [5,10]]);
Pemodelan Parametrik & Konfigurasi
OpenSCAD unggul dalam pemodelan parametrik, di mana dimensi dan bentuk didefinisikan menggunakan variabel dan fungsi. Ini memungkinkan desain mudah disesuaikan dengan mengubah beberapa parameter, menjadikannya ideal untuk prototipe iteratif dan kustomisasi. Misalnya, Anda dapat mendefinisikan modul yang menerima parameter untuk lebar, tinggi, dan ketebalan, kemudian menggunakannya kembali di beberapa desain. Parameter juga dapat dipengaruhi oleh data eksternal, seperti nilai dari file CSV atau DXF, memungkinkan integrasi dengan alur data berbasis Python. Kemampuan ini mendukung desain generatif, di mana model beradaptasi secara otomatis dengan perubahan kebutuhan atau batasan.
Bagaimana Cara Mendefinisikan Modul Parametrik yang Dapat Digunakan Kembali?
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);
Integrasi Impor & Ekspor Data
OpenSCAD menyediakan dukungan kuat untuk mengimpor file DXF 2D dan mengekspor model 3D ke STL, OFF, dan format lainnya. Hal ini memudahkan integrasi dengan alat CAD/CAM, printer 3D, dan perangkat lunak simulasi. Impor DXF dapat menyertakan jalur untuk ekstrusi, sementara ekspor mendukung STL biner dan ASCII untuk pencetakan 3D. Selain itu, OpenSCAD dapat membaca parameter desain dari file DXF, memungkinkan alur kerja hibrida di mana geometri didefinisikan dalam alat eksternal tetapi disempurnakan secara programatik. Interoperabilitas ini, dikombinasikan dengan sifat berbasis skripnya, memungkinkan pengembang mengotomatisasi pembuatan model dan pemrosesan batch menggunakan Python atau skrip shell, menyederhanakan alur produksi.
Bagaimana Cara Mengimpor DXF dan Mengekstrusinya menjadi 3D?
linear_extrude(height = 5) {
import(file = "profile.dxf", layer = "outer");
}
