Нужен совет по экспорту dxf
| Правила | Регистрация | Пользователи | Сообщения за день |  Справка по форуму | Файлообменник |

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Нужен совет по экспорту dxf

Нужен совет по экспорту dxf

Ответ
Поиск в этой теме
Непрочитано 24.01.2008, 21:57 #1
Нужен совет по экспорту dxf
Hornet
 
Регистрация: 24.01.2008
Сообщений: 6

Такая проблема: Пишется программа для рисования в 2D и 3D печатных плат с элементами на C# под .net используеться DirectX 9.0c SDK, мне сказали написать плпгин для этой программы который бы сохранял ее 3D плату в *.dxf, чтобы автокад мог прочитать. Требуеться писать на C# под .net. Не подскажите где почитать про это и может есть готовые библиотеки? Первый раз сталкиваюсь с этим, тема для меня новая. Может что посоветуете?
Просмотров: 11620
 
Непрочитано 24.01.2008, 22:38
#2
Александр Бауск

FEA/CAD/МКЭ/САПР
 
Регистрация: 20.03.2007
48,38°:35,03°
Сообщений: 1,056
Отправить сообщение для Александр Бауск с помощью Skype™


О Бог мой. C# -- новая тема? Или что? Текстовый ввод-вывод?
Александр Бауск вне форума  
 
Непрочитано 25.01.2008, 00:33
#3
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,377


Александр Бауск, ну лично для меня C# тоже новая тема
По основному вопросу: если бы разговор шел про AutoCAD, то выполнить из-под него экспорт готового чертежа в принципе проблемы не составляет. А так... Так тут вряд ли можно помочь, кроме как отправить в http://msdn.microsoft.com/library/rus/ и там в поиск...
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 25.01.2008, 00:41
#4
Александр Бауск

FEA/CAD/МКЭ/САПР
 
Регистрация: 20.03.2007
48,38°:35,03°
Сообщений: 1,056
Отправить сообщение для Александр Бауск с помощью Skype™


>ну лично для меня C# тоже новая тема
Для меня тоже

>как отправить в http://msdn.microsoft.com/library/rus/ и там в поиск...

Ну так я о чем и говорю -- если человек даже языка не знает -- чего он сюда пришел? Что он тут рассчитывает услышать? Т.е. не в смысле "Как, вы не знаете? А мы в Гадюкино уже до дыр заюзали!", а в смысле "А чё спросить-то хотите?".

Последний раз редактировалось Александр Бауск, 25.01.2008 в 00:55.
Александр Бауск вне форума  
 
Непрочитано 25.01.2008, 00:45
#5
Александр Бауск

FEA/CAD/МКЭ/САПР
 
Регистрация: 20.03.2007
48,38°:35,03°
Сообщений: 1,056
Отправить сообщение для Александр Бауск с помощью Skype™


Если по сути:
dxf -- текстовый формат. Спецификации на него есть в интернете.
Единственная задача вашего плагина -- получить через свои плагиновские каналы данные о модели платы (чем она там отрисована? Линиями-точками-полигонами?) и записать их в текстовый файл (попутно запросив путь) согласно данным спецификации.
Александр Бауск вне форума  
 
Автор темы   Непрочитано 25.01.2008, 10:37
#6
Hornet


 
Регистрация: 24.01.2008
Сообщений: 6


спасибо за советы.. Я только начал вообще програмирование изучать... просто сказали если реализую это то пару экзаменов поставят... простите за наглость а ссылок случайно нет на спецификации по формату....
Hornet вне форума  
 
Непрочитано 25.01.2008, 10:43
#7
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,377


http://ru.wikipedia.org/wiki/DXF
http://usa.autodesk.com/adsk/servlet...cation&x=0&y=0
http://www.google.com/search?hl=ru&r...1%81%D0%BA&lr=
http://niac.natm.ru/graphinfo.nsf/b2...b!OpenDocument
Если есть AutoCAD, то можно вскрыть его справку для разработчиков и внимательно ее прочесть.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 25.01.2008, 11:09
#8
Hornet


 
Регистрация: 24.01.2008
Сообщений: 6


Спасибо, сейчас как раз ставлю 2008...
Hornet вне форума  
 
Непрочитано 25.01.2008, 11:45
#9
Zouss


 
Регистрация: 14.03.2006
Сообщений: 863


написать несколько процедур, каждая из которых будет исполнять dxf описание примитива определенного типа в принципе несложно
труднее с теми секциями, где идет описание настроек, таблиц слоев, блоков и т.п. - там просто очень много параметров... можно конечно схитрить, сохраняем пустой (без примитивов) файл acad в формате dxf
ваша прога тупо пишет в текстовый файл все строки до комбинации
SECTION
2
ENTITIES
0
затем честно разработанные вами функции прописывают dxf описания линий, окружностей и прочего что там ваша прога будет рисовать, и заканчивается все это комбинацией
ENDSEC
0
EOF

еще, насколько я помню, acad может импортировать неполные dxf, тольк степень неполноты незнаю какая может быть
Zouss вне форума  
 
