Прочитать файл Компаса из Delphi

Автор Epik, 01.10.09, 10:11:24

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

Epik

Друзья! Мне нужно написать в Delphi программу, которая бы могла распознавать файлы типа Компас-фрагмент, а именно: анализировала бы, какие именно примитивы использованы во фрагменте (прямая, окружность, эллипс и т.д.) и считывала координаты их узловых точек. Пожалуйста, посоветуйте, как это сделать. Очень прошу ответить как можно более развернуто: с API и разработкой для Компаса я прежде дела не имел.

Троицкий

Цитата: Epik от 01.10.09, 10:11:24
Друзья! Мне нужно написать в Delphi программу, которая бы могла распознавать файлы типа Компас-фрагмент, а именно: анализировала бы, какие именно примитивы использованы во фрагменте (прямая, окружность, эллипс и т.д.) и считывала координаты их узловых точек. Пожалуйста, посоветуйте, как это сделать. Очень прошу ответить как можно более развернуто: с API и разработкой для Компаса я прежде дела не имел.
Первый вопрос - приложение должно работать независимо от Компаса или нет? Если независимо, то дело плохо, так как Вам придется вскрывать формат frw-файла или каким-то образом найти его описание. Тут уж проще сохранить в dxf и его разбирать, благо это текстовый и очень простой формат
Если же через Компас, то все проще: из Delphi поднимаем Компас, загружаем frw, цикл по объектам и т.д. Для начала помотрите мою методичику http://edu.ascon.ru/source/files/methods/rtw.zip, там по шагам разжевано, как из Delphi прицепиться  к Компасу.

Epik

В том-то все и дело, что прога должна работать независимо. Но dxf - это, похоже, выход! Огромное спасибо, Троицкий! Сейчас попробовал сохранить фрагмент в этом формате и глянуть в блокноте. Вроде можно разобраться. Уже гуглю на предмет синтаксиса файлов dxf. Буду благодарен, если Вы посоветуете какие-либо руководства на эту тему.

Троицкий

Цитата: Epik от 05.10.09, 22:17:03
В том-то все и дело, что прога должна работать независимо. Но dxf - это, похоже, выход! Огромное спасибо, Троицкий! Сейчас попробовал сохранить фрагмент в этом формате и глянуть в блокноте. Вроде можно разобраться. Уже гуглю на предмет синтаксиса файлов dxf. Буду благодарен, если Вы посоветуете какие-либо руководства на эту тему.
Добольно давно выходила книжка "Д.Джамп, AutoCAD Программирование, 1992", вот там очень подробно расписан синтаксис dxf. Кроме того, есть компонент для Delphi: http://www.softsklad.ru/codings/delphis/4794prog.html. Удачи!   

basilcat

Есть с экспортом в Delphi.
Смотри мой сайт, там есть программа, которая читает файлы dxf в мой CAD правда для SolidWorks 1.0 но там полные алгоритмы и имея структуру Dxf любой версии, легко напишешь для твоих нужд (и пишет из него) и строит линии, ARC, Circle и т.д. (www.basil-cat.narod.ru) Если что то пиши, помогу чем смогу в том числе и библиотекой  (basil_cat@ukr.net).