|
||
| Правила | Регистрация | Пользователи | Поиск | Сообщения за день | Все разделы прочитаны | Справка по форуму | Файлообменник | |
|
![]() |
Поиск в этой теме |
![]() |
#1 | |
Как заменить (redefine) один блок вторым с сохранением выбора (visibility)?
Визайнер-дизуализатор в отставке
Регистрация: 12.11.2009
Сообщений: 133
|
||
Просмотров: 6466
|
|
||||
Программист-энтузиаст Регистрация: 17.07.2009
Воронеж
Сообщений: 571
|
Unfamous, это можно попробывать сделать программно, выложи пример чертежа с обоими блоками (желательно в версии не выше ACAD'а 2008)
__________________
cadtools |
|||
![]() |
|
||||
Визайнер-дизуализатор в отставке Регистрация: 12.11.2009
Сообщений: 133
|
В первом примере как сейчас работает, во втором как хотелось бы.
Первый: Открываем файл 1_table.dwg, нажимаем insert block, выбираем table.dwg, автокад спросит переназначить, отвечаем да. Заменило блоки блоками с 3d столом - радуемся. Второй: Открываем файл 2_table.dwg, в нем уже динамический блок, причем первый вставлен размером 900, второй 1200, нажимаем insert block, выбираем table.dwg (он тоже динамический и у него тоже два режима видимости: 900 и 1200) и... получаем два стола по 900 вместо одного 900 и второго 1200. Как заставить автокад оставить второй стол размером 1200 при замене "похожим" блоком? ЗЫ Вряд ли стоит заморачиваться програмно, просто я наверное не до конца понимаю "религию" блоков... |
|||
![]() |
|
||||
Программист-энтузиаст Регистрация: 17.07.2009
Воронеж
Сообщений: 571
|
Хозяин - барин! Тем более, что мою просьбу выложить файлы в версии не выше ACAD2008 Вы проигнорировали, так что я не могу посмотреть Ваши чертежи и что там за блоки
__________________
cadtools |
|||
![]() |
|
||||
Визайнер-дизуализатор в отставке Регистрация: 12.11.2009
Сообщений: 133
|
Не проигнорировал, а просто увлекся созданием примера и забыл
![]() Сейчас исправлюсь --------------------------- Кхмм.... Заработало ![]() Последний раз редактировалось Unfamous, 23.09.2011 в 12:47. |
|||
![]() |
|
||||
Программист-энтузиаст Регистрация: 17.07.2009
Воронеж
Сообщений: 571
|
Значит вопрос снят
__________________
cadtools |
|||
![]() |
|
||||
Инженер Регистрация: 02.10.2008
С-Пб
Сообщений: 3,654
|
Альтернативный вариант решения задачи на VBA (правда, работать будет только для 32битных систем при установленном модуле VBA). В архиве видео - как работает, ну и непосредственно dvb.. Позволяет менять вхождения блоков в файле с сохранением значений динпараметров (если конечно имена их совпадают). Ну, и имена блоков само собой должны отличаться.
__________________
...Не пытайся гнуть ты ложку, Не вяжи её узлом. Ложка - ложка понарошку, А по правде, - это лом! |
|||
![]() |
|
||||
Визайнер-дизуализатор в отставке Регистрация: 12.11.2009
Сообщений: 133
|
Чем дальше в лес, тем толще партизаны...
Есть три свойства стола: длина, высота, тип поверхности. В зависимости от этих параметров будет определенный артикул. Мне для одной позиции придется создать 60 видимостей в зависимости от параметров - не совсем красиво. Есть какое нибудь более изящное решение, не забывая про то, что по 2d блоку будет вставляться 3d? Хотелось бы три грипса с выбором этих параметров, ну и в итоге по этим трем параметрам выдавался бы артикул, который считывался бы DataExtractionом. ЗЫ Курю форум, но никак не накурюсь... ЗЗЫ Интуитивно догадываюсь про Lookupы, но как их правильно прикрутить не понимаю... |
|||
![]() |
|
||||
__________________
Как использовать код на Лиспе читаем здесь |
||||
![]() |
|
||||
Инженер Регистрация: 02.10.2008
С-Пб
Сообщений: 3,654
|
Цитата:
![]()
__________________
...Не пытайся гнуть ты ложку, Не вяжи её узлом. Ложка - ложка понарошку, А по правде, - это лом! |
|||
![]() |
|
||||
Визайнер-дизуализатор в отставке Регистрация: 12.11.2009
Сообщений: 133
|
Цитата:
http://forum.dwg.ru/showpost.php?p=3...postcount=1019 Не могу никак расковырять как это работает. Как добавляется Lookup properties? (см. скрин) У меня в add properties пусто, хотя лукапов несколько. Что с ними, окаянными, надо вытворить, чтобы вставлять друг в друга? Цитата:
ЗЫ А не знал, что в дин. блоке меш можно тянуть... |
|||
![]() |
|
||||
Цитата:
__________________
Как использовать код на Лиспе читаем здесь |
||||
![]() |
|
||||
Инженер Регистрация: 02.10.2008
С-Пб
Сообщений: 3,654
|
На тебе еще пример..
Цитата:
Кстати, ежели у тебя каждому Visibilyty States 2d блока соответствует аналогичное для 3d, то зачем тебе вообще менять блоки? Создавай в одном блоке два состояния видимости - 2d и 3d. Потом просто для выбранных блоков будешь его менять в свойствах..
__________________
...Не пытайся гнуть ты ложку, Не вяжи её узлом. Ложка - ложка понарошку, А по правде, - это лом! |
|||
![]() |
|
||||
Визайнер-дизуализатор в отставке Регистрация: 12.11.2009
Сообщений: 133
|
Цитата:
Цитата:
Панели просто суперовые, но я как понимаю работают за счет 3d face-ов, либо Mesh, а у меня уже созданная база "столов" солидами, и достаточно большая, чтобы переделывать на меши и тридефейсы... |
|||
![]() |
![]() |
|
Опции темы | Поиск в этой теме |
|
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Создание дополнительных параметров Visibility Set в динамических блоках. | Supermax | Программирование | 708 | 12.04.2021 14:54 |
Как заменить один блок другим? | ilka_t | Динамические блоки | 34 | 21.09.2018 00:43 |
Как заменить один блок другим с помощью лиспа | МИХАИЛCAD | LISP | 10 | 09.08.2011 15:58 |
Как правильнее заменить дин. блок в готовом чертеже. | Juss_00 | Динамические блоки | 7 | 13.04.2011 09:01 |
Как заменить один блок на другой? (не все) | Абдулнасир | Динамические блоки | 2 | 21.05.2009 11:38 |