1. Продукти
  2.   CAD
  3.   C++
  4.   LibreDWG

LibreDWG

 
 

Бібліотека C з відкритим кодом для керування файлами AutoCAD DWG

Створення, редагування, читання, маніпулювання та конвертація моделей AutoCAD DWG у файли SVG за допомогою C++ CAD API з відкритим кодом.

Що таке LibreDWG?

LibreDWG — це зручна бібліотека C, яка постачається безкоштовно та надзвичайно корисна для роботи з кресленнями AutoCAD DWG. DWG — це популярний формат файлів, створений AutoDesk ще в 1970-х роках для програм САПР, які тільки починали з'являтися. Хоча DWG є власним форматом, він все ще залишається основним вибором для багатьох підрядників. Ця бібліотека зручна для користувача та розроблена для надання API, який може допомогти розробникам програмного забезпечення у створенні програм, що працюють з файлами DWG.

Бібліотека має багато корисних функцій для роботи з файлами AutoCAD DWG. Ви можете відкривати та переглядати креслення DWG, створювати нові файли DWG, конвертувати їх у різні формати, змінювати їх на DXF та JSON, перетворювати DWG на SVG та Postscript, використовувати dwggrep для пошуку тексту, dwglayer для відображення шарів та багато іншого.

У бібліотеці розробники програмного забезпечення можуть вмикати або вимикати підтримку запису у форматі DWG. Спочатку ця функція вимкнена, але після її активації ви можете використовувати її для запису у форматі DWG. Конвертація більшості DWG у формат r2000 зазвичай проходить без проблем. Програма для читання DWG може обробляти різноманітні формати файлів, включаючи JSON, DXF, DXFB, GeoJSON, YAML, XML/OGR, GPX, SVG та PS.

Previous Next

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

Вам потрібно встановити основні інструменти розробки (компілятор C99, такий як gcc/clang, make, autoconf, automake та libtool). Створіть клон бібліотеки за допомогою наступної команди.

Клонування бібліотеки за допомогою наступної команди

 git clone git://git.sv.gnu.org/libredwg.git

Now change dir to libredwg folder created by git ( cd libredwg ) and issue following commands in terminal

Змінити каталог на папку libredwg

$ sh autogen.sh 
$ ./configure --enable-trace # (this will enable debugging messages) 
$ make 
$ sudo make install 
$ make check

Створення DWG в AutoCAD за допомогою бібліотеки C

Безкоштовна бібліотека LibreDWG C дозволяє розробникам програмного забезпечення створювати нові DWG-файли AutoCAD у власних програмах C. Після створення файлу ви можете вставляти різні типи об'єктів у креслення DWG, такі як таблиці, фігури, штрихування, камера, світло, лінія, сітка, багатовимірний текст, полілінія 2D, полілінія 3D, текст, таблиця, трасування та багато іншого. Бібліотека також підтримує вирівнювання для об'єктів, доступ та легке оновлення властивостей об'єктів. Засіб для створення DWG включає підтримку різних форматів вхідних даних, таких як DXF, DXFB та JSON.

Читання DWG AutoCAD через бібліотеку C

Бібліотека LibreDWG з відкритим кодом включає повну підтримку програмного доступу та читання файлів DWG AutoCAD у .NET-додатках лише за допомогою кількох рядків коду C. Зчитувач DWG підтримує різні формати виводу, такі як JSON, DXF, DXFB, GeoJSON. Пізніше також формати файлів YAML, XML/OGR, GPX, SVG та PS.

Як читати DWG у форматі AutoCAD через бібліотеку C?

 int error;
Dwg_Data dwg;
error = dwg_read_file(filename, &dwg);
if (!error)
{
    model_xmin = dwg_model_x_min(&dwg);
    model_ymin = dwg_model_y_min(&dwg);
    double dx = (dwg_model_x_max(&dwg) - dwg_model_x_min(&dwg));
    double dy = (dwg_model_y_max(&dwg) - dwg_model_y_min(&dwg));
    double scale_x = dx / (dwg_page_x_max(&dwg) - dwg_page_x_min(&dwg));
    double scale_y = dy / (dwg_page_y_max(&dwg) - dwg_page_y_min(&dwg));
    //...
}
dwg_free(&dwg);

Конвертувати файл DWG у SVG за допомогою бібліотеки C

SVG – це стандарт W3C для 2D-векторної графіки, який є дуже популярним. Бібліотека LibreDWG з відкритим кодом дозволяє розробникам програмного забезпечення конвертувати креслення AutoCAD DWG у формати файлів SVG за допомогою команд C. Щоб конвертувати файл SVG (масштабована векторна графіка), вам потрібно відкрити файл DWG та вивести файл SVG. Пам’ятайте, що бібліотека оброблятиме 2D-дані та 3D-контент з DWG, оскільки SVG підтримує лише 2-вимірні зображення.

 Українська