Добрый день.
По служебной необходимости встала задача написать собственное ПО для раскроя листового металла. Знает ли кто нибудь,как отобразить произвольный dxf-файл, созданный в Компасе на канве формы средствами Делфи? Лазания по интернету не привели ни к какому результату. |
в педе дипломную писал по оптимальной раскройке - есть наработки, возможно поделюсь, в личку все с контактами |
Буду благодарен тебе за любую помощь.Как духовно так и материально.
Проблема в том,что я уже почти месяц бьюсь,но никак не выходит прорисовать dxf-файл на форме. Мои контакты-icq-410490992,моб. 89195729692. в личку почему то не отправляется,сорри Добавлено спустя 12 минут 20 секунд: eLSe,в любом случае спасибо,что откликнулся Блин,не работает отправка в личку |
mr.Taiga
тут есть инженеры, они отклинутся - я думаю, у меня была задача, возможно не со всем прикладная - но с раскроем справлялась но к сожалению, с dxf-файлами и их форматами я не знаком. |
http://usa.autodesk.com/adsk/servlet/item?siteID=123112&id=12272454&linkID=10809853 _________________ Ин дер гросен фамилие нихт клювен клац-клац |
[quote="andy ice"] Спасибо,ссылка полезная,формат описан очень четко.Дальше попробую покопаться сам.Большое спасибо всем. |
mr.Taiga писал(а): Добрый день.
По служебной необходимости встала задача написать собственное ПО для раскроя листового металла. Знает ли кто нибудь,как отобразить произвольный dxf-файл, созданный в Компасе на канве формы средствами Делфи? Лазания по интернету не привели ни к какому результату. Компас при установке скорее всего регистрирует свои Ole объекты (Компас по сути набор COM серверов). Если планируется программу использовать совместно с компас, посмотрите какие OLE объекты доступны на компьютере с установленным Компасом... В этом случае вам не нужно будет разбивать голову над форматами файлов, а достаточно вставить OLE объект, в который вы сможете загрузить чертеж и испольховать API Компаса для манипуляции содержимым OLE контейнера. Вот документация, с описанием COM объектов и API компаса, есть примеры на Delphi и C++. http://support.ascon.ru/library/documentation/ |
Rik,Уже пробовал по этому методу.Экспортировал ActiveX компонент и его методами вызывал открытие. При этом при методе к сожалению невозможно открыть dxf-файл,зато почему то открывается закрытый frw-формат.При этом компас повисает в оперативе и всю ее пожирает.
Добавлено спустя 53 секунды: За ссылку спасибо,попозже погляжу |
mr.Taiga писал(а): Rik,Уже пробовал по этому методу.Экспортировал ActiveX компонент и его методами вызывал открытие. При этом при методе к сожалению невозможно открыть dxf-файл,зато почему то открывается закрытый frw-формат.При этом компас повисает в оперативе и всю ее пожирает.
Добавлено спустя 53 секунды: За ссылку спасибо,попозже погляжу Да, DXF не родной для компаса, его нужно через импорт... frw - фрагмент чертежа компас, как и с остальными родными для компаса форматами проблем никаких быть не должно, там где установлен компас, они могут быть добавлены хоть в Word, хоть в Delphi, когда-то при написании курсовой я фрагменты чертежей вставлял в Word, проблем не было. А вот почему виснет??? Может Компас поновее нужен или Delphi... |
из Тулы разработчики. Цена лицензии 17 евро
http://www.cadsofttools.ru/products/cad_image_dll.html ну и тут можно поглядеть Open Design Alliance (бесплатно) http://www.opendesign.com/guestfiles но с визуализацией видимо придется попыхтеть |
Написал письмо в cadsofttools.ru,посмотрим,что ответят.Поразмыслил насчет других форматов.Думаю ни один не подойдет,потому что,по все видимости,только dxf-файл хранит в себе координаты точек фигуры,именно они то мне и нужны.По ним CAD\CAM ретранслятор просчитывает станку с ЧПУ траекторию движения (резка,холостой ход).Скажу только одно: тот софт который шел со станком жутко неудобный и глючный _________________ Наношу пользу,причиняю добро. |
по экспериментировал чуть-чуть. Разрабатываю все на Perl, поэтому использовал его и библиотеку CAD-Drawing с OpenDWG toolkit
все читает и пишет в формате dxf use CAD::Drawing::IO::DWGI; $dxf = CAD::Drawing::IO::DWGI->new(); #чтение $dxf->loadfile("myvata.dxf"); $dxf->getentinit(); while(my($layer, $color, $type) = $dxf->getent()) { my $type = $dxf->entype($type); if($type eq "lines") { $line = $dxf->getLine(); } } #запись $dxf = CAD::Drawing::IO::DWGI->new(); $dxf->newfile(1); $dxf->getentinit(); $dxf->writeCircle({"pt"=>[$x, $y], "rad" => 1.125, "color" => 9}); $dxf->savefile("vatnaya-vata.dxf", 1); ну а чтобы визуализировать в принципе задача решаема задача тоже решена, CAD::Drawing::IO::Image возвращает обычный графический файл |
Ну тут все выглядит проще некуда.Вот еще бы надыбать такую же библиотеку для Дельфи
[url]cadsofttools.ru[/url] прислал письмо.цены мягко говоря не радуют.Дешевле будет самому попыхтеть. _________________ Наношу пользу,причиняю добро. |
Нашел замечательный программный продукт-Техтран,отечественная разработка.Идеален во всех аспектах.На днях приедет ключ к нему.Поддерживает гигантское количество постпроцессоров.Проблема в написании ПО отпала _________________ Наношу пользу,причиняю добро. |
|
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете голосовать в опросах Вы не можете вкладывать файлы Вы можете скачивать файлы |