|
||
| Правила | Регистрация | Пользователи | Поиск | Сообщения за день | Все разделы прочитаны | Справка по форуму | Файлообменник | |
|
Поиск в этой теме |
|
||||
Регистрация: 20.02.2015
Сообщений: 79
|
kp+, спасибо огромное, работает! Обновление атрибутов совсем не обязательно. Это вполне можно опустить. Но если возможно, еще одна просьба, для логического завершения этой опции. Как-бы сделать лиспом скрытие заднего плана в связке с преобразованием в многострочник? Такое возможно? Пусть и без _attsync. Спасибо!
|
|||
|
||||
идущий по граблям Регистрация: 26.05.2005
Сообщений: 5,091
|
Оно категорически противопоказано
Цитата:
вот моя деревянная телега с его реактивным двигателем адаптированная версия: Код:
|
|||
|
||||
Сделайте под однострочным атрибутом (под чем нужно) в блоке маскировку-wipeout, и два состояния видимости - с маской и без. И включайте-отключайте маскировку на здоровье и Ваше, и атрибутов, и блоков, сколько и когда нужно. Никакой _attsync при этом не помешает.
__________________
количество моих сообщений не говорит о знании Автокада |
||||
|
||||
Регистрация: 20.02.2015
Сообщений: 79
|
|
|||
|
||||
Цитата:
Объясните, почему зло?
__________________
количество моих сообщений не говорит о знании Автокада |
||||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,787
|
Цитата:
Как правило, "слет" обуславливается строго определенными действиями пользователя. Частично я разбирал это здесь: http://autolisp.ru/2013/09/18/draworder-inside-blocks/
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Регистрация: 10.08.2013
Сообщений: 11,009
|
Цитата:
|
|||
|
||||
Редко и у нас маски закрывали нужные элементы. Почти всегда лечилось аудитом.
Да, правильность порядка отображения заложена в порядке создания маски и ее текста или пр. Сначала маску, а потом соотв. атрибут или пр. Соглашусь с еще неназванным недостатком, что у маскировки нет такого замечательного свойства, как у скрытия заднего плана многострочных текстов-атрибутов - размер маскировки для текстов разной длины нуждается в редактировании вручную. Есть другой вариант: сделать в блоке два атрибута - многострочный со скрытым задним планом и однострочный, но с пр. одинаковыми свойствами, и состояния видимости - с "маской", т.е. многострочный и без, однострочный.
__________________
количество моих сообщений не говорит о знании Автокада |
||||
|
||||
Регистрация: 20.03.2008
Сообщений: 2,653
|
Цитата:
Я бы все же пошел по пути АлексЮстасу - сделал бы динамический блок с двумя видимостями и менял бы видимость программно у выбранных (множественно - хоть рамкой, хоть кликом) блоков. Все коды для этого на форуме уже есть. |
|||
|
||||
Во-первых, я попробовал сделать блоки с многострочными атрибутами. Где атрибут считывает Z своего блока - как раз для геодезических отметок. Раньше многострочные никогда не делал. То ли я их не умею готовить, то ли с многострочными что-то по жизни не так, но в таких атрибутах поля у меня при вставке блоков работают через раз. Сделал - работают. Закрыл файл, открыл - вставляются, но вместо значения атрибута пишет название поля "InsertionPoint". И в 2012-м и в 2016-м. С однострочными такого за многие годы не наблюдалось.
Во-вторых, беру частично свои слова обратно, т.к. можно проще - достаточно одного атрибута со скрытым фоном, и не нужно никакого определения видимости. Зачем вообще два варианта? Если скрывать нечего, то и скрытие фона не мешает. Если есть что скрывать - он и скроет. А по поводу адских маскировок=вайпаутов - если блок правильно сделан, то ничто никуда не налезает и не съезжает. Мистики с маскировками в блоках не наблюдал, хотя таких блоков понаделал предостаточно - сотни, и пользовались ими интенсивно десятки людей лет десять.
__________________
количество моих сообщений не говорит о знании Автокада |
||||
|
||||
Регистрация: 12.03.2013
Сообщений: 650
|
Не понятно в чем проблема преобразования однострочного атрибута в многострочный - в свойствах жи просто поставить Да напротив "Несколько строк"
Или я просто тему не понял А вот наобот бы - многострочный в однострочный без создания нового атрибута преобразовать видимо нельзя |
|||
|
||||
идущий по граблям Регистрация: 26.05.2005
Сообщений: 5,091
|
В коде из #14 :vlax-true заменить на :vlax-false, и все получится. Только что проверил. С теми же оговорками:
- работает только для отдельно взятых экземпляров атрибутов; - после _attsync "многострочность" атрибутов возвращается к исходному состоянию. Без _attsync чуда не будет, как ни проводи эту операцию - хоть через редактор блоков, хоть через диспетчер атрибутов (_battman). А насколько разрушительны иногда результаты _attsync - думаю, Вы не хуже меня знаете. Последний раз редактировалось kp+, 20.06.2019 в 16:14. |
|||
|
||||
Регистрация: 12.03.2013
Сообщений: 650
|
Супер то что надо. Спасибо!
----- добавлено через ~10 мин. ----- Цитата:
Т.е. все как надо. Спасибо. Давно искал такую команду |
|||
|
||||
Регистрация: 05.07.2007
Санкт-Петебург
Сообщений: 103
|
Коллеги, поднимаю тему. Появилась потребность преобразования всех атрибутов всех выделенных блоков в "многострочный" с "маской".
С помощью (setq att (car (nentsel "выберите отребут"))) мы получаем уникальное имя _конкретного_ атрибута в одном указанном блоке. Получается, надо перебрать все атрибуты в наборе, полученным (ssget), получить их имя (экземпляр) аналогично nentsel и уже сделать преобразование? |
|||
|
||||
Регистрация: 05.07.2007
Санкт-Петебург
Сообщений: 103
|
Цитата:
допилил ту программу с учетом возможности указания блоков, в которых нужно сделать "многострочность" и "маску" Код:
Программа вроде работает, но почему-то сбрасывает положение атрибута, который подвергся преобразованию в mtext + mask |
|||
|
Опции темы | Поиск в этой теме |
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Запись значения в многострочный атрибут (LISP) | tujn08 | LISP | 3 | 09.06.2015 09:02 |
Многострочный атрибут блока | Нитонисе | AutoCAD | 20 | 05.12.2014 15:02 |
C# AutoCAD. Как сделать многострочный атрибут? | Sfinks7s1 | Программирование | 5 | 17.09.2013 14:22 |
Почему многострочный атрибут блока становиться в одну строку? | Alexg-12 | AutoCAD | 13 | 10.06.2013 15:58 |
Можно ли создать многострочный атрибут блока, который будет динамически растягиваться? ACAD 2007. | Vavapet | Динамические блоки | 2 | 01.03.2011 15:00 |