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

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

Фильтр по свойствам с исключением буквы или знака

Ответ
Поиск в этой теме
Непрочитано 03.06.2014, 16:41 #1
Фильтр по свойствам с исключением буквы или знака
sergeev_2005
 
Проектирование гражданских зданий
 
Санкт-Петербург
Регистрация: 25.03.2010
Сообщений: 90

Можно ли создать фильтр по свойствам, где в имени слоя отсутствовал бы определенный знак (буква) или набор знаков.
Вопрос, как это сделать не используя инвертирование фильтра.
Другое возможное решение вопроса, которое тоже не получается: создать фильтр по свойствам с "ненужными буквами", а затем инвертировать его.
Но печально, что после закрытия и нового открытия файла инвертирование исчезает.
А суть в том, что по умолчанию при открытии файла не хотелось бы видеть слои внешних ссылок.
Возможно ли это?
Просмотров: 5158
 
Непрочитано 03.06.2014, 17:40
#2
Кулик Алексей aka kpblc
Moderator

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


Фильтр слоев без внешних ссылок: в имени вбивай критерий и все.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 04.06.2014, 09:23
#3
sergeev_2005

Проектирование гражданских зданий
 
Регистрация: 25.03.2010
Санкт-Петербург
Сообщений: 90


Спасибо, Алексей!
А вот в справках я этого не нашёл.
Сколько же ещё таких полезных приемов существует и где их искать?
sergeev_2005 вне форума  
 
Непрочитано 04.06.2014, 09:42
#4
Кулик Алексей aka kpblc
Moderator

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


Справка разработчика, функция wcmatch
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 04.06.2014, 09:57
#5
_MUAY_THAI_

Проектировщик/Расчетчик
 
Регистрация: 07.05.2014
Ростов-на -Дону
Сообщений: 262


Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
Справка разработчика
можно сюда прикрепить ее? (только отсюда качать могу щас )
_MUAY_THAI_ вне форума  
 
Непрочитано 04.06.2014, 10:45
#6
Кулик Алексей aka kpblc
Moderator

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


Так она вместе с AutoCAD идет...
А выход на http://exchange.autodesk.com/autocad...16f8b-5913.htm есть? Конкретнее - на описание wcmatch ?
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 04.06.2014, 11:31
#7
sergeev_2005

Проектирование гражданских зданий
 
Регистрация: 25.03.2010
Санкт-Петербург
Сообщений: 90


Алексей, попробуйте. Странная вещь получается.
Этот фильтр с отрицанием "~" прекрасно работает с выпадающим списком слоев ленты.
И не работает с выпадающим списком слоев классической панели? Причем остальные фильтры по свойствам (по именам) работают.???
sergeev_2005 вне форума  
 
Непрочитано 04.06.2014, 11:49
#8
Кулик Алексей aka kpblc
Moderator

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


Эт как? У меня AutoCAD 2009 x64 Eng, AutoCAD 2013 x64 Eng, AutoCAD 2014 x64 Eng (+ Rus LangPack) - как-то подобного не замечал. В диспетчере слоев активируется фильтр - и этого достаточно.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 04.06.2014, 12:38
#9
sergeev_2005

Проектирование гражданских зданий
 
Регистрация: 25.03.2010
Санкт-Петербург
Сообщений: 90


В диспетчере слоёв фильтр активируется. А в выпадающем списке на панели "Layers" (классический вид автокада с панелями) выпадают все слои внешних ссылок.
Если используется рабочее пространство с лентой, то выпадают только отфильтрованные слои без слоёв внешних ссылок. Надо видимо попробовать такой фильтр с тильдой. Остальные-то у меня тоже работают.
sergeev_2005 вне форума  
 
Непрочитано 04.06.2014, 12:50
#10
Кулик Алексей aka kpblc
Moderator

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


Версия AutoCAD? Наличие обновлений на него?
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 04.06.2014, 12:55
#11
sergeev_2005

