Ketika menghitung biaya dapur baru, harganya sangat tinggi sehingga saya memutuskan untuk membuatnya sendiri karena harganya setengah dari harga. Untuk pelatihan, saya memutuskan untuk membuat desktop untuk diri saya sendiri. Memahami dengan cukup cepat: untuk membuat hal yang baik Anda perlu membuat model 3D. Ini akan memungkinkan kita pada tahap desain untuk melihat bagaimana furnitur akan terlihat dan berpikir tentang bagaimana perakitan akan terjadi di masa depan. Karena saya tidak melakukan pemodelan 3D, saya mulai mencari program yang lebih sederhana. Dan hal paling sederhana yang ditemukan SketchUp . Saat membuat model, saya terus-menerus harus mengedit model karena ukuran yang terus berubah. Dan setelah perubahan ketiga, muncul ide - untuk membuat model parameterisasi sehingga itu sendiri dihasilkan dengan ukuran yang tepat. SketchUp mendukung skrip Ruby dan artikel ini tentang apa yang saya lakukan.
Solusinya cukup sederhana - Saya membuat beberapa API yang memungkinkan Anda membuat objek 3D lembar chipboard dengan parameter yang diperlukan. Model selesai dirakit dari objek-objek ini, dan ukuran lembaran diunggah ke file terpisah untuk mentransfernya ke pusat potongan. Sebagai hasil dari operasi, saya menambahkan kemampuan untuk menentukan tepi untuk lembar. Plugin ini digunakan untuk mendesain lebih dari selusin produk yang berbeda dari chipboard. Dengan setiap proyek baru, plugin disempurnakan dan dimodifikasi, kegunaan ditingkatkan dan API ditingkatkan. Sebagai contoh, proyek terakhir adalah tabel alas. Dalam gambar, model + produk jadi (burung dan anjing untuk menarik perhatian :))

Merah adalah tepi 2 mm, ungu tepi 0,4 mm. Rak bawah tidak sampai akhir, karena ada baterai pemanas di dekat dinding. Meja adalah 4 cm di belakang dinding sehingga panas dari baterai pemanas naik dan memanaskan dinding ( secara umum, membuat furnitur sendiri sangat nyaman - Anda dapat membuatnya sesuai ukuran Anda ).
di sini adalah kode untuk membuatnya Instalasi
Unduh file Object3D.rbz
Luncurkan SketchUp
Buka Extension Manager (Window / Extension Manager)
Klik tombol "Instal Ekstensi" dan pilih file Object3D.rbz yang diunduh
Setelah itu, plugin meminta direktori tempat proyek akan disimpan. Yaitu jendela "Tentukan direktori dengan proyek" ditampilkan dan Anda perlu menentukan folder tempat Anda menyimpan proyek.
Sebagai hasilnya, kami memiliki ekstensi kami

Gunakan
Buka folder yang kami tentukan untuk menyimpan proyek. Folder ini dapat diubah di menu plugin

Buat direktori di folder dengan nama proyek kami. Dalam kasus saya, ini adalah "Locker in aula." Kemudian kita masuk ke direktori yang dibuat dan membuat file main.rb di mana kita membuat fungsi titik masuk
Kami memulai ulang SketchUp dan di menu plugin Anda akan melihat item dengan nama folder yang Anda buat. Sekarang Anda memilih item ini, hal berikut akan terjadi:
- membersihkan konsol Ruby
- hapus semua item dalam proyek saat ini
- memuat file main.rb dari direktori yang ditentukan
- fungsi memanggil object3D_main
Dalam fungsi object3D_main, Anda perlu membuat generasi model Anda. Anda dapat menyalin kode yang saya berikan di atas ke file main.rb dan kemudian loker saya akan dibuat.
API
File "core.rb"
Setiap fungsi mengembalikan objek Shasoft :: Object3D :: Object3D yang berisi metode untuk memindahkan objek dan memutarnya
Nama fungsi () - mengatur nama objek. Jangan abaikan mereka. Saat merakitnya bisa sangat membantu :)
Fungsi objek moveX , moveY , moveZ memungkinkan Anda untuk memindahkan objek di sepanjang sumbu yang sesuai.
Fungsi move (x, y, z) memungkinkan Anda untuk memindahkan objek di sepanjang tiga sumbu sekaligus
Fungsi objek rotateX , rotateY , rotateZ memungkinkan Anda memutar objek di sekitar sumbu yang sesuai.
Ada fungsi alias moveRed , moveGreen , moveBlue , rotateRed , rotateGreen , rotateBlue di mana sumbu X (merah), Y (hijau), Z (biru) dinamai berdasarkan warnanya di SketchUp. Mungkin seseorang akan lebih nyaman.
Setiap fungsi mengembalikan pointer ke objek itu sendiri. Ini memungkinkan Anda membuat rantai panggilan.
Fungsi objek set (dict, key, value) memungkinkan Anda untuk mengatur nilai atribut. dict - nama kamus, nama atribut kunci, nilai - nilai
Fungsi dari objek get (dict, key, value = nil) memungkinkan Anda untuk mendapatkan nilai atribut. dict - nama kamus, nama atribut kunci, nilai - nilai
Metode salin memungkinkan Anda untuk mendapatkan salinan objek (meskipun tidak bekerja dengan sangat stabil :))
Metode grup memungkinkan Anda untuk mendapatkan objek SketchUp :: Group standar.
Metode untuk membuat objek didefinisikan. Anda bisa melewati daftar objek Shasoft :: Object3D :: Object3D atau SketchUp :: Group sebagai parameter. Jika daftar parameter kosong, grup baru akan dibuat.
Ada juga fungsi yang memungkinkan Anda mendapatkan daftar objek (Skechup :: Group). Anda dapat menentukan nama kamus dan hanya objek yang memiliki kamus seperti itu yang akan dikembalikan. Secara khusus, ini adalah bagaimana saya memisahkan objek dari lembar chipboard dari yang lain. Saat membuat, saya menginstal kamus LDSP dimana kemudian dan menyaring semua objek di tempat kejadian.
File 2D_weght
File "ldsp.rb"
Fungsi bantu untuk membuat laci
hasil kerja

sebagai hasilnya, file csv berikutnya akan dihasilkan dengan kolom-kolom berikut
- A - Lebar
- B - Kedalaman
- C Jumlah bagian
- D - tepi dalam format D-long side, K-short side. Dalam hal ini mereka dicatat di kantor di mana saya memesan potongan bagian. Mungkin ini standarnya.
- E - tepi dalam format di mana Anda mengaturnya saat menghasilkan
- F - Nama semua bagian. Ini berguna saat membangun.

Kesimpulannya
Mendesain dan merakit sendiri furnitur menghemat uang sekitar 2 kali. Dan juga kesempatan untuk memasukkan perabotan pribadi Anda ke dalam lubang yang tidak standar di apartemen. Saya biasanya mengumpulkan furnitur pada konfirmasi 7x50 dari chipboard 16 mm

Jika ada latihan untuk konfirmasi

(dan keterampilan kecil) perakitan tidak membutuhkan banyak waktu.
Satu-satunya negatif adalah Anda bisa terlibat . Setelah desktop, saya sudah berkumpul: dapur, beberapa kandang (untuk burung yang sama ada di foto), rak (dinding dan lantai), lemari dan meja. Secara umum, ia "mengacaukan" semua tempat yang tidak digunakan di apartemen.
Unduh tautan ekstensi
Tautan ke halaman plugin