2 poin oleh GN⁺ 2025-11-25 | Belum ada komentar. | Bagikan ke WhatsApp
  • µcad adalah bahasa pemrograman untuk CAD open-source yang diimplementasikan dengan Rust, serta merupakan sistem geometri berbasis teks yang mendefinisikan sketsa 2D dan objek 3D lewat kode lalu mengekspornya ke STL·SVG
  • Di pusat bahasanya terdapat objek geometri parametrik, dengan struktur yang menggabungkan bentuk dasar melalui operasi boolean untuk membuat bentuk kompleks dan merendernya ke format untuk pencetakan 3D·pemesinan CNC
  • Menggunakan sistem tipe statis dan literal Quantity berbasis satuan untuk mendefinisikan model dengan nilai seperti 50mm, 10°, 50%, serta menyediakan sistem tipe yang menyusun pohon model geometri melalui tipe Models
  • Melalui modul·fungsi·workbench part·sintaks use, pustaka standar seperti std::geo2d·std::geo3d, serta fitur std::import untuk mengambil data TOML, µcad membangun kode desain yang dapat digunakan ulang dan pemodelan berbasis data
  • Ini adalah proyek yang dapat dijadikan referensi oleh pengguna yang menginginkan alur kerja CAD bergaya pemrograman, dengan contoh·dokumentasi·materi live coding yang disediakan bersama

Ikhtisar µcad

  • µcad adalah bahasa pemrograman CAD open-source untuk mendefinisikan dan membuat sketsa 2D serta objek 3D lewat kode
    • Konsep intinya adalah pemodelan geometri parametrik
  • Dengan menggabungkan bentuk dasar untuk membuat bentuk kompleks, hasilnya dapat dirender ke STL·SVG untuk digunakan dalam pencetakan 3D atau pekerjaan CNC

Desain bahasa dan pendekatan pemodelan

  • µcad adalah bahasa pemodelan parametrik yang menyusun struktur model dengan definisi geometri berparameter sebagai pusatnya
    • Bentuk dideklarasikan lewat kode, dan berbagai variasi dapat dibuat hanya dengan mengubah parameternya
  • Sphere, Cube, Cylinder dan lainnya dapat disintesis melalui kombinasi boolean, lalu membentuk geometri 3D melalui revolve, array, dan transformasi
  • Melalui contoh seperti CsgCube·Spirograph·Gears·Dome, µcad menunjukkan berbagai pola pemodelan seperti pembuatan 3D berbasis sketsa 2D, pembuatan struktur berulang, dan profil roda gigi

Sistem tipe dan literal satuan

  • µcad menggunakan sistem tipe statis dan variabel bekerja secara immutable
  • Melalui tipe Quantity, satuan seperti mm, °, % dapat digunakan langsung untuk menyusun model
    • Notasi seperti 10°·4m²·50% dapat dipakai apa adanya sebagai parameter model
  • Tipe Models adalah struktur yang merepresentasikan pohon model geometri, memuat struktur node dari model CAD berbasis kode

Sistem modul dan pustaka standar

  • Dengan komposisi modul menggunakan mod, use, fn, part, rancangan besar dapat dipecah menjadi beberapa unit kode
  • Pustaka standar seperti std::geo2d, std::geo3d, std::math, std::ops mendukung operasi geometri·matematika·matriks·penyusunan sketsa
  • part digunakan sebagai unit untuk membuat dan mentransformasikan sketsa serta part 3D

Impor data dan debugging

  • Dengan std::import, parameter dapat diambil dari file TOML lalu diterapkan ke model
    • Cara ini memudahkan memasukkan spesifikasi komponen siap pakai ke dalam model
  • Nilai yang diimpor dapat diverifikasi menggunakan std::debug::assert_eq dan sejenisnya

Toolchain dan instalasi

  • Menjalankan dan merender model dilakukan dengan alat CLI berbasis Rust microcad-cli
    • Instalasi dengan cargo install microcad-cli
    • Saat ini masih berada pada tahap alpha dan fitur terus ditambahkan
  • Hasil render dapat divisualisasikan melalui microcad-viewer
  • Pengembangan repositori berlangsung di codeberg.org dan distribusinya melalui crates.io

Contoh dan materi live coding

  • Berbagai contoh seperti Spirograph, Lego Bricks, Gears, Dome dipublikasikan di blog resmi
    • Menyediakan contoh penggunaan CAD pemrograman seperti pembuatan profil roda gigi, pemodelan spirograph, dan pembuatan struktur kubah
  • Semua contoh disediakan bersama kode dan video live coding sehingga cara penggunaan bahasa dapat dipahami secara bertahap

Status proyek

  • Proyek ini masih dalam tahap awal dan terus dikembangkan
  • Dokumentasi “The µcad book” sedang disusun untuk menata keseluruhan bahasa secara sistematis

Belum ada komentar.

Belum ada komentar.