Проектирование гражданских зданий
 
Регистрация: 25.03.2010
Санкт-Петербург
Сообщений: 90


AutoCAD 2014 x64 Rus (+ Eng LangPack) - всё лицензионное.
sergeev_2005 вне форума  
 
Непрочитано 04.06.2014, 13:07
#12
VVA

Инженер LISP
 
Регистрация: 11.05.2005
Минск
Сообщений: 6,996


Недавно столкнулся, что в 2014 Автокаде при установленном Civil'om Object Enabler 'e команда _etransmit приводила к фатальной ошибке.
Помогло удаление и установка заново
Это я к тому, что эта проблема может быть такого же рода.
PS. Не указано, установлен ли SP1 для Автокада
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Автор темы   Непрочитано 04.06.2014, 13:36
#13
sergeev_2005

Проектирование гражданских зданий
 
Регистрация: 25.03.2010
Санкт-Петербург
Сообщений: 90


Да, SP1 установлен. Я работаю в фирме. Одна и та же картина наблюдается на всех компьютерах (точнее, на нескольких, на которых смотрел). Поэтому переустановка наверняка ничего не даст. "Ошибка" явно системная.
Кроме того и в пространстве ленты и в классическом рабочем пространстве фильтры слоев (и прямые, и с тильдой) не работают в команде быстрого выбора.
Или, может быть, всё дело в настройках, которые я не знаю?
sergeev_2005 вне форума  
 
Непрочитано 04.06.2014, 13:56
#14
Кулик Алексей aka kpblc
Moderator

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


sergeev_2005, ты что-то запутываешь. При чем тут "быстрый выбор"?
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 04.06.2014, 14:26
#15
sergeev_2005

Проектирование гражданских зданий
 
Регистрация: 25.03.2010
Санкт-Петербург
Сообщений: 90


Да, ничего я не запутываю. Говорю о том, что фильтры по свойствам прекрасно срабатывают в диспетчере слоёв, и ни фига не работают в выпадающих списках (варианты см. выше). А выпадающие списки слоёв присутствуют как на панеле слоев, так и в окне быстрого выбора. А в самом диспетчере слоёв зачем нам надо лицезреть отфильтрованные слои?
sergeev_2005 вне форума  
 
Автор темы   Непрочитано 04.06.2014, 15:05
#16
sergeev_2005

Проектирование гражданских зданий
 
Регистрация: 25.03.2010
Санкт-Петербург
Сообщений: 90


Посылаю запись фильма. Может кто-нибудь даст совет...
Вложения
Тип файла: rar ФильтрСлоев.rar (3.80 Мб, 24 просмотров)
sergeev_2005 вне форума  
 
Непрочитано 04.06.2014, 15:45
#17
Кулик Алексей aka kpblc
Moderator

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


Ха, так в этих списках (быстрого выбора) и не должно работать. С чего бы вдруг?
Кино сейчас попробую сделать, вышлю (если получится)
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 04.06.2014, 16:00
#18
Кулик Алексей aka kpblc
Moderator

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


Цитата:
Сообщение от sergeev_2005 Посмотреть сообщение
А в самом диспетчере слоёв зачем нам надо лицезреть отфильтрованные слои?
Затем, чтобы случайно не активировать ненужный слой. И для групповой работы с фильтрами.
P.S. Файл с моим кино по слоям во вложении
Вложения
Тип файла: rar LayerFilters.rar (6.32 Мб, 28 просмотров)
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 04.06.2014, 16:26
#19
sergeev_2005

Проектирование гражданских зданий
 
Регистрация: 25.03.2010
Санкт-Петербург
Сообщений: 90


Да дело, конечно, не в быстром выборе. Может, зря и приплёл. А как же всё-таки с выпадающим списком слоёв в панели слоёв (Layers)??? Ведь не работает фильтр в классике!?

