|
||
| Правила | Регистрация | Пользователи | Сообщения за день | | Поиск | | Справка по форуму | Файлообменник | |
|
Поиск в этой теме |
10.06.2008, 11:23 | #1 | |
Управление параметром видимости дин. блока через sheetset custom properties
ՃԱՐՏԱՐԱԳԵՏ, Տ.Գ.Թ.
Торонто
Регистрация: 23.10.2007
Сообщений: 1,980
|
||
Просмотров: 2969
|
|
||||
Ну ладно, по видимому стандартными средствами никак. А может лисп тут поможет? Можно заставить лисп читать свойства открытой подшивки?
__________________
Блог |
||||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,848
|
Если полагаться только на документацию, то лиспом добраться до свойств подшивки нереально. Правда это или нет - не знаю, не пробовал.
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Как ты думаешь ситуация тупиковая?
А если сделать так. Создаю мтекст, который ссылается на подшивку (в нем поле). Лисп читает уже не содержание подшивки, а содержание мтекста.
__________________
Блог |
||||
|
||||
__________________
Блог |
||||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,848
|
Содержание многострочного текста прочитать не проблема в общем-то. Лисп для изменения динамических свойств блока где-то болтался...
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Нашел несколько тем. Ты там поучаствовал. Но конкретно для решения моей проблемы там нету лиспа.
http://dwg.ru/f/printthread.php?t=13937&pp=1000 http://www.caduser.ru/cgi-bin/f1/board.cgi?t=36637zq Надо так: Имею мтекст, имеющий ObjId 2130429216 (ну к примеру), в нем поле, ссылается на свойства подшивки. Возможны два варианта содержания поля: 1 и 0. Имею так же дин. блок (или блоки), у которых два параметра видимости, так же именуемые 1 и 0. Прописываем в лисп ObjId, наименования блоков, а так же переменную 1 и 0. Забрасываем лисп в автозагрузку. Если при открытии чертежа мтекст с ObjId 2130429216 находиться, и его содержание либо 1 либо 0, то по чертежу проходит поиск нужных дин блоков, в их свойствах параметр видимости выставляется в соответствии с содержанием мтекста. Если же мтекст с ObjId 2130429216 не найден, или содержание в не м не 0 или 1, то акад пропускает файл, и продолжает работать без лишней ругани. Смогем?
__________________
Блог Последний раз редактировалось Red Nova, 14.06.2008 в 10:39. |
||||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,848
|
Все здорово, кроме одного - ObjectID может от сессии к сессии меняться. И, честно говоря, пока общую идею как-то не уловил
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Про общею идею.
У меня бывают типовые проекты, в которых измени порядка 20 индивидуальных данных и выпускай. Скажем 10 томов соединены через подшивку. В подшивке вписаны общие параметры. В всех томах (каждому тому свой файл) имеются поля, которые читают данные из подшивки, имеются и формулы на тех же данных основанные. Таким образом получается что заполнив данные в подшивке проект готов и без работы непосредственно с файлами. Но вот задача, есть одна спецификация в проекте (в общем таких случаев может быть и больше), которая кардинально меняется в зависимости от одного из свойств подшивки. В свойствах подшивки у меня есть строка “Сплиттер”, так вот если значение этой строки “0”, то спецификация имеет один вид, если значение этой строки “1”, то спецификация имеет другой вид. Думаю сделать динамический блок спецификации, у которого два параметра видимости: соответственно на случаи “1” и “0”. Ищу пути автоматизации изменения параметра видимости этого динамического блока в зависимости от значения строки “Сплиттер” в подшивке. Из самой подшивки листы я не печатаю, для этого открываю через подшивку файлы, и даю публиш, это необходимо для правильного отображения полей (иначе они могут подхватить другую подшивку). К чему я это рассказываю. К тому что так или иначе файл я до печати открою. Вот и появилась идея, что если бы был лисп который при открытии файла корректировал параметр видимости конкретного дин блока, то было бы чудесно. Как я понял лисп не может видеть свойства подшивки. Для этого можно создать промежуточный связной объект, который видит свойство подшивки, а его в свою очередь видит лисп. Таким объектом может быть мтекст в котором поле из подшивки. Ты говоришь ID объекта переменчиво, для меня это новость, но в любом случае если создается поле (скажем в другом мтексте) зависимое от этого объекта, то ведь от сеанса к сеансу поле видит этот объект, и не путает его с другими. Я думал что это происходит благодаря ID, но возможно принцип и другой. Надеюсь ты знаешь больше меня и сможешь ввести в лисп зависимость от содержания конкретного мтекста. P.S. Можешь переместить тему в программирование.
__________________
Блог |
||||
|
||||
Кулик Алексей aka kpblc, Что надоела темка?
__________________
Блог |
||||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,848
|
Нет, просто требуют результата по работе (примерное описание с чем воюю есть здесь, в конце
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Мда.
__________________
Блог |
||||
|
||||
Эх не хочется темку хоронить. Такой потенциал пропадает. Представьте только сколько пользы может это дать. Сколько дин. блоков могут сами себя подправлять в зависимости от исходных данных.
__________________
Блог |
||||
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Изменение параметров дин блока | ch-viktor | Программирование | 5 | 23.05.2008 21:38 |