Автор темы   Непрочитано 25.01.2008, 12:39
#10
Hornet


 
Регистрация: 24.01.2008
Сообщений: 6


СПС за совет буду пробовать....
Я вот в инете пошарил и нашол dll на С# .net для конвертирования из Метафайла GDI+ в dfx, но там 2D может кто для 3D видел похожее? или такое не может существовать?
Hornet вне форума  
 
Автор темы   Непрочитано 25.01.2008, 12:40
#11
Hornet


 
Регистрация: 24.01.2008
Сообщений: 6


http://www.cadsofttools.ru/products/...port_.net.html вот ссылка если кому интересно, там еще и на импорт есть...
Hornet вне форума  
 
Непрочитано 26.01.2008, 01:55
#12
zamtmn

КИПиА
 
Регистрация: 21.03.2005
Tyumen
Сообщений: 1,352
<phrase 1=


>>Hornet
Для начала определись какой dxf тебе надо 12 или 2000 и более поздние.
12 - отсутствие веса линий и многострочного текста. прост, при экспорте можно не морочится с некоторыми параметрами например handle примитивов - акад присвоит сам
2000 - сложнее, хэндлы обязательны
Соглашусь с Zouss - проще всего таскать со своей программой пустой dxf созданый в автокаде, и при экспорте вписывать в него в нужные места свои примитивы. т.е. в таблицу блоков, слоев, стилей текста, секцию ENTITIES и т.д.. Это в случае если ввашей программе структура графических объектов похожана автокадовскую, иначе еще придется свои объекты "выразить" через автокадовские.
DXF хоть и открытый формат, но с версии 2000 его структура сильно привязана к внутренней структуре автокада. доступные описания формата помогают только при его импорте, экспорт в dxf нигде не документирован

>>Пишется программа для рисования в 2D и 3D печатных плат с элементами на...
гденнибудь можно ее глянуть? интересуюсь подобными вещами))

Последний раз редактировалось zamtmn, 26.01.2008 в 02:59.
zamtmn вне форума  
 
Автор темы   Непрочитано 26.01.2008, 14:42
#13
Hornet


 
Регистрация: 24.01.2008
Сообщений: 6


СПС за совет к сожелению не разбирался еще как графика прописываеться... знаю что на 9 ДХ и что надо 3Д объект передать в автокад из нее. А прога сама простая.. На зываеться она у парней дипломный проект как напишут то я выложу, если надо..
Hornet вне форума  
 
Непрочитано 29.01.2008, 12:32
#14
veitmen


 
Регистрация: 29.01.2008
Сообщений: 5


Привет всем. )

Цитата:
гденнибудь можно ее глянуть? интересуюсь подобными вещами))
Я думаю пока не дадим.) Но если интересуешься чем то конкретным, то спрашивай.)

Вопрос в том, не встречал ли кто нибудь подобных библиотек на C# для импорта из DX в другие форматы(не только dxf), которые кушают большинствао CAD/CAE систем. Писать то с нуля не хоттся.)

Вот в принципе и весь вопрос.)

Если будем писать сами, то вроде все есть. Спецификацию читай, да создавай файл, в соответсвии со структурой... Где мы уже будем спрашивать о непонятных вещах в структуре dxf.)

Цитата:
DXF хоть и открытый формат, но с версии 2000 его структура сильно привязана к внутренней структуре автокада. доступные описания формата помогают только при его импорте, экспорт в dxf нигде не документирован
Вот это и пугает немного... А 12 версия уж как то слаба слишком, хотя может и ее заюзаем...

В принципе в DX объект строится полигонами... Т.е. есть вершины, их количество кратно 3... Конечно есть функции для рисования сложных объектов... Но в итоге мы опять получаем полигоны. Как в dxf хранятся объекты? Это еще один вопрос, до чтения спецификации... )

Последний раз редактировалось veitmen, 29.01.2008 в 12:40.
veitmen вне форума  
 
Непрочитано 29.01.2008, 14:01
#15
zamtmn

КИПиА
 
Регистрация: 21.03.2005
Tyumen
Сообщений: 1,352
<phrase 1=


>>Я думаю пока не дадим.) Но если интересуешься чем то конкретным, то спрашивай.)
интересует - это просто диплом, или будет закоченная программа для реального применения? просто сам пытаюсь делать электротехнический сапр

>>Писать то с нуля не хоттся.)
в случае использования dxf12 сложность написания своего экспорта <= сложности прикручивания чужой либы

>>В принципе в DX объект строится полигонами... Т.е. есть вершины, их количество кратно 3... Конечно есть функции для рисования сложных объектов... Но в итоге мы опять получаем полигоны.

Экспорт полигонов не имеет смысла, зачем нужна в акаде печатная плата состоящая из треугольников? экспортировать нужно объектами - дорожки, отверстия, контактные площадки.. и тюпю

>> Как в dxf хранятся объекты? Это еще один вопрос, до чтения спецификации... )
вопрос отпадет сам собой после прочтения спецификации
zamtmn вне форума  
 
Непрочитано 29.01.2008, 15:20
#16
veitmen


 
Регистрация: 29.01.2008
Сообщений: 5


Цитата:
Экспорт полигонов не имеет смысла, зачем нужна в акаде печатная плата состоящая из треугольников? экспортировать нужно объектами - дорожки, отверстия, контактные площадки.. и тюпю
Но это все, есть объекты которые отрисовывает DX. Т.е., понятно что в проге мы работаем с объектами, но DX рисует по вершинам. Мне надо передать плату в 3D виде, т.е. необходимо знать вершины каждого полигона, у каждого объекта(объекты: резисторы, конденсаторы и т.д. у каждого есть своя 3D модель, которая описывается полигонами). 3D отображение по другому я не знаю как передавать. Может быть в dfx есть свои уже готовые объекты(тор, куб и т.д.), но мне они не нужны, мне нужны вершины. Передача каждого объекта, есть передача вершин.

Цитата:
>> Как в dxf хранятся объекты? Это еще один вопрос, до чтения спецификации... )
вопрос отпадет сам собой после прочтения спецификации
Не спорю... Но пока еще читать не начал.)

Цитата:
>>Писать то с нуля не хоттся.)
в случае использования dxf12 сложность написания своего экспорта <= сложности прикручивания чужой либы
Да, что не идет ни в какое сравнение со сложностью написания своей либы.

Цитата:
>>Я думаю пока не дадим.) Но если интересуешься чем то конкретным, то спрашивай.)
интересует - это просто диплом, или будет закоченная программа для реального применения? просто сам пытаюсь делать электротехнический сапр
Это будет готовая прога, единственное что будет, так это патент на нее. Сама прога коммерчески использоваться не будет. Это останется как инструмент для обучения на нашей кафедре, т.е использоваться она конечно будет, но только для обрзовательных целей.)

Какую САПР делаешЬ?
veitmen вне форума  
 
Непрочитано 29.01.2008, 18:17
#17
Zouss


 
Регистрация: 14.03.2006
Сообщений: 863


veitmen, а зачем в экспорте 3d модели резисторов?
по моему главнее передать разводку печатной платы в dxf для дальнейшей обработки на ЧПУ-приблудах, т.е. результат от использования вашей проги
Zouss вне форума  
 
Непрочитано 29.01.2008, 22:08
#18
zamtmn

КИПиА
 
Регистрация: 21.03.2005
Tyumen
Сообщений: 1,352
<phrase 1=


veitmen
>>Передача каждого объекта, есть передача вершин
да, все объекты в конечном итоге состоят из элементарных объектов. я про то что не набо забывать группировать эти элементарные объекты в объекты более высокого уровня при экспорте. Особой разницы нет какой графический апи вы используете d3d, ogl или еще какой. на экспорт это не повлияет.

>>Не спорю... Но пока еще читать не начал.)
советую приобрести книгу Полещука "autocad в подлиннике" - там приведены dxf коды графических примитивов автокада на русском языке

>>Какую САПР делаешЬ?
редактор электрических схем
zamtmn вне форума  
 
Непрочитано 30.01.2008, 10:52
#19
veitmen


 
Регистрация: 29.01.2008
Сообщений: 5


Цитата:
Сообщение от Zouss Посмотреть сообщение
veitmen, а зачем в экспорте 3d модели резисторов?
по моему главнее передать разводку печатной платы в dxf для дальнейшей обработки на ЧПУ-приблудах, т.е. результат от использования вашей проги

Ну у нас немного другая задача. Мы хотим передать полностью 3D модель платы. Я бы даже сказал, дорожками можно принебречь. )

Цитата:
>>Какую САПР делаешЬ?
редактор электрических схем
Ну у мну на делфах есть такая штука. Ток она делалась на 3 курсе, и поэтому очень не красиво написана. Надо могу дать... Ток там БД я прикручивал. Плюс, не поддерживаются плагины. В функционал входит компоновка и размещение с помощью Ген алгоритма.
veitmen вне форума  
 
Непрочитано 30.01.2008, 11:24
#20
veitmen


 
Регистрация: 29.01.2008
Сообщений: 5


Цитата:
Сообщение от zamtmn Посмотреть сообщение
veitmen
>>Не спорю... Но пока еще читать не начал.)
советую приобрести книгу Полещука "autocad в подлиннике" - там приведены dxf коды графических примитивов автокада на русском языке
Скачать не подскажешь где?)
veitmen вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Нужен совет по экспорту dxf



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Нужен совет по правильном расчете кирпичной стены nado Каменные и армокаменные конструкции 20 01.03.2012 12:58
MicroFE - нужен совет. karma Прочее. Программное обеспечение 1 23.05.2007 22:01
Нужен совет по стенам. Jheka Конструкции зданий и сооружений 28 27.01.2007 08:17
Начинаю заниматься расчётами - нужен совет Baires Прочее. Архитектура и строительство 15 29.03.2006 07:39
Купол. Нужен совет??? Michail Прочее. Архитектура и строительство 12 25.03.2006 23:30