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

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Готовые программы > vba.3d-сортамент(vba исходники открыты)

vba.3d-сортамент(vba исходники открыты)

Ответ
Поиск в этой теме
Непрочитано 02.06.2009, 13:17
vba.3d-сортамент(vba исходники открыты)
Mikka
 
Регистрация: 05.08.2008
Сообщений: 155

Доброго времени суток уважаемые, хочу предстваить бето версию своей программы под АВТОКАД на VBA!
- Программа позволяет чертить профеля металлопроката в трехмерке, и легко их изменять!
- Дополнительная утилита позволяет создаваь спецификацию металлопроката по построенному объекту!
- Прога написана целиком на VBA

Для установки скопируйте содержимое архива в папку
D:\work\aCAD_mini_2
и перетащите файл setup.scr на окно акада!
Жду отзывов и предложений!

Выложил открытые файлы!
Очень жду вашей критики и предложений по поводу кода!
З.Ы. я не профессионал, а только любитель

+ исправил некоторые глюки с прорисовкой профиля
+ добавил новый диалог "изменить свойства"
+ добавил справку


Залил новую версию программы
+ исправил некоторые глюки с прорисовкой профиля
+ добавил пластины


Залил новую версию программы
+ исправил некоторые глюки
+ теперь программа при отрисовке пластин учитывает направление обхода полилинии. Т.е. пластина выдавливается независимо от текущей системы координат.
+ включил галочку "зеркальный" для пластин. Т.е. теперь можно изменять направление выдавливания пластины.


+ переписал часть кода
+ теперь 2 клик по объекту работает и в 2008 автокаде
- есть идея хранить данные профиля не в xdata а словаре связанном с объектом(скорее всего предыдущие чертежи будут не изменяемы).
Нужен ли конвертор старых чертежей?


18.10.09
Сортамент версия 502
Возможности
+ добавил команду разнести по слоям и режиме рисования по слоям
+ добавил привязку к пластинам (теперь пластины не только зеркалятся, но еще могут выдавливаться так, чтоб базовая линия была по центру)
+ добавил возможность задать любому твердому телу данные профиля, с последующим учетом в спецификации (может понадобится для фигурных, не стандартных деталей, например гнутого листа)
+ теперь программа пытается автоматически определять ширину и длину описанного вокруг пластины прямоугольника, и выводит эти параметры в обозначении пластины, а также для составления спецификации элементов
Ошибки
+ исправил глюки с 2 кликом (добавил настроку в acadMini2.ini для отключения 2 щелчка мышью)
нуждается в тестировании, т.к это может привести к вылету автокада
+ исправил глюки с кистью (свойство пластины нельзя перенести на свойства профиля)

Модуль спецификации версия 232
Возможности
+ добавлена спецификация элементов (настройки смотри в файле table.ini радздел tab2)
+ добавил возможность выбора объектов для составления спецификаций
Ошибки
+ исправлена ошибка возникающая при попытки составить спецификацию металлопроката в пустом чертеже
+ исправлена ошибка определения ширины записи в столбце таблицы при заполнении спецификации

Модуль слои версия 11
Ошибки
+ исправлена ошибка возникающая при отмене выбора

з.ы. исправил ошибку определения ширины пластины...

Народ, отпишитесь, с какой детальностью рисовать метизы...

Вложения
Тип файла: rar aCAD_mini_2.rar (1.24 Мб, 954 просмотров)


Последний раз редактировалось Mikka, 26.10.2009 в 12:00.
Просмотров: 27056
 
Автор темы   Непрочитано 04.09.2009, 13:22
#41
Mikka


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


Цитата:
Среди прочего, нашел интересный глюк Acad2008, при удалении выделенного объекта програмным путем, гдето со 2 раза, акад вылетатает с критической ошибкой, как лечить не заню, пользуйтесь кнопкой редактировать...
Я писал про этот глюк в предыдущем посте. Все дело в том, что профиль при редактировании каждый раз удаляется и рисуется заного В 2006 автокаде все работает без запинки, а вот в 2008 происходит ошибка.
Как устранить ее пока не знаю!
з.ы. Если кто то разбирается в программирование на vba пишите в личку, возможно совместно удасться что то сделать...
з.з.ы. Очень рад, что моя прога работает на 2009 акаде

