|
||
| Правила | Регистрация | Пользователи | Сообщения за день | | Поиск | | Справка по форуму | Файлообменник | |
|
![]() |
Поиск в этой теме |
![]() |
#1 | |
Объединение слоёв для блоков
Регистрация: 24.10.2007
Сообщений: 108
|
||
Просмотров: 7094
|
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,404
|
laywalk?
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Регистрация: 24.10.2007
Сообщений: 108
|
Со срабатываним немного разобрался. Тут появляется другой вопрос: -Как сделать выбор удаляемых слоёв более удобным? Ползти в стандартном окошке по сотне строк в поиске нужных довольно муторно, а какие-то фильтры или перегруппировки в этом окошке вроде не предусмотрены.
|
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Нарисуй в сторонке отрезки, и назначь им удаляемые слои. Потом выбирай не по имени, а объекты
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,404
|
Тогда уж искать тему "НОрмализация блоков"
![]()
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Цитата:
_LAYTRANS (Транслятор слоев) тебе в руки Есть еще это Массовое переименование слоев в группе файлов
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Регистрация: 24.01.2017
Сообщений: 125
|
так как решить задачу с учетом вот этого? у меня 22 блока XREF1...22, в каждом 34 слоя, то есть, 748 слоев. Слои отличаются первыми 5-6 символами, остальное всё одинаковое. Как объединить эти слои, что о сталось 34?
----- добавлено через ~2 мин. ----- 700+ кликов - дело неблагодарное ----- добавлено через ~3 мин. ----- https://forum.dwg.ru/showthread.php?t=21492 - вот эта тема? ничего полезного не нашёл ((( ----- добавлено через ~4 мин. ----- Цитата:
|
|||
![]() |
|
||||
Инженер-проектировщик Регистрация: 07.07.2016
Санкт-Петербург
Сообщений: 759
|
|
|||
![]() |
|
||||
Регистрация: 24.01.2017
Сообщений: 125
|
Цитата:
|
|||
![]() |
|
||||
Регистрация: 24.01.2017
Сообщений: 125
|
не могу найти. у меня должно остаться 34 слоя, по крайней мере, очень желательно, что б осталось 34. это - планы, которые иногда обновляются. и в них множество "вредной" информации. но есть и много полезной. часть приходится удалять слоями, часть через поиск (например, слой с экспликацией помещений совпадает с слоем с экспликацией полов, первое мне нужно, а второе - нет).
вообще, если я пытаюсь что-то сделать этой командой со всеми слоями, то окошко закрывается "Команда: BGBLFIX Настройка переменной AutoCAD отвергнута: "CMDECHO" nil" что-то делать частями - можно, если этих частей будет мало. |
|||
![]() |
|
||||
Инженер-проектировщик Регистрация: 07.07.2016
Санкт-Петербург
Сообщений: 759
|
Может это поможет?
http://www.lee-mac.com/pslay.html |
|||
![]() |
|
||||
Регистрация: 14.09.2020
Санкт-Петербург
Сообщений: 395
|
Подумал, что достаточно просто можно переименовать слои через экспорт названий в эксель, вроде как логика работает, но столкнулся со следующей сложностью:
если запустить команду rename через минус: -ren LA то Акад ждет ввода имени слоя, и все известные мне знаки энтера (типо пробела, точки с запятой или символ(10) из экселя) он не воспринимает как завершение ввода. Штудировать книгу Света "Язык макрокоманд" ни времени, ни желания нет. Коллеги, подскажите, можно ли что-то подставить в текстовую строку, чтобы акад воспринял этот символ в данном случае как энтер? |
|||
![]() |
|
||||
Регистрация: 24.01.2017
Сообщений: 125
|
Цитата:
чего я боялся, то и произошло - один слой мы нормально переименовываем, а следующий говорит, что такой слой уже существует и не переименовывает Последний раз редактировалось koui, 19.01.2023 в 16:56. |
|||
![]() |
|
||||
Регистрация: 14.09.2020
Санкт-Петербург
Сообщений: 395
|
koui, можете попробовать жутко колхозное, но вроде бы рабочее решение.
Суть в получение двух готовых сформированных команд, которые нужно просто вставить в командную строку. У меня вся эта страсть сработала, но акад должен быть английским. Копировать и вставлять нужно очень четко, именно теми сочетаниями, которые указаны ниже (это не всегда принципиально, но иногда - важно не упустить ни одного энтера). Для этого: 1. Открываете менеджер слоев по Layer, выделяете все слои ctrl+a , копируете ctrl+c 2. Вставляете в любой пустой лист экселя, копируете из него только столбик с названиями слоев, вставляете этот столбик в приложенную таблицу в красный столбик, все остальные названия слоев, которые для примера - удаляете 3. Отфильтровываете желтый столбик, оставив только непустые ячейки, копируете этот столбик в Word, в Word заменяете через ctrl+h символ кавычки " на пустую строку. 4. То, что получилось в Word, выделяете через ctrl+A, затем ctrl+c и вставляете в командную строку автокада. На этом действии каждый первый экземпляр слоев из вставленного xref, которого еще не было в исходном файле, будет переименован (т.е. из названия будет убран префикс). 5. Убираем фильтр из желтого столбца. 6. Аналогичные действия выполняем с зеленым столбцом - фильтруем непустые, копируем отфильтрованное в Word, в Word заменяем кавычку " на пустую строку, выделяем все через ctrl+A (тут важно выделить все знаки), копируем и вставляем в автокад, идем пить чай, ибо процесс идет не так уж быстро. В моем файле вся эта страсть успешно устранила все слои без видимой потери примитивов, но проверял я бегло, так что лучше потестируйте. |
|||
![]() |
|
||||
Возможно поможет
https://doctorraz.blogspot.com/2016/...ename.html?m=1
__________________
Мастерская СПДС |
||||
![]() |
|
||||
Регистрация: 24.01.2017
Сообщений: 125
|
|
|||
![]() |
|
||||
Регистрация: 24.01.2017
Сообщений: 125
|
|
|||
![]() |
|
||||
Эксель или ворд стоит жэж, там есть vba
__________________
Мастерская СПДС |
||||
![]() |
|
||||
Регистрация: 14.09.2020
Санкт-Петербург
Сообщений: 395
|
Какой важный курица.
koui, у вас акад русский или английский? Команды для них нужны разные. Что касается VBA - можно админа попросить временно поставить VBA, можно поставить VBA сисадмину, можно взять работу флешку и сделать это дома, можно приложить на форум перечень ваших слоев и получить взамен текст двух команд, которые нужно просто вставить в комстроку. Вы то сами заинтересованы не щелкать мышкой 700 раз? |
|||
![]() |
|
||||
Регистрация: 24.01.2017
Сообщений: 125
|
Цитата:
|
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,404
|
Не совсем: https://autolisp.ru/2010/03/04/localization/
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
![]() |
|
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
LISP. Очистка рисунка от "пустых" блоков | Makswell | Готовые программы | 15 | 26.10.2022 15:24 |
Можно ли выполнить проверку слабых слоёв основания и подстилающих слоёв в ФОК ПК ПАРУС? | МишаИнженер | Расчетные программы | 10 | 03.10.2011 14:07 |
Тормозит команда расчленения набора блоков | batmax | Программирование | 4 | 31.08.2010 17:37 |
Подсчет и сортировка блоков на текущем слое. Помогите отредактировать. | Kortes | Программирование | 17 | 26.03.2010 18:46 |