Тема: Как сравнить файлы AutoCAD с помощью VBA?

слушайте. помогите пожалуйста.
нужно сравить два AutoСAD- овских файла на одинаковость в них чертежей.
с помощью VBA.

Re: Как сравнить файлы AutoCAD с помощью VBA?

слушайте, ну хоть с чего начать.
пожалуйста.

Re: Как сравнить файлы AutoCAD с помощью VBA?

Самый простой вариант
Создай два DXF фила и сравнивай их как текстовые
:)

Re: Как сравнить файлы AutoCAD с помощью VBA?

Если по содержимому, то тогда перебирай в цикле все примитивы в ModelSpace'ах и сравнивай :)

Re: Как сравнить файлы AutoCAD с помощью VBA?

большое спасибо!
можно про последний вариант подробнее?
во первых меня интересует, как я могу получить файл, где есть все примитивы(их параметры), которые нарисованы?

Re: Как сравнить файлы AutoCAD с помощью VBA?

> kb-nn
>во первых меня интересует, как я могу получить файл, где
>есть все примитивы(их параметры), которые нарисованы?
- Этот файл и есть .dwg, а с помощью VBA Вы можете и осуществить "последний вариант".

Re: Как сравнить файлы AutoCAD с помощью VBA?

Хотелось бы узнать - откуда у задачи ноги растут.
Тогда и советы дельнее можно давать.
С уважением, Дмитрий.

Re: Как сравнить файлы AutoCAD с помощью VBA?

Если есть желание копаться на уровне битов и байтов чертежа, то описание структуры dwg файла выложено в файле formatSpec13-15.rtf
Оглавление такое: AutoCAD R13/R14/R2000 DWG File Specification
Источник:The OpenDWG? Alliance
Ссылка - http://www.opendwg.org
С уважением, Дмитрий

Re: Как сравнить файлы AutoCAD с помощью VBA?

во первых, спасибо!
во вторых, про ноги.
у преподавателя есть файл с верно нарисованным чертежом.
и есть чериеж, нарисованный студентом.
и нужно узнать, правильно ли студент нарисовал всё.

Re: Как сравнить файлы AutoCAD с помощью VBA?

или может кто может подсказать место в нете, где есть  документация по VBA для  автокада?

Re: Как сравнить файлы AutoCAD с помощью VBA?

> kb-nn
>у преподавателя есть файл с верно нарисованным чертежом.
>и есть чериеж, нарисованный студентом.
>и нужно узнать, правильно ли студент нарисовал всё.
- А если студент, например, поставит лишнюю точку в чертеже :)))

Re: Как сравнить файлы AutoCAD с помощью VBA?

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

Re: Как сравнить файлы AutoCAD с помощью VBA?

Для Вашей задачи - очень просто ( и дешево).
1) Красите все элементы одного чертежа в один цвет.
2) Другого чертежа - в другой.
3) Вставляете один (командой Insert) в другой с наложением, и сразу все видно.
***Совет: если раскрасить один чертеж в зеленый, а другой в красный и сделать очень небольшой сдвиг двух чертежей, то цвет получается желтоватый там, где примитивы совпадают.
А там, где не совпадают - остается чистый цвет.

Re: Как сравнить файлы AutoCAD с помощью VBA?

что- то я мало что понял.
позвольте повториться- где в инете можно почитать документацию по VBA для AutoCAD?
пожалуйста.

Re: Как сравнить файлы AutoCAD с помощью VBA?

> kb-nn
http://www.afralisp.com/

Re: Как сравнить файлы AutoCAD с помощью VBA?

> 3dcad
Я зашел по вашей ссылке на ОпенДВГ. Класс!!!
Попытался зарегистрироваться, получил на 10 страниц договор который я должен подписать и выслать им.
А по другому можно получить ети обьекты

Re: Как сравнить файлы AutoCAD с помощью VBA?

Ну я и заполнил эти поля - через несколько минут получил письмо и ссылку на скачку.
Ежели очень надо - пиши на мыло - вышлю (файл занимает ~1МБт)

Re: Как сравнить файлы AutoCAD с помощью VBA?

ну вобщем я кое- что почитал, правда в другом месте.
www.cad.dp.ua, вобщем- то более или менее понял, что к чему.
а то вообще не знал с чего начать можно.
теперь у меня остался один вопрос- если у меня есть какой- то объект(неизвестно какой), как я могу узнать значения всех его свойств?
объект есть в какой- то переменной.

Re: Как сравнить файлы AutoCAD с помощью VBA?

Слушай, kb-nn, а вообще-то VBA в глаза видел? (только без обиды).

Re: Как сравнить файлы AutoCAD с помощью VBA?

да!
в основном правда работал в VB.

Re: Как сравнить файлы AutoCAD с помощью VBA?

Тогда, чтобы научиться на VBA под AutoCAD - берешь туеву хучу примеров из стандартной поставки для AutoCAD (установка c опцией Full) и по полной проходишь.

Re: Как сравнить файлы AutoCAD с помощью VBA?

> 3dcad
Ну и заполнил, и ничAво :(
Если не трудно скинь на bumagka@yahoo.com

Re: Как сравнить файлы AutoCAD с помощью VBA?

Скинул

Re: Как сравнить файлы AutoCAD с помощью VBA?

слушайте, можно еще вопросик- как узнать тип примитива, если я все примитивы чертежа просматриваю в цикле?

Re: Как сравнить файлы AutoCAD с помощью VBA?

Например так:
If StrComp(my_Collection.Item(n).EntityName, "AcDbLine", 1) = 0 Then
'Делаем что надо, если это линия
end if
С уважением, Дмитрий