Последний раз редактировалось Mikka, 04.09.2009 в 13:31.
Mikka вне форума  
 
Непрочитано 10.09.2009, 18:07
#42
Mak


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


Дабл клик действительно работает !
Классная прога.
З.Ы. Конвертор делать....
Mak вне форума  
 
Непрочитано 12.09.2009, 01:07
#43
beholder

Конструктор (МК)
 
Регистрация: 27.11.2007
Львів
Сообщений: 452
<phrase 1=


Программа однозначно очень понравилась, вот только чтобы добавить базу профилей какую-нибудь свою, нужно будет попотеть с координатами узлов сечения насколько я понял (если неправильно понял, поправьте). Хорошо бы какой-нибудь такой лиспик написать чтоб сам эти координаты выводил в таблицу, которую уже потом можно было бы и в эксель импортировать. А так то прога достаточно интересная, даже очень, я бы сказал. Mikka молодец однозначно. P.S. Явно нуждается в доработке по части сварки и метизов.
__________________
Разработка чертежей КМ и КМД в AutoCAD и Advance Steel
beholder на форуме  
 
Автор темы   Непрочитано 12.09.2009, 11:26
#44
Mikka


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


beholder ты немного не понял посмотри файлы в папке: aCAD_mini_2\BASES\acadMini2\src ...
я делал так:
Забивал сортамент в Exel, а потом для одного профиля задавал формулами координаты, и "РАСТЯГИВАЛ" на все профиля...

З.Ы. Если по поводу метизов, у меня есть идеи, то про сварку идей нет...
Если можно покажите аналог ...
Mikka вне форума  
 
Непрочитано 13.09.2009, 15:36
#45
beholder

Конструктор (МК)
 
Регистрация: 27.11.2007
Львів
Сообщений: 452
<phrase 1=


Насчет добавления профилей буду разбираться. А вот сварку можно было бы сделать следующим образом. Рисовать такие стерженьки по линии пересечения деталий (по углу шва) соответственно будет видна только часть такого стержня, которая и будет похожа на сварной шов. Можно также сделать разные цвета (слои) для монтажных и заводских швов. Условно обозначать швы не вижу необходимости, потом все-равно для рабочих узлов в 2d их нужно будет дорисовывать вручную. Но есть недостаток: количество солидов в файле будет громадным что будет приводить к "подвисанию" акада. Прошу сильно не критиковать, это мое виденье решения. Мне тоже интересно как обозначают сварные швы в HyperSteel/StruCAD/Structural Detailing, так как не работал ни с одной из этих программ.
__________________
Разработка чертежей КМ и КМД в AutoCAD и Advance Steel
beholder на форуме  
 
Автор темы   Непрочитано 13.09.2009, 16:15
#46
Mikka


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


Ну я примерно так и думал...
Вообще изначально программа разрабатывалась для прорисовки основного конструктива. Т.е. один каркас, без узлов... В планах на будующее есть метизы... и узлы... (последние скрее всего будут реализованны после перехода на платформу NET)

Последний раз редактировалось Mikka, 13.09.2009 в 17:05.
Mikka вне форума  
 
Непрочитано 13.09.2009, 17:25
#47
gipro

лайсенсед инжиниа
 
Регистрация: 15.04.2006
город-герой Волгоград (Сталинград)
Сообщений: 1,166


Цитата:
Сообщение от beholder Посмотреть сообщение
интересно как обозначают сварные швы в HyperSteel/StruCAD/Structural Detailing, так как не работал ни с одной из этих программ.
Ну Hyper (он же Advance) Steel и Structural detailing не используют солиды как таковые, а используют свои объекты. Сварные швы же там играют роль информатора для разработки КМД. Есть 2 основных типа швов - "монтажный" и "заводской". Те уже разделяются по толщине и типу сварки (да кому я все это рассказываю ) Смысл заводского и монтажного - давать программе понятие "сборки" для получения КМД спецификаций. Если детали соединены заводским швом - >это одна отправочная марка.
gipro вне форума  
 