----- добавлено через ~5 мин. -----
Фильм посмотрел. Убеждает. А вот у меня почему не получается? Из моего фильма это же видно - не вру. Вот эту загадку разгадал бы. Может, настройки какие?
До завтра, если ответишь. А сейчас бегу сеять разумное, доброе, вечное...
sergeev_2005 вне форума  
 
Непрочитано 04.06.2014, 16:47
#20
Кулик Алексей aka kpblc
Moderator

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


Возможно, дело в SP
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 06.06.2014, 12:01
#21
sergeev_2005

Проектирование гражданских зданий
 
Регистрация: 25.03.2010
Санкт-Петербург
Сообщений: 90


Я создавал фильтр не в диспетчере фильтров, а макрокомандой MlayerF.lsp от Kojacek http://discussion.autodesk.com/threa...sageID=1128314, которую откопал в свое время на форуме dwg.ru.
Вот в этом случае фильтр не работает на выпадающий список слоев в классике. А если вручную набить то же имя в диспетчере слоев уже созданного фильтра, то всё становится ОК!
sergeev_2005 вне форума  
 
Непрочитано 06.06.2014, 12:09
#22
Кулик Алексей aka kpblc
Moderator

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


Ну, я создавал фильтры и руками, и программно (правда, не на основе MLayer.lsp. Кстати, по ссылке лично меня "бросает" в никуда).
ИМХО: надо ковырять код или просто заменить его на те, которые на dwg.ru публиковал VVA.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 06.06.2014, 12:42
#23
sergeev_2005

Проектирование гражданских зданий
 
Регистрация: 25.03.2010
Санкт-Петербург
Сообщений: 90


Со ссылкой промахнулся. На самом деле http://forums.autodesk.com/t5/Visual...ter/m-p/843333
Не дашь ли ссылку на аналогичную программу VVA.

----- добавлено через ~50 мин. -----
Нашел ещё одну программку от Владимира Азарко http://www.caduser.ru/forum/index.ph...D=23&TID=46998, пост №7.
Результат тот же. Пока вручную название фильтра не изменишь, в выпадающем списке слои всех ссылок.

Последний раз редактировалось sergeev_2005, 06.06.2014 в 12:54.
sergeev_2005 вне форума  
 
Непрочитано 06.06.2014, 14:30
#24
Кулик Алексей aka kpblc
Moderator

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


Я бы и рад поделиться тем, что у меня есть - но там идет "завязка" на сторонние файлы настроек, где описываются создаваемые слои. А основной код - такой же, как и у всех:
Код:
[Выделить все]
(dictadd dict
                       (cdr (assoc "name" node))
                       (entmakex (list '(0 . "XRecord")
                                       '(100 . "AcDbXrecord")
                                       '(280 . 1)
                                       (cons 1 (cdr (assoc "name" node)))
                                       (cons 1
                                             (cond
                                               ((cdr (assoc "layer" node)))
                                               (t "*")
                                               ) ;_ end of cond
                                             ) ;_ end of cons
                                       (cons 1
                                             (cond
                                               ((cdr (assoc "color" node)))
                                               ((cdr (assoc "col" node)))
                                               (t "*")
                                               ) ;_ end of cond
                                             ) ;_ end of cons
                                       (cons 1
                                             (cond
                                               ((cdr (assoc "linetype" node)))
                                               ((cdr (assoc "lt" node)))
                                               (t "*")
                                               ) ;_ end of cond
                                             ) ;_ end of cons
                                       (cons 70
                                             (_kpblc-conv-value-to-int
                                               (cond
                                                 ((cdr (assoc "flags" node)))
                                                 ((cdr (assoc "fl" node)))
                                                 ) ;_ end of cond
                                               ) ;_ end of _KPBLC-CONV-VALUE-TO-INT
                                             ) ;_ end of cons
                                       (cons 1
                                             (cond
                                               ((cdr (assoc "lineweight" node)))
                                               ((cdr (assoc "lw" node)))
                                               (t "*")
                                               ) ;_ end of cond
                                             ) ;_ end of cons
                                       (cons 1
                                             (cond
                                               ((cdr (assoc "plottable" node)))
                                               ((cdr (assoc "plot" node)))
                                               (t "*")
                                               ) ;_ end of cond
                                             ) ;_ end of cons
                                       ) ;_ end of list
                                 ) ;_ end of entmakex
                       )
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 14.02.2020, 10:18
#25
Gedezuk5


 
Регистрация: 31.07.2011
Раменское
Сообщений: 185


Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
Фильтр слоев без внешних ссылок: в имени вбивай критерий и все.
Здравствуйте!
Подскажите, пожалуйста, как нужно записать код в фильтре слоев по свойствам, чтобы в него включались все слои со словом "красная" кроме тех, в которых также содержится слово "ROAD"?
Нашел лишь один оператор, который исключал бы слои - это тильда "~". Но с ним у меня никак не получается составить правильное выражение.
Скрины прикладываю.
Миниатюры
Нажмите на изображение для увеличения
Название: диспетчер.jpg
Просмотров: 8
Размер:	43.2 Кб
ID:	223112  Нажмите на изображение для увеличения
Название: фильтр.jpg
Просмотров: 10
Размер:	85.7 Кб
ID:	223113  
Gedezuk5 вне форума  
 
