Тема: VBA. Набор программ для построения 3D крепежа (болты, винты и т.д.)

Набор программ для построения 3D крепежа (болты, винты, гайки и т.д.). Все они находятся в проекте Body_3D_2_1.dvb, который нужно загрузить в текущий сеанс AutoCAD. Нужная программа вызывается через Tools->Macro->Macros или Alt-F8. Выбираем нужную деталь, указываем на экране точку вставки и направление. Данные по детали, если их нет в БД вносятся в форму, затем программа предложит сохранить их в БД. БД создана в Access, поэтому позволяет работать с ней независимо от AutoCAD, можно при желании вносить или корректировать данные. БД с данными о крепеже нужно разместить в ту же директорию, где находится рабочий чертеж. Крепеж.rar

Re: VBA. Набор программ для построения 3D крепежа (болты, винты и т.д.)

Что-то не работает ни в 2006 ни в 2008 eng

Re: VBA. Набор программ для построения 3D крепежа (болты, винты и т.д.)

> semvb
Файл Крепеж.mdb помести в папку Documents and Settings\User

Re: VBA. Набор программ для построения 3D крепежа (болты, винты и т.д.)

Программы тестировались в AutoCAD 2006 и 2009. Чтобы все работало, к текущему сеансу должны быть подключены как минимум четыре библиотеки. Tools->Macro->Visual Basic Editor; Tools->References. Напротив библиотек
- Visual Basic For Applications
- AutoCAD 2006(2009) Type Library
- Microsoft Forms 2.0 Object Library
- Microsoft DAO 3.6 Object Library
должны быть поставлены галочки.
Еще один момент: в AutoCAD 2006, где происходит окраска детали метод имеет вид AcadApplication.GetInterfaceObject("AutoCAD.AcCmColor.16"), а в AutoCAD 2009 - AcadApplication.GetInterfaceObject("AutoCAD.AcCmColor.17").
Что касается размещения файла, это сделать можно, но хотелось бы понять - насколько полезны могут оказаться эти программы, стоит ли продолжать с ними ковыряться.

Re: VBA. Набор программ для построения 3D крепежа (болты, винты и т.д.)

Мне программа понравилась, хотя понятно, что пока полуфабрикат. Задавать цвет, мне кажется, лишнее, лучше для каждого из видов крепежа задавать свой слой (создавать при отсутствии в файле чертежа, скажем, слои "Болт" и т.д. - при согласии пользователя), независимо от того, какой является текущим. Не знаю, насколько это сложнореализуемо, но вместо отдельных форм для каждого вида крепежа объединить бы все на одной, поместив контролы на разные вкладки MultiPage, отдельную вкладку - под настройки. Еще вопрос, можно ли, каждый тип крепежа сделать блоком? Я к тому, что тогда было бы просто их считать.

Re: VBA. Набор программ для построения 3D крепежа (болты, винты и т.д.)

Благодарю, AlexV, за советы. Все это сделать можно, все в наших руках. Насчет MultiPage стоит подумать. Вообще-то у меня была мысль каждую деталь на свою кнопку - и все их на панель, но с MultiPage, тоже неплохо.

Re: VBA. Набор программ для построения 3D крепежа (болты, винты и т.д.)

Александр пишет:

Вообще-то у меня была мысль каждую деталь на свою кнопку

Разумно.
Другое дело, что может быть написать вариант программы с максимальной универсальностью. Т.е. отказаться от значений стандартов вообще. Данные вводить интерактивно. Я в последние годы так и делаю. Мороки много привязываться к ГОСТАм, ОСТам ( а также UNI, ANSI и т.д.). IMHO ес-но.

Re: VBA. Набор программ для построения 3D крепежа (болты, винты и т.д.)

> AlexV

Александр пишет:

...Задавать цвет, мне кажется, лишнее,...

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

Re: VBA. Набор программ для построения 3D крепежа (болты, винты и т.д.)

Программа хорошая и удобная, думаю стоит развивать.
Предложение: У меня после запуска макроса программа сама ищет файл с базами по пути

"Не удается найти файл 'C:\Program Files\Consistent Software\СПДС Graphics 4,0\m7\Крепеж.mdb."

Удобней было бы, чтобы макрос обращался к базе, расположенной рядом с Body_3D_2_1.dvb в папке, которую видит ACAD.

Re: VBA. Набор программ для построения 3D крепежа (болты, винты и т.д.)

> semvb
Согласен,намного удобнее было бы, если файл базы должен был находится вместе с dvb файлом VBA проекта.

Re: VBA. Набор программ для построения 3D крепежа (болты, винты и т.д.)

Произвел ряд доработок по интерфейсу программы. Сейчас нужно после загрузки Body_3D_2_2.dvb, запустить макрос myPanel_3D, появится панель "Крепеж", на каждой кнопке которой закреплен свой макрос. Эта панель существует во время текущего сеанса. Иконки для кнопок, файл БД "Крепеж.mdb" следует поместить в папку "MDB&BMP", а папку в "Мои документы". Можно в принципе разместить рабочие файлы где угодно, тогда программа при запуске будет просить показать где они находятся.
При построении каждый типоразмер детали помещается на одноименный слой, теперь их легко сосчитать например Инструменты->Быстрый выбор->Слой...
Еще один момент - чтобы не было конфликтов между Access и AutoCAD, нужно разделитель целой и дробной части задать в виде "."(точка) это задается Панель управления->Язык и региональные стандарты->Региональные параметры->Кнопка "Настройка"->Числа. Программа здесь MDB&BMP.rar

Re: VBA. Набор программ для построения 3D крепежа (болты, винты и т.д.)

Че-то не могу скачать. Не отображаются картинки ("введите цифры") для загрузки файла.

Re: VBA. Набор программ для построения 3D крепежа (болты, винты и т.д.)

Попробуй через некоторое время. У них там иногда бывают косяки, но потом исправляют.