Непрочитано 13.09.2009, 19:11
#48
AlexV

Инженер
 
Регистрация: 02.10.2008
С-Пб
Сообщений: 3,649


Цитата:
Сообщение от gipro Посмотреть сообщение
Ну Hyper (он же Advance) Steel и Structural detailing не используют солиды как таковые, а используют свои объекты. Сварные швы же там играют роль информатора для разработки КМД. Есть 2 основных типа швов - "монтажный" и "заводской". Те уже разделяются по толщине и типу сварки (да кому я все это рассказываю ) Смысл заводского и монтажного - давать программе понятие "сборки" для получения КМД спецификаций. Если детали соединены заводским швом - >это одна отправочная марка.
...Причем в ASD 2009 steel сварка (как и болтовые соединения) добавляют немало глюков.. К примеру, выделяешь рамкой сборку, перемещаешь _move, - все элементы перемещаются, а сварка (или болты) остаются на том же месте..
__________________
...Не пытайся гнуть ты ложку,
Не вяжи её узлом.
Ложка - ложка понарошку,
А по правде, - это лом!
AlexV вне форума  
 
Непрочитано 13.09.2009, 20:29
#49
beholder

Конструктор (МК)
 
Регистрация: 27.11.2007
Львів
Сообщений: 452
<phrase 1=


Цитата:
Сообщение от Mikka Посмотреть сообщение
В планах на будующее есть метизы... и узлы...
Планы у Вас просто чудесные, так как в основном сейчас есть необходимость в прорисовке сложных узлов в 3d скорее, чем делать весь каркас в нем. Так что, Mikka, дорабатывайте программу и, думаю, сможете занять свое место на рынке ПО
__________________
Разработка чертежей КМ и КМД в AutoCAD и Advance Steel
beholder на форуме  
 
Автор темы   Непрочитано 13.09.2009, 20:31
#50
Mikka


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


Цитата:
Смысл заводского и монтажного - давать программе понятие "сборки" для получения КМД спецификаций. Если детали соединены заводским швом - >это одна отправочная марка.
- понятно , средствами VBA это довольно сложно сделать(если вообще возможно). Я предлагаю реализовать сварку круглым солидом, который будет выдавливаться по полилинии.

Идеи про сварку:
1) задание прирывистого и непрерывного шва по линии(несколькими солидами возможно с обьединением командой логического сложения);
2) цветовой маркировкой шва, монтажный, заводской;
3) возможно будет команда сварить по контуру(т.е. будет вычислятся траектория пересечения 2 солидов)
4) --//-- команда вычисления общей длины свархны швов...

Еще идеи
5) команда вычисления массы выделенных объектов
6) видимость объектов с менеджером видимости (отдельный скрипт)

зы. скорее всего сварка будет носить чисто декоративный характер...
ззы. скажите что из этого необходимо, а что нет, и в какую очередь...
зззы. Так получилось, что по роду своей деятельности я занимался только КМ, а КМД даже в глаза не видел(я только учусь на строителя), по этому если есть идеи по поводу КМД пишите постораю рассмотреть...
Mikka вне форума  
 
Непрочитано 13.09.2009, 21:51
#51
AlexV

Инженер
 
Регистрация: 02.10.2008
С-Пб
Сообщений: 3,649


