Есть ли библиотеки для разбора файлов AutoCAD? - PullRequest
10 голосов
/ 16 апреля 2010

Существуют ли библиотеки (желательно с открытым исходным кодом) для анализа файлов AutoCAD (DWG или DXF)?

Ответы [ 4 ]

9 голосов
/ 19 апреля 2014

Ну, Для формата файла DXF спецификация доступна онлайн, так что вы можете написать свой собственный анализатор для этого формата файла, документ можно найти здесь: http://images.autodesk.com/adsk/files/acad_dxf0.pdf

Но если вы не хотите, вы можете использовать libdxf библиотеку с открытым исходным кодом для анализа файлов dxf, но, по словам разработчика, это «незавершенное производство», вы можете найти его здесь: https://github.com/bert/libdxf или вы можете установить его в Ubuntu, используя команду:

sudo apt-get install libdxflib-dev

Также другая библиотека, предоставляемая coin3d (может использоваться отдельно), называется dime и, вероятно, та, которая используется freecad, может быть найдена здесь: https://bitbucket.org/Coin3D/dime Он также может быть установлен в Ubuntu с помощью следующей команды:

sudo apt-get install libdime-dev 

Для формата DWG вы можете использовать библиотеку libredwg из фонда с открытым исходным кодом, и вы можете найти ее здесь: http://www.gnu.org/software/libredwg/

Но учтите, что согласно Википедии у нее есть собственные проблемы с лицензированием. http://en.wikipedia.org/wiki/LibreDWG

Доступен ветвь libredwg под именем libDWG, он может читать Форматы файлов DWG R13, R14, R2000 и R2004 и находится по адресу: http://libdwg.sourceforge.net/en/ Я протестировал библиотеку, и проблема в том, что большинство примеров файлов в Интернете имеют более новую версию, чем может загрузить библиотека, что не очень удобно.

Другая хорошая страница (с некоторыми примерами кода) о том, как читать файлы autocad, может быть найдена на веб-сайте ibm здесь: http://www.ibm.com/developerworks/opensource/library/os-autocad/

Суть в том, что dxf - лучший вариант, поскольку он открыт и может поддерживаться, поддержка dwg не может быть легко осуществлена.

6 голосов
/ 17 апреля 2010

Дубликат (или, по крайней мере, связанный с) Библиотека рисования cad с открытым исходным кодом (dwg) в C # & .Net CAD, которая может читать / записывать файлы dxf / dwg

Нет ничего доступного для бесплатного анализа DWG, который я бы посчитал надежным. Open Design Alliance, как правило, дешевле и работает на большем количестве операционных систем, чем AutoDesk RealDWG. У ODA есть ценовой уровень для стартапов, которые еще не отправляют код - RealDWG - нет. И ODA, и AutoDesk предлагают поддержку на форумах - вы должны быть участником ODA, но форумы AutoDesk находятся по адресу http://discussion.autodesk.com/forums/, где вы можете присоединиться бесплатно.

DXF - это формат текстового файла (похожий на XML), который вы можете анализировать с любыми данными - если вы знаете, что ищете. Возможно, вам больше повезет с поиском библиотеки для этого (я не рассматривал ее), но это потребует конвертации из формата DWG. Обратите внимание, что существуют различные версии формата DXF

Вы можете попробовать Autodesk DWG Trueview (бесплатно), но это программа просмотра для конечных пользователей - она ​​официально не предлагает API. В прошлом некоторые люди имели разную степень успеха в автоматизации. Я не пробовал себя и сильно подозреваю, что последние версии были закалены против этого.

В конечном счете, если вы работаете с известными клиентами, которые, вероятно, будут настаивать или, по крайней мере, воздерживаться от отсутствия «официальных» библиотек AutoCAD и «Доверенной DWG» БС, которая идет с ним, вам может потребоваться инвестировать в членство в сети разработчиков Autodesk.

Как давний конечный пользователь, я могу сказать, что разработчики в ODA более восприимчивы к сообщениям об ошибках, чем AutoCAD.

0 голосов
/ 04 декабря 2012

Библиотека Ивана САПР очень хорошо работает с DWG R15, R18, R21 и R24. Я нашел это на www.ivancad.com

0 голосов
/ 16 апреля 2010

Не думайте, что вы найдете что-то лучше, чем DWGdirect. Смотри здесь

http://www.opendwg.org/

и конкретно здесь:

http://www.opendesign.com/the_oda_platform/dwgdirect

...