Бібліотека JavaScript для створення параметричних 2D та 3D CAD-проектів

Бібліотека САПР з відкритим вихідним кодом на JavaScript дозволяє програмістам створювати параметричні 2D та 3D-проекти. Створіть власний рендерер для 3D та 2D-геометрії за допомогою безкоштовного API.

Що таке JSCAD?

JSCAD — це безкоштовна бібліотека JavaScript з відкритим кодом, яка дозволяє розробникам програмного забезпечення створювати та маніпулювати 3D-моделями в середовищі браузера у власних JavaScript-додатках. Бібліотека розроблена для простоти використання та гнучкості, що робить її чудовим вибором для широкого кола застосувань. JSCAD надає набір інструментів та функцій для легкого створення складних моделей, а також ряд опцій налаштування для коригування зовнішнього вигляду та функціональності ваших моделей.

JSCAD — це потужний інструмент для створення 3D-моделей, які можна використовувати в широкому спектрі застосувань, від ігор та розваг до наукових досліджень та промислового дизайну. Бібліотека JSCAD підтримує широкий спектр форматів файлів, включаючи STL, OBJ та 3MF, що спрощує експорт ваших моделей для використання в інших програмних застосунках. Бібліотека дуже універсальна та дозволяє користувачам поєднувати різні форми та елементи для створення складних структур і моделей, що робить її універсальним інструментом для дизайнерів, інженерів та любителів.

JSCAD має дуже зручний інтерфейс і розроблений для максимальної спонтанності. Бібліотека надає низку опцій налаштування, що дозволяє користувачам налаштовувати зовнішній вигляд та функціональність своїх моделей відповідно до їхніх конкретних потреб та уподобань. Завдяки широкому спектру опцій налаштування, розширеним функціям та підтримці низки форматів файлів, JSCAD є потужним інструментом, який можна використовувати для широкого кола застосувань.

Previous Next

Початок роботи з JSCAD

Рекомендований спосіб встановлення – використання npm. Для безперебійної інсталяції скористайтеся наступною командою.

Встановіть JSCAD через npm

 npm install @jscad/modeling 

Ви також можете встановити його вручну; завантажте файли останньої версії безпосередньо з репозиторію GitHub.

Створення нового дизайну за допомогою JavaScript API

Бібліотека OpenCascade з відкритим кодом підтримує багатопотоковість для певних операцій. Бібліотека не забезпечує вбудованої підтримки багатопотоковості, оскільки JavaScript є однопотоковою мовою. Однак розробники можуть використовувати Web Workers у своїх застосунках для виконання певних завдань в окремому потоці, що може покращити продуктивність та швидкість реагування. У наступному прикладі показано, як використовувати Web Worker для виконання важкого обчислювального завдання в окремому потоці, зберігаючи при цьому адаптивність основного інтерфейсу користувача.

Як створити дизайн та експортувати його у формат STL за допомогою JavaScript API?

 const {CAG, CSG} = require('@jscad/csg');

// create a simple shape like a cube:

const cube = CSG.cube({
  center: [0, 0, 0],
  radius: 10
});

//export your design in a desired format:

const stlSerializer = require('@jscad/stl-serializer');
const stlData = stlSerializer.serialize(result);
console.log(stlData);

Конвертація формату дизайну в JavaScript-додатках

Бібліотека JSCAD з відкритим кодом надає розробникам програмного забезпечення можливість конвертувати формат будь-якого дизайну в інші підтримувані формати файлів. Бібліотека включає підтримку різних популярних форматів файлів, таких як STL, AMF, DXF, JSON, X3D, зображення SVG та багато інших. Щоб конвертувати формат існуючого файлу, спочатку потрібно завантажити існуючий файл і вибрати формати вихідних файлів. Дизайнами можна легко ділитися з іншими як вкладеннями до електронної пошти, повідомлень тощо.

Як завантажити дизайн та конвертувати його формат за допомогою JavaScript API?

const {CSG} = require('@jscad/modeling')
const {STL} = require('@jscad/stl-serializer')

// Load the design file in the desired format
const stlString = fs.readFileSync('design.stl', 'utf8')

//Convert the STL format to a JSCAD CSG object:

const design = STL.parse(stlString)
const stlString = STL.serialize(design)
fs.writeFileSync('manipulated_design.stl', stlString)

Трансформації фігур CAD за допомогою JavaScript-додатків

Бібліотека JSCAD дозволяє розробникам програмного забезпечення легко створювати 3D-фігури та моделі у власних JavaScript-додатках. Оригінальну фігуру можна трансформувати будь-яку кількість разів. Бібліотека надає набір функцій та можливостей для трансформації фігур, таких як поворот фігур на будь-який заданий кут навколо осей X, Y та Z, масштабування фігур на будь-який коефіцієнт, переміщення фігур в інше місце, вирівнювання або центрування фігур вздовж осей X, Y та Z, дзеркальне відображення фігур тощо.

Як виконати обертання фігури навколо однієї осі за допомогою JavaScript API?

const { cuboid } = require('@jscad/modeling').primitives
const { rotateX,rotateY,rotateZ } = require('@jscad/modeling').transforms
 
const myshape = cuboid({size: [5, 20, 5]})
let newshape = rotateX((Math.PI * 2 / 4), myshape)
newshape = rotateY((Math.PI * 2 / 24), newshape)
newshape = rotateZ((Math.PI * 2 / 12), newshape)
 Українська