Реклама i
|
||
| Правила | Регистрация | Пользователи | Сообщения за день | | Поиск | | Справка по форуму | Файлообменник | |
|
![]() |
Поиск в этой теме |
![]() |
#1 | |
можно ли сделать атрибут, считывающий текст из другого атрибута этого же блока?
топограф, технолог
Москва
Регистрация: 24.05.2009
Сообщений: 3,074
|
||
Просмотров: 17754
|
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,432
|
Поищи - на форуме подобные вопросы поднимались
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
|
||||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,432
|
Offtop: Подумываю внести этот вопрос и ответы на него в FAQ
![]()
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
А еще лучше в ВИДЕО F A Q по AutoCAD
АлексЮстасу, покажи ссылки здесь, раз их сложно найти в обычном режиме
__________________
Как использовать код на Лиспе читаем здесь Последний раз редактировалось VVA, 16.11.2010 в 18:08. |
|||
![]() |
|
||||
Цитата:
И мне его оказалось достаточно. |
||||
![]() |
|
||||
Дизайнер-конструктор Регистрация: 29.05.2004
Kiev
Сообщений: 1,179
![]() |
Цитата:
Цитата:
__________________
Kiev, Ukraine |
|||
![]() |
|
||||
Странно. После вставки ссылки проверял.
http://forum.dwg.ru/showpost.php?p=5...postcount=1742 |
||||
![]() |
|
||||
Не получается использовать один атрибут в формуле второго. Если у первого атрибута по умолчанию прошито число, то оно всегда и используется, а не реальное значение. А если ничего не определено по умолчанию, то получается "#####".
Мне нужно значение из одного атрибута использовать как множитель в формуле второго атрибута. |
||||
![]() |
|
||||
Тогда можно по другому сделать. Значение поля брать не внутри редактора блоков, а снаружи. У меня вроде получалось так. Приложи блок - попробую сделать
__________________
14 Ибо если вы будете прощать людям согрешения их, то простит и вам Отец ваш Небесный (Мф 6, 14) |
||||
![]() |
|
||||
Снаружи? Это как?
|
||||
![]() |
|
||||
Да... Такого я совсем не ожидал
![]() Попробую на реальном блоке, и с моими задачами. Спасибо! Но в описании блока эти изменения не сохраняются? Только в конкретном вхождении? Может быть еще подскажете, как вставить в атрибут масштабный коэффициент (масштаб) лейаута, печати? У меня Plotscale показывает какие-то странные значения масштабов, и в разных блоках они свои, разные. Последний раз редактировалось АлексЮстасу, 18.11.2010 в 04:13. |
||||
![]() |
|
||||
Цитата:
Цитата:
__________________
14 Ибо если вы будете прощать людям согрешения их, то простит и вам Отец ваш Небесный (Мф 6, 14) |
||||
![]() |
|
||||
|
||||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,432
|
Хранится не вхождение, а описание блока. Которое и импортируется в текущий файл после вызова инструмента.
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Цитата:
Если вставить (insert) такой блок еще раз, то значения атрибутов будут другие или даже некорректные. Под "хранением" в данном случае понимается неудаление из файла вхождения этого блока с модифицированными атрибутами. Или в палитре. Эта необычность меня и настораживает. |
||||
![]() |
|
||||
Работаю с таким образом модифицированным блоком уже 2 года. Это отметки с полями, где ссылка в цифре отметки отсчитывается от координаты другого блока (Якорь-0,000).
Проблем никаких нет, когда все вставляется через палитру. В рабочем файле хранить блок не нужно. Нужно грамотно организовать работу с палитрой. Да хоть делать ссылку по 1 варианту, она перестает работать после _insert. Так что тут только палитра, в любом случае. Да и у тебя всегда есть возможность не использовать поля, а забивать 2 раза вручную)))
__________________
14 Ибо если вы будете прощать людям согрешения их, то простит и вам Отец ваш Небесный (Мф 6, 14) Последний раз редактировалось wetr, 19.11.2010 в 05:23. |
||||
![]() |
|
||||
Регистрация: 09.01.2010
Сообщений: 36
|
Помогите разобраться что за хрень получается:
создаю блок, вхожу в редактор блока, назначаю атрибуты, 1 - по умолчанию,2 - вставляю в атрибут поле со ссылкой на 1 атрибут, сохраняю блок, пробую вставить - в 1 атрибут заношу нужное мне, регенерирую, 2 атрибут не изменяется. Что не так делаю, или это в переменных Када че не так. |
|||
![]() |
|
||||
Цитата:
|
||||
![]() |
|
||||
Как в http://forum.dwg.ru/showpost.php?p=5...postcount=1742 удается сделать? Это если нужно просто зависимые атрибуты.
Как в видео из #14 не получается? Это если нужно использовать значение другого атрибута в формуле. |
||||
![]() |
|
||||
|
||||
![]() |
|
||||
Vildar - да, я не там искал.
У меня, тоже такое было, что в новом блоке не считывает значение из другого атрибута - и все. Но потом как-то получалось. А сейчас тоже опять не выходит никак. Причем, взял файл с блоком-примером из http://forum.dwg.ru/showpost.php?p=5...postcount=1742. Блок работает, значение второй атрибут считывает из первого. Но если я вставляю этот же блок еще раз, то не считывает. А если исходный блок просто копирую, то считывает. |
||||
![]() |
|
||||
AutoCAD Регистрация: 26.07.2007
Москва
Сообщений: 1,064
|
vade, ты бы темы, по этому вопросу, почитал.
Ссылка (через поле) на другой атрибут работает только в том вхождении блока, для которого проделана эта операция, через редактор атрибутов. А не вредакторе блоков. И именно такой блок, нужно кидать на палитру (желательно, предварительно сохраниться). Фух... |
|||
![]() |
|
||||
Инж. ПКО Регистрация: 26.11.2008
Красноярск
Сообщений: 23
|
Удалось кому нибудь решить этот вопрос?
В примере видео Насколько я понял проблема связанна с ObjId: В первом случае, когда создаешь связи внутри блока ссылка на объект следующая %<\AcObjProp Object(%<\_ObjId 2130171040>%).TextString>% т.е это поле значения по умолчанию. Если уже в созданном блоке переопределяешь ссылки значение уже другое и оно уже не сбивается и работает как часы. %<\AcObjProp Object(%<\_ObjId 2130171328>%).TextString>% Как решить данную проблему? может программно? Детальное описание проблемы при работе с атрибутами и ссылками между этими атрибутами в блоках: Для примера возьмем блок с клеммником. В реальности клеммник на 20 клемм на данном блоке будет использоваться допустим первые 4, в следующем другие 4 (вставляем блок задаём начать с 5 и он автоматом забивает нужные значения) и так пока клеммник не закончится. В приложенном dwg файле Вариант 1 - когда ссылки в атибутах работают и блок мы ещё не создали. Вариант 2 мы создаём из этих атрибутов блок и ссылки перестают работать продолжая ссылаться на значения по умолчанию тех атрибутов которые находятся внутри блока, а их мы естественно просто так поменять, редактируя только атрибуты блока не сможем, поэтому пересчёт не ведётся. Вариант 3 мы вставили блок и перезадали ссылки на данные атрибуты через редактор атрибутов - всё работает, но отпадает всякий смысл в использовании атрибутов. Решить данную проблему я вижу например таким образом: Заменить значения по умолчанию внутри блока в соответствии с теми атрибутами которые забиваем в редакторе атрибутов. Но как программно это реализовать не представляю :-( Последний раз редактировалось Lioon, 04.02.2011 в 11:31. |
|||
![]() |
|
||||
Инж. ПКО Регистрация: 26.11.2008
Красноярск
Сообщений: 23
|
Доброго всем дня.
Наткнулся здесь же на форуме на одну идейку (к сожалению не вспомню где), но считаю что это один из наиболее легко осуществимых способов решения описаной в данной теме проблемы. Цитата:
P.S. кому удасться решить эту проблему другим способом, возможно программно - респект и глубокая благодарность ![]() |
|||
![]() |
|
||||
Я знаю эту идею от wetr - см. №16, 20 и пр. в этой же теме.
|
||||
![]() |
|
||||
нефтепереработка Регистрация: 17.11.2009
Мозырь, Республика Беларусь
Сообщений: 77
|
Здравствуйте. Разбирался с похожей проблемой. Блок строительной оси с двумя атрибутами номер оси с одной стороны и с другой стороны, равный первому. Наткнулся на такой блок осей Паши Лукьянченко (pasha-sevkav). У него все работает. Пытался разобраться почему у него работает, а у меня нет. Разобрался. Оказалось, если атрибут, в котором расположено поле, при вставке блока "невиден" из-за параметра видимости или при вставке виден, а потом его сделали невидимым, то при его включении поле будет работать и обновляться. Как то так. Значит, главное чтобы атрибут с полем хоть один раз был скрыт параметром видимости.
Последний раз редактировалось 99xt1, 28.04.2011 в 14:37. |
|||
![]() |
|
||||
HVAC (ОВК) Регистрация: 08.10.2005
Ukraine, L'viv
Сообщений: 822
|
Цитата:
Но все равно я не пойму, как в видео все работает (http://forum.dwg.ru/showpost.php?p=654908&postcount=69), а в файле нет. Ведь в видео показано, поля вставляются в редакторе блока, и сразу после его закрытия, сам блок рабочий.
__________________
Nothing will stop an idea whose time has come |
|||
![]() |
|
||||
Проектирование Регистрация: 01.09.2009
Сообщений: 19
|
Проблема сабжа имеет место быть. Проделал как на видео - зависимый атрибут не обновляется. Решение http://forum.dwg.ru/showpost.php?p=742901&postcount=40 мне не помогло, хотя скаченный файл (оси) работает. Если у кого-то работает, а у кого-то нет, то это глюк, который накладывает существенные ограничения на использование дин.блоков. Использование подстановки не внутри, а снаружи редактора блока с последующей установкой в палитру не рассматриваю как вариант
ps использую Atocad Map 2011 |
|||
![]() |
|
||||
Конструктор Регистрация: 11.11.2011
Сообщений: 284
|
Не хочется тему новую открьівать,тем более ,что вопрос близок по теме...
Можно ли считьівать определенную часть текста/атрибута итд в поле. К примеру, у меня есть произвольньій текст , и я хочу достать из него символьі ,скажем с пятого по десятьій, и поместить их в поле. |
|||
![]() |
![]() |
|
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
LISP. Вставка в таблицу поля, соотвествующего площади примитива | Profan | Готовые программы | 272 | 06.06.2021 23:12 |
можно ли сделать постоянными параметры (размеры, текст, слои) | Владимир Кереб | AutoCAD | 46 | 25.12.2008 16:08 |
Мониторы LCD CRT | Разное | 94 | 17.06.2008 10:51 | |
Многострчный текст атрибута | gizmo_zx | AutoCAD | 4 | 05.06.2008 14:41 |
ЮМОР 2006 =) | Perezz!! | Разное | 1122 | 04.01.2007 00:46 |