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

Вернуться   Форум DWG.RU > Программное обеспечение > AutoCAD > Как автоматически преобразовать однострочный атрибут в многострочный?

Как автоматически преобразовать однострочный атрибут в многострочный?

Ответ
Поиск в этой теме
Непрочитано 12.03.2017, 12:19 #1
Как автоматически преобразовать однострочный атрибут в многострочный?
config
 
Регистрация: 20.02.2015
Сообщений: 79

Всем здравствуйте! Подскажите пожалуйста, существует ли в природе штатная команда или *.lisp автоматического преобразования однострочного атрибута в многострочный. В идеале, в сочетании, осуществить бы, у преобразованного атрибута, скрытие заднего плана. Это просто необходимо при использовании в геодезии блоков в виде точек. Спасибо!
Просмотров: 10143
 
Непрочитано 12.03.2017, 12:42
#2
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,787


Заходишь в редактор блоков, выделяешь атрибут и в свойствах устанавливаешь многострочный - да.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 12.03.2017, 13:34
#3
config


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


Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
Заходишь в редактор блоков, выделяешь атрибут и в свойствах устанавливаешь многострочный - да.
Да, спасибо, этим методом я и пользуюсь. Немного "разверну свое повествование". Допустим, имеется топоплан с 1000 точками, представленными в виде блоков с атрибутами. Некоторые точки, а точнее атрибуты (предположим, несколько десятков), перекрывают нужные для отображения объекты. В таком случае, я по ходу редактирования, копирую эти блоки в новый чертеж, переименовываю, преобразовываю и вставляю обратно с исходными координатами. Так, вот, чтобы несколько уменьшить эти "телодвижения" и "прыгания" с чертежа в чертеж, и хотелось бы несколько усовершенствовать эту методу. Как я себе представляю, с помощью лиспа , например, Подготовка подосновы, переименовываю нужный блок, а вот дальше - загвоздка. Вот на этом этапе и хотелось бы, чтобы в этом же чертеже, преобразовать однострочные атрибуты в многострочные и выполнить скрытие заднего плана. Прощупал ToolPac, Express Tools, искал на форуме. Увы...
config вне форума  
 
Непрочитано 12.03.2017, 14:48
#4
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,787


1000 точек - это 1000 вхождений или 1000 разных блоков? Если первое - то меняешь один раз, потом _.attsync
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 12.03.2017, 15:20
#5
sertor

Геодезист
 
Регистрация: 23.05.2012
Ухта
Сообщений: 1,374


Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
1000 точек - это 1000 вхождений или 1000 разных блоков? Если первое - то меняешь один раз, потом _.attsync
Блоки-то одноименные, а вот скрытие заднего плана нужно делать для части из них.

----- добавлено через 37 сек. -----
Я так понял из написанного.
__________________
Как-то так.
sertor вне форума  
 
Автор темы   Непрочитано 12.03.2017, 15:27
#6
config


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


Цитата:
Сообщение от sertor Посмотреть сообщение
Блоки-то одноименные, а вот скрытие заднего плана нужно делать для части из них.
Да, с переименованием.
config вне форума  
 
Непрочитано 12.03.2017, 19:20
#7
trir


 
Регистрация: 18.12.2010
Сообщений: 5,047


В Civil 3D это делается гораздо проще...
trir вне форума  
 
Автор темы   Непрочитано 12.03.2017, 19:39
#8
config


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


Цитата:
Сообщение от trir Посмотреть сообщение
В Civil 3D это делается гораздо проще...
Ума не приложу как? Вы имеете ввиду Map 3D? Понимаю, что не по теме, но все же, если можно, объясните чуть подробнее. Или укажите источник, где можно почитать.
config вне форума  
 
Непрочитано 12.03.2017, 19:41
#9
trir


 
Регистрация: 18.12.2010
Сообщений: 5,047


В Civil 3D для этого есть cogo-точки, их можно разделять на группы и назначать им стили для отображения
trir вне форума  
 
Автор темы   Непрочитано 12.03.2017, 19:52
#10
config


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


Цитата:
Сообщение от trir Посмотреть сообщение
В Civil 3D для этого есть cogo-точки, их можно разделять на группы и назначать им стили для отображения
Спасибо, с этим я курсе. Но главная моя задача - скрытие заднего плана в атрибутах блока.
config вне форума  
 
Непрочитано 12.03.2017, 19:55
#11
trir


 
Регистрация: 18.12.2010
Сообщений: 5,047


у cogo-точки кажется можно настроить скрытие заднего плана для текста в метке
trir вне форума  
 
Автор темы   Непрочитано 12.03.2017, 20:10
#12
config


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


Цитата:
Сообщение от trir Посмотреть сообщение
у cogo-точки кажется можно настроить скрытие заднего плана для текста в метке
Да, спасибо, этого не знал. Но к сожалению, величина этой границы закреплена жестко и не регулируется. А по-умолчанию, она слишком велика и перекрывает соседние объекты. В чистом AutoCAD это реализовано, на мой взгляд, более гибко.
config вне форума  
 
Непрочитано 13.03.2017, 08:10
#13
trir


 
Регистрация: 18.12.2010
Сообщений: 5,047


Цитата:
величина этой границы закреплена жестко и не регулируется
чушь, "Промежуток" можно установить в 0 и тогда граница идёт уже по буквам
trir вне форума  
 
Непрочитано 13.03.2017, 14:32
#14
kp+

идущий по граблям
 
Регистрация: 26.05.2005
Сообщений: 5,090


Я так понял, надо "придать многострочность" отдельно взятым атрибутам отдельно взятых блоков?
Тогда (для единичных атрибутов):
Код:
[Выделить все]
 (defun c:sa2ma ()
       (vla-put-mtextattribute (vlax-ename->vla-object (car (nentsel "выберите отребут"))) :vlax-true)
)

Последний раз редактировалось kp+, 13.03.2017 в 14:37.
kp+ вне форума  
 
Непрочитано 13.03.2017, 14:42
#15
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,787


kp+, думаешь, сработает? Со вхождением-то атрибута?
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 13.03.2017, 15:01
#16
kp+

идущий по граблям
 
Регистрация: 26.05.2005
Сообщений: 5,090


Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
kp+, думаешь, сработает? Со вхождением-то атрибута?
Проверял, получилось
kp+ вне форума  
 
Непрочитано 13.03.2017, 15:08
#17
trir


 
Регистрация: 18.12.2010
Сообщений: 5,047


Цитата:
Проверял, получилось
а что будет, если обновить блоки через _battman?
trir вне форума  
 
Непрочитано 13.03.2017, 15:08
#18
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,787


Ух ты! Но не дай боже запустить после этого _.attsync
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 13.03.2017, 15:21
#19
kp+

идущий по граблям
 
Регистрация: 26.05.2005
Сообщений: 5,090


Цитата:
Сообщение от trir Посмотреть сообщение
а что будет, если обновить блоки через _battman?
Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
Но не дай боже запустить после этого _.attsync
Грешным делом попробовал. Ничего страшного не произошло. Акад не упал. Всего лишь атрибут утратил многострочность, при этом сохранив содержимое (только без кодов форматирования Мтекста).
kp+ вне форума  
 
Непрочитано 13.03.2017, 15:28
#20
trir


 
Регистрация: 18.12.2010
Сообщений: 5,047


в принципе программно можно на вхождения вешать какие угодно атрибуты, даже на блоки в принципе без атрибутов, но это до первого _.attsync
trir вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > AutoCAD > Как автоматически преобразовать однострочный атрибут в многострочный?

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Запись значения в многострочный атрибут (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