@DWS11

Как получить фигуры из dxf?

Всем привет!
Подскажите, существуют ли готовые решения для получения фигур из dxf с помощью (тут абсолютно любой ЯП)?
По сути нужно просто понять, что нарисовано, круг, трапеция, квадрат... Т.е. какие-то простые замкнутые геометрические объекты.
  • Вопрос задан
  • 205 просмотров
Решения вопроса 1
avc
@avc
Инженер и программист
Готовые решения - это API AutoCAD и всех его многочисленных клонов (на базе ODA Teigha). Если устраивает писать не отдельную программу, а плагин под любой этот CAD, то это будет самый простой вариант. Есть C++ API (ObjectARX), есть под .Net и, например, C# . Если в системе установлен именно AutoCAD - есть такая штука как AcCoreConsole с помощью которой можно вызывать API автокада из внешних программ. Ну и наконец есть дорогущие библиотеки от Autodesk (RealDWG) и ODA (Teigha) для полноценной работы с DWG и DXF без установки каких-либо CAD.
В каких-то очень простых случаях можно прочитать и распарсить сам файл DXF - обычно это простой и понятный текст (хотя DXF теоретически может быть бинарным)
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
@AlexSku
не буду отвечать из-за модератора
Возможно, сконвертировать в emf, а тот прочитать как список команд.
Аналогично может получится и через svg, но надо искать способы извлечения команд.
Ответ написан
Комментировать
@Iv_and_S
"фигур из dxf" - это неоднозначное определение того что у вас есть.
если условно, круг нарисован одним примитивом, тогда:
через "ваш CAD " API можно и так получить тип объекта (имеется ввиду тип CAD классификации), без каких либо проблем.
обычно что то типо:
id.ObjectClass.DxfName == "CIRCLE"
или
RXObject.GetClass(typeof(Line)
однако, в случае если наш условный круг, состоит из 100500 отрезков, образующих круг такой способ конечно не подойдет.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы