Чтение XRecord из .dwg-файлов без открытия их в Автокаде
| Правила | Регистрация | Пользователи | Сообщения за день |  Справка по форуму | Файлообменник |

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Чтение XRecord из .dwg-файлов без открытия их в Автокаде

Чтение XRecord из .dwg-файлов без открытия их в Автокаде

Ответ
Поиск в этой теме
Непрочитано 02.02.2010, 09:33 #1
Чтение XRecord из .dwg-файлов без открытия их в Автокаде
_Valery_
 
Регистрация: 01.02.2010
Сообщений: 9

Из программы на Visual Basic требуется получить записи из словарей для списка .dwg-файлов. Т. е. есть список ссылок на эти файлы и из известного словаря (Dictionary) каждого хочется извлечь записи (XRecord). Открывать каждый файл в Автокаде и считывать их через Lisp или VBA не хочется, долго.

Что пока нашел в интернете:
RealDWG — дорого, не подходит;
DWGdirect от Open Design Alliance — не очень дорого, но требуется бумажная волокита для приобретением, пока этот способ в резерве;
LibreDWG — не понятно, есть у этой библиотеки на данный момент такие возможности, она пока недоработанная.

Что можете посоветовать в этой ситуации, может есть еще какие-нибудь средства? И еще, как программы с применением ObjectARX взаимодействуют с файлами .dwg? Надо запускать Автокад, открывать отдельный файл, и только для конкретно этого файла запускать программу, или можно после запуска Автокада вызвать программу, передать ей список ссылок, которые она уже сможет обработать пачкой?
Просмотров: 8909
 
Непрочитано 02.02.2010, 11:49
#2
Александр Ривилис

программист, рыцарь ObjectARX
 
Регистрация: 09.05.2005
Киев
Сообщений: 2,413
Отправить сообщение для Александр Ривилис с помощью Skype™


Цитата:
Сообщение от _Valery_ Посмотреть сообщение
или можно после запуска Автокада вызвать программу, передать ей список ссылок, которые она уже сможет обработать пачкой?
Можно.
Александр Ривилис вне форума  
 
Автор темы   Непрочитано 02.02.2010, 12:10
#3
_Valery_


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


Александр Ривилис, вы уже делали нечто подобное? долго ли будет выполняться процесс такой обработки, например, при нескольких десятках файлов? Автокад 2007-й версии.

Процесс представляется мне примерно таким, поправьте, если ошибаюсь: связать arx-библиотеку с Автокадом, из Visual Basic запустить Автокад в фоновом режиме (без визуального содержимого) и как-то заставить его выполнить код arx (это, вообще, можно сделать из Visual Basic или с передачей каких-нибудь ключей при запуске?), который получит список файлов и по мере обработки будет возвращать значения XRecord в программу на Visual Basic.
_Valery_ вне форума  
 
Непрочитано 02.02.2010, 12:23
#4
Александр Ривилис

программист, рыцарь ObjectARX
 
Регистрация: 09.05.2005
Киев
Сообщений: 2,413
Отправить сообщение для Александр Ривилис с помощью Skype™


Цитата:
Сообщение от _Valery_ Посмотреть сообщение
Александр Ривилис, вы уже делали нечто подобное?
Делал. Как пример, поищи в гугле DWGCONVERT и DWGCONVERTFILES. Только это все сделано на C++ с использованием ObjectARX.
Скорость будет зависеть не только от количества файлов, но и от их размеров и их сложности.
Цитата:
Сообщение от _Valery_ Посмотреть сообщение
Процесс представляется мне примерно таким, поправьте, если ошибаюсь: связать arx-библиотеку с Автокадом, из Visual Basic запустить Автокад в фоновом режиме (без визуального содержимого) и как-то заставить его выполнить код arx (это, вообще, можно сделать из Visual Basic или с передачей каких-нибудь ключей при запуске?)
Можно. Не очень понимаю только зачем нужен VB. И если уже писать на VB, то проще использовать ActiveX-модель AutoCAD. Будет работать несколько дольше, но ненужно изучать ObjectARX.
Александр Ривилис вне форума  
 
Непрочитано 02.02.2010, 12:58
#5
Кулик Алексей aka kpblc
Moderator

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