Цитата:
..видимость объектов с менеджером видимости (отдельный скрипт)..
- полезная штука, и реализуется довольно легко.
Сварка в 3d - не знаю, насколько это реально необходимо.. В ASD мы с ней поначалу поигрались, теперь, по моему, никто не использует в нашей конторе (правда, делаем только КМ). Хотя, если это будет менее глючно и не будет перегружать/подвешивать автокад, то почему бы и не попробовать..
Еще полезные, возможно, функции были бы:
-перемещение и копирование объектов с фильтром по одной или 2-м координатам (автокадовские фильтры неудобны, а функция такая при моделировании не помешает.. Когда, например, надо скопировать объекты, пользуясь привязками, но что бы они остались в одном уровне)
-проверка "коллизий" - взаимопересечений
-"отправочные марки-сборки" - мне кажется, для создания сборок лучше обычные блоки использовать, чем объединять через сварные швы.. В ASD создашь, к примеру, через сборку (или группу) колонну; ее можно скопировать. Но нет инструмента, который бы "синхронизировал" их, - т.е. добавил/удалил/изменил деталь в одной сборки, а остальные с тем же именем - не поменялись..
__________________
...Не пытайся гнуть ты ложку,
Не вяжи её узлом.
Ложка - ложка понарошку,
А по правде, - это лом!
AlexV вне форума  
 
Непрочитано 13.09.2009, 22:07
#52
gipro

лайсенсед инжиниа
 
Регистрация: 15.04.2006
город-герой Волгоград (Сталинград)
Сообщений: 1,166


Цитата:
Сообщение от Mikka Посмотреть сообщение
зы. скорее всего сварка будет носить чисто декоративный характер...
нет смысла. только загрузит модель. Можно использовать обычный 3d polyline для подсчета длин сварных швов. Только вот свойства ей не присвоишь...

Цитата:
Сообщение от AlexV Посмотреть сообщение
-"отправочные марки-сборки" - мне кажется, для создания сборок лучше обычные блоки использовать, чем объединять через сварные швы..
Не согласен. Сварные швы объединяют сборки не для копирования, а для составления спецификаций "на марку".
Думается мне, что разработку КМД таким путем очень сложно решить, поэтому дал бы совет не заморачиваться сильно по этому поводу.
- Хотелось бы иметь возможность составления спецификаций для выбранных элементов (номер профиля, стандарт, длина и вес) и идентификацию одинаковых элементов.
gipro вне форума  
 
Непрочитано 13.09.2009, 22:42
#53
AlexV

Инженер
 
Регистрация: 02.10.2008
С-Пб
Сообщений: 3,649


Цитата:
Не согласен. Сварные швы объединяют сборки не для копирования, а для составления спецификаций "на марку".
-Ну так и составить спецификацию "на марку" можно, считав данные с примитивов, входящих в состав блока..
__________________
...Не пытайся гнуть ты ложку,
Не вяжи её узлом.
Ложка - ложка понарошку,
А по правде, - это лом!
AlexV вне форума  
 
Непрочитано 17.09.2009, 21:16
#54
beholder

Конструктор (МК)
 
Регистрация: 27.11.2007
Львів
Сообщений: 452
<phrase 1=


Цитата:
Сообщение от gipro Посмотреть сообщение
идентификацию одинаковых элементов.
Мне кажется, такое реализовать будет достаточно сложно, так как при сложных геом. формах всегда будут небольшие отклонения геометрии и потому элементы, которые должны теоретически быть точно одинаковыми, такими не будут. Если конечно, не сделать это с учетом допуска на такую неточность, скажем до 1 или 2-х мм.
__________________
Разработка чертежей КМ и КМД в AutoCAD и Advance Steel
beholder на форуме  
 
Непрочитано 17.09.2009, 23:04
#55
Sleekka

-
 
Регистрация: 24.07.2005
Москва
Сообщений: 1,455


Цитата:
Мне кажется, такое реализовать будет достаточно сложно, так как при сложных геом. формах всегда будут небольшие отклонения геометрии и потому элементы, которые должны теоретически быть точно одинаковыми, такими не будут. Если конечно, не сделать это с учетом допуска на такую неточность, скажем до 1 или 2-х мм.
Вам кажется, а люди берут и делают - AD_analiz например.
Mikka - так держать
Sleekka вне форума  
 
Автор темы   Непрочитано 18.09.2009, 22:44
#56
Mikka


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


