Pustaka Node.js Gratis untuk Membuat Sketsa & Mengekspor ke DWG
Perpustakaan Pemodel CAD 2D dan 3D Node.js Sumber Terbuka memungkinkan untuk Membuat, Mengedit, dan Mengonversi sketsa 2D ke STL, DWG & SVG Secara Terprogram
Apa itu JSketcher Library?
jSketcher adalah library Node.js yang canggih yang dirancang untuk menyediakan API yang sederhana namun canggih untuk membuat, mengedit, dan mengekspor sketsa langsung di dalam aplikasi web Anda. Dibuat dengan mempertimbangkan kinerja dan kemudahan penggunaan, library ini memanfaatkan sifat asinkron Node.js untuk menangani tugas menggambar interaktif secara efisien. JSketcher adalah library JavaScript ringan dan sumber terbuka yang dirancang untuk membuat dan memanipulasi sketsa 2D secara terprogram. Library ini menyediakan API yang sederhana dan intuitif untuk menggambar bentuk, garis, dan kurva, menjadikannya pilihan yang sangat baik bagi pengembang yang perlu membuat diagram atau sketsa secara dinamis. Proyek ini dikelola di GitHub, menerima kontribusi dan umpan balik dari komunitas, menjadikannya pilihan yang sangat baik bagi pengembang yang menghargai inovasi sumber terbuka.
JSketcher menyediakan antarmuka yang ramah bagi pengembang yang memudahkan pengaturan dan pengelolaan kanvas gambar. Pustaka ini menyediakan alat bawaan untuk menggambar dengan tangan bebas, pembuatan bentuk (misalnya, persegi panjang, lingkaran), penyisipan teks, dan banyak lagi. Pustaka ini mencakup operasi geometri tingkat lanjut seperti perpotongan, offset, dan transformasi (misalnya, penskalaan, rotasi, dan translasi). Fitur-fitur ini memungkinkan pembuatan diagram yang rumit dengan mudah. Pustaka ini sangat dapat diperluas, yang memungkinkan pengembang untuk menambahkan bentuk, alat, dan fungsi khusus sesuai kebutuhan. Baik Anda membuat alat pendidikan, papan tulis kolaboratif, atau platform desain kreatif, jSketcher menawarkan solusi yang tangguh, fleksibel, dan modular untuk memicu kreativitas proyek Anda.
Memulai dengan JSketcher
Cara yang disarankan untuk menginstal JSketcher adalah menggunakan npm. Gunakan perintah berikut untuk instalasi yang lancar.
Instal JSketcher melalui npm
npm install jsketcher
Anda juga dapat menginstalnya secara manual; unduh file rilis terbaru langsung dari repositori GitHub.
Buat sketsa sederhana melalui JavaScript
Perpustakaan JSketcher menyediakan API yang bersih dan mudah digunakan yang memungkinkan pengembang perangkat lunak membuat sketsa dengan kode minimal. Pustaka ini dirancang agar mudah digunakan oleh pemula sekaligus menawarkan fitur-fitur canggih bagi pengembang berpengalaman. Contoh berikut menunjukkan cara pengembang perangkat lunak dapat membuat sketsa baru, menambahkan lingkaran dan persegi panjang, lalu mengekspor sketsa sebagai string SVG.
Bagaimana Cara Membuat Sketsa Baru dan Menggambar Bentuk Dasar di dalam Aplikasi Node.js?
const { Sketch, Shapes } = require('jsketcher');
// Create a new sketch
const sketch = new Sketch();
// Add a circle
const circle = Shapes.circle(50, 50, 30); // (x, y, radius)
sketch.add(circle);
// Add a rectangle
const rectangle = Shapes.rectangle(100, 100, 80, 40); // (x, y, width, height)
sketch.add(rectangle);
// Export the sketch as SVG
const svg = sketch.toSVG();
console.log(svg);
Mengekspor dan Menyimpan Sketsa di Node.js
Pustaka JSketcher sumber terbuka memudahkan pengembang perangkat lunak untuk memuat dan mengekspor sketsa CAD mereka ke berbagai format file lain yang didukung hanya dengan beberapa baris kode. Pustaka ini memungkinkan Anda mengekspor sketsa dalam berbagai format, termasuk PDF, SVG, dan JSON. Hal ini memudahkan integrasi pustaka dengan alat lain atau menampilkan sketsa dalam aplikasi web atau bermanfaat untuk aplikasi yang memerlukan penyimpanan persisten atau kemampuan berbagi. Contoh berikut menunjukkan cara membuat poligon dan mengekspor sketsa sebagai objek JSON.
Bagaimana Cara Membuat Poligon dan Mengekspor Sketsa sebagai Objek JSON di dalam Node.js?
const { Sketch, Shapes } = require('jsketcher');
// Create a new sketch
const sketch = new Sketch();
// Add a polygon
const polygon = Shapes.polygon([
[10, 10],
[50, 30],
[30, 70],
[5, 50]
]);
sketch.add(polygon);
// Export the sketch as JSON
const json = sketch.toJSON();
console.log(json);
Kolaborasi Real-Time
Sementara jSketcher menangani fungsionalitas inti menggambar, integrasinya dengan Node.js menjadikannya kandidat yang hebat untuk aplikasi kolaboratif real-time. Dengan menggabungkannya dengan pustaka seperti Socket.io, Anda dapat menyiarkan acara menggambar ke banyak pengguna, yang memungkinkan pengalaman papan tulis bersama. Cuplikan sisi server berikut menyiapkan aplikasi ekspres dasar yang menggunakan Socket.io untuk menyampaikan acara menggambar, yang membuka jalan bagi sketsa kolaboratif multi-pengguna.
Bagaimana cara mengintegrasikan pustaka jSketcher dengan Socket.io?
const express = require('express');
const http = require('http');
const socketIO = require('socket.io');
const JSketcher = require('jsketcher');
const app = express();
const server = http.createServer(app);
const io = socketIO(server);
app.use(express.static('public')); // Serve client-side files
// When a client connects, set up real-time event broadcasting
io.on('connection', (socket) => {
console.log('A client connected.');
// Relay drawing data to all clients except the sender
socket.on('drawing', (data) => {
socket.broadcast.emit('drawing', data);
});
socket.on('disconnect', () => {
console.log('A client disconnected.');
});
});
server.listen(3000, () => {
console.log('Server is running on port 3000.');
});
Operasi Geometris Lanjutan & Kustomisasi Bentuk
Pustaka JSketcher sumber terbuka telah menyertakan operasi geometris lanjutan yang memungkinkan pengembang perangkat lunak untuk melakukan operasi, seperti perpotongan, offset, dan transformasi (misalnya, penskalaan, rotasi, dan translasi). Fitur-fitur ini memungkinkan pembuatan diagram yang rumit dengan mudah. Selain itu, untuk aplikasi CAD, kustomisasi adalah kuncinya. jSketcher memungkinkan pengembang untuk menambahkan bentuk dengan parameter terperinci—seperti dimensi, koordinat, dan atribut warna—yang memastikan bahwa setiap elemen dapat dikontrol secara tepat.