Я немного потерялся: программа должна работать вообще без AutoCAD или может его использовать, например, как СОМ-сервер?
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 02.02.2010, 13:07
#6
Александр Ривилис

программист, рыцарь ObjectARX
 
Регистрация: 09.05.2005
Киев
Сообщений: 2,413
Отправить сообщение для Александр Ривилис с помощью Skype™


Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
Я немного потерялся: программа должна работать вообще без AutoCAD или может его использовать, например, как СОМ-сервер?
Ну вопрос о работе без AutoCAD отпал как класс ввиду стоимости альтернативных средств чтения/записи dwg-файлов.
Александр Ривилис вне форума  
 
Автор темы   Непрочитано 02.02.2010, 14:13
#7
_Valery_


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


Кулик Алексей aka kpblc, фактически, нужно, чтобы за меньшее время сделалось нужное — только получить значения записей. Запускать Автокад, конечно, мне не хотелось бы для этого, но, увы, инструментарий для разработки сильно ограничен. Если у вас есть предложения, как такое можно провернуть, то буду очень признателен.

Александр Ривилис, если работать с Автокадом, как с СОМ-сервером напрямую через VB (так хоть исключения можно будет обработать), тоже можно такое сделать, сильно при этом пострадает скорость выполнени по сравнению с arx? Извините, что сразу на двух форумах спрашиваю.
_Valery_ вне форума  
 
Непрочитано 02.02.2010, 14:29
#8
kp+

идущий по граблям
 
Регистрация: 26.05.2005
Сообщений: 5,171


_Valery_, посмотри в сторону DBX
http://forum.dwg.ru/showpost.php?p=195701&postcount=17
kp+ вне форума  
 
Автор темы   Непрочитано 02.02.2010, 14:38
#9
_Valery_


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


kp+, не совсем понял, это через Лисп? В приведенной вами ссылке не смог посмотреть прожку из #7, что она делает?
_Valery_ вне форума  
 
Непрочитано 02.02.2010, 14:52
#10
hwd

C, C++, C#
 
Регистрация: 07.10.2009
С-Пб.
Сообщений: 2,762
Отправить сообщение для hwd с помощью Skype™


Продукт я не изучал, но может вам как-то сгодится (во всяком случае на сайте пишут, что он вроде как может информацию извлекать из чертежей).
__________________
Надеюсь, ты не социальный овощ? Это определяется делами! :welcome:
hwd вне форума  
 
Непрочитано 02.02.2010, 15:02
#11
Александр Ривилис

программист, рыцарь ObjectARX
 
Регистрация: 09.05.2005
Киев
Сообщений: 2,413
Отправить сообщение для Александр Ривилис с помощью Skype™


Цитата:
Сообщение от _Valery_ Посмотреть сообщение
сильно при этом пострадает скорость выполнени по сравнению с arx?
Сильно - это понятие относительное. Скорее всего в несколько раз. Но все зависит от структуры чертежа.
Александр Ривилис вне форума  
 
Автор темы   Непрочитано 02.02.2010, 15:15
#12
_Valery_


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


hwd, я уже спросил на их форуме про возможности библиотеки, было бы вообще круто без Автокада обойтись.
_Valery_ вне форума  
 
Автор темы   Непрочитано 08.02.2010, 09:17
#13
_Valery_


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


Библиотека от cadsofttools не поддерживает работу со словарем и икс-записями. Жаль.

Сначала попробую сделать все из Visual Basic просто через AutoCAD ActiveX. По крайней мере так у меня будет больше свободы в обработке ошибок и передаче/получении данных.
_Valery_ вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Чтение XRecord из .dwg-файлов без открытия их в Автокаде



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
DwgRuLispLib: Функция открытия диалога Open\Save As файла (файлов) Supermax Библиотека функций 20 14.03.2018 10:05
Отображение в автокаде открытых файлов в виде иконок. ALM AutoCAD 10 03.06.2009 11:08
Как запустить AutoCad без открытия нового файла. Хмурый AutoCAD 18 15.09.2008 08:23
Как изменить режим открытия и сохранения файлов? Engineer IA AutoCAD 1 09.07.2008 09:45