gipro А что имелось в виду, под идентификацией одинаковых элементов?
Поиск всех одинаковых элементов?
Учет одинаковых элементов при составлении спецификации?
Или что то иное?
Mikka вне форума  
 
Непрочитано 19.09.2009, 08:03
#57
gipro

лайсенсед инжиниа
 
Регистрация: 15.04.2006
город-герой Волгоград (Сталинград)
Сообщений: 1,166


Цитата:
Сообщение от Mikka Посмотреть сообщение
Поиск всех одинаковых элементов?
именно. Поиск одинаковых элементов. Вплоть до отверстия под болт.
И учет при составлении спецификации тоже.

Последний раз редактировалось gipro, 19.09.2009 в 09:02.
gipro вне форума  
 
Автор темы   Непрочитано 19.09.2009, 10:07
#58
Mikka


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


gipro Я могу реализовать:
+ поиск всех одинаковых элементов;
+ учет при составлении спецификации(добавлю обычную спецификацию, как в чертежах АС) тоже могу ;
- но вот про отверстия моя программа ничего не знает, и скорее всего в нынешней своей эпостаси узнать не сможет

з.ы. вообщем то появление отверстий как таковых не планировалось даже теоретически... (если кто подаст идею в рамках нынешней философии программы, постораюсь реализовать...)
Mikka вне форума  
 
Непрочитано 19.09.2009, 22:22
#59
beholder

Конструктор (МК)
 
Регистрация: 27.11.2007
Львів
Сообщений: 452
<phrase 1=


Тут бы понять в чем "нынешняя философия" заключается ... Тогда бы и идея какие-то пришли в голову. Тупиковое решение, типа, отверстия тоже сделать солидами отдельными чтобы хоть как-то фиксировать их количество опять же приведет к "подвисанию" как и в случае с метизами. А просто "вырезая" отверстия в элементах вы, конечно же, их количество и, тем более, взаимное расположение никак не зафиксируете... А жаль, действительно, с КМД будет намного сложнее...
__________________
Разработка чертежей КМ и КМД в AutoCAD и Advance Steel
beholder на форуме  
 
Автор темы   Непрочитано 20.09.2009, 11:37
#60
Mikka


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


Философия простая:
- солид строится вокруг базовой линии;
- базовая линия содержит все необходимые данные для построения солида, и знает о "своем" солиде;
- солид содержит в себе все данные для построения спецификации, и том к какому типу спецификации он может относится. И также "знает" о базовой линии;

По поводу метизов:
- отверстий я делать не собирался. Можно конечно попытаться записать данные о том какие отверстия и где они должны быть расположены в базовую линию. Это возможно, но довольно сложно сделать т.к. возникает целый ряд нюансов с анализом формы профиля, а прогрмма их не анализирует...
- метизы будут строится как профиля, т.е. солидами вокруг базовой линии.
- база метизов будет описывать почти полную их конфигурацию, уже придумал как...
- скорее всего сделаю возможность создать сразу пакет, т.е болт, шайба, гайка...

Менеджер видимости (сейчас в разработке)
- выбираться будут только солиды -> которые будут ссылаться на базовую линию -> линия будет заноситься в базу видимости -> скрываться будет линия и солид на который она ссылается...
- постараюсь сделать более меннее удобный интерфейс (это вам не delphi ) И немодальную форму.
Mikka вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Готовые программы > vba.3d-сортамент(vba исходники открыты)

Размещение рекламы
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Конструирование в 3D Serz AutoCAD 87 28.10.2014 10:40
Преобразование 3D Solid'а в 3D линии Tatarin AutoCAD 3 19.02.2009 17:37
Использование в AutoCad 3d модели созданной в AutoCad Архитектор faust23 AutoCAD 25 16.10.2008 00:53
Как тело построенное 3D Face превратить в 3D Solid? Bdod AutoCAD 37 03.08.2006 11:36
ГОСТ на ванты и оттяжки ??? зщцук? Поиск литературы, чертежей, моделей и прочих материалов 1 17.05.2005 06:53