Непрочитано 14.02.2020, 10:31
1 | #26
Кулик Алексей aka kpblc
Moderator

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


Попробуй сделать два фильтра: например, один по имени "*красная*", второй - по имени "~*ROAD*".
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 14.02.2020, 10:49
#27
Gedezuk5


 
Регистрация: 31.07.2011
Раменское
Сообщений: 185


Пробовал так.
Тильда добавляет все слои, кроме тех, где содержится указанное слово.
Т.е. в итоге у меня появилась куча слоев, не содержащих "ROAD". Но вот слои, одновременно содержащие и "красная" и "ROAD" остались.
Полагаю, что код надо писать в одной строчке. Но пока не нашел, как именно.
Gedezuk5 вне форума  
 
Непрочитано 14.02.2020, 11:06
1 | #28
Кулик Алексей aka kpblc
Moderator

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


Я имел в виду один подчинен другому:
Миниатюры
Нажмите на изображение для увеличения
Название: 2020-02-14_11-05-46.png
Просмотров: 13
Размер:	2.9 Кб
ID:	223120  
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 14.02.2020, 11:19
#29
Gedezuk5


 
Регистрация: 31.07.2011
Раменское
Сообщений: 185


Ого! Всё получилось!
Спасибо огромное!
Даже не знал о такой функции ))).

Скажите, а есть возможность существующие фильтры перевести в подчинение какому-либо существующему фильтру? Или же сгруппировать фильтры в древовидной структуре, как в Вашем скриншоте? А то приходится пользоваться большим количеством фильтров, хочу привести их в порядок.
Gedezuk5 вне форума  
 
Непрочитано 14.02.2020, 11:22
#30
Кулик Алексей aka kpblc
Moderator

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


Цитата:
Сообщение от Gedezuk5 Посмотреть сообщение
есть возможность существующие фильтры перевести в подчинение какому-либо существующему фильтру?
По-моему, перетащить / сменить подчиненность или владельца не получится. Я бы пересоздавал, если честно. Ну или вообще все разносил по разным файлам, а в основной загонял как ссылки.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 14.02.2020, 11:25
#31
Gedezuk5


 
Регистрация: 31.07.2011
Раменское
Сообщений: 185


Тогда буду пересоздавать.
Спасибо большое за помощь!
Gedezuk5 вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > AutoCAD > Фильтр по свойствам с исключением буквы или знака



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Для чего нужны фильтры слоев?Как ими пользоваться? Aysulu AutoCAD 43 17.04.2019 10:59