1. Почему не получается выбрать блоки (setq ss (ssget "_X" '((0 . "insert") (8 . LayerTrassa) (62 . ColorTrassa) (-3 ("PE_URL")))))Наверное потому, что вы недостаточно знаете lisp.
Если цвет выбранного примитива установлен "ПоСлою", то ColorTrassa будет равна nil. Для фильтрации (если не ошибаюсь) надо устанавливать ColorTrassa в 256Цвет примитивов задан не "ПоСлою", он задается свой для каждой линии и блоков, расположенных вдоль этой линии. Ваш код также не работает. Если убрать выбор по слою и по цвету, то выбор выполняется. Мне надо выбрать блоки, которые расположены непосредственно по указываемой линии. Не хочется перебирать кучу ненужных блоков. Ну, да ладно с этими слоями и цветом, в принципе блоков, содержащих гиперссылку, не так много. Как мне отобрать из полученного набора блоки, которые содержат нужную гиперссылку? В выше приведенном мною коде что-то не получается.
Кха, я не обратил внимания - а что будет, если вместоНе работает. :(Код - Auto/Visual Lisp [Выбрать]сделать
(setq ss (ssget "_X" (list '(0 . "insert") (cons 8 LayerTrassa) (cons 62 (cond(ColorTrassa) (t 256))) '(-3 ("PE_URL")))))Код - Auto/Visual Lisp [Выбрать]
(setq ss (ssget "_X" (list '(0 . "insert") (cons 8 LayerTrassa) (cons 62 (cond(ColorTrassa) (t 256))) (-3 ("PE_URL")))))
Не работает. :(Ну тогда так:
Укажите трассу >
** Error: неверная функция: "PE_URL" **
Ну тогда так:Так тоже не получается:
Код - Auto/Visual Lisp [Выбрать]
(setq ss (ssget "_X" (list '(0 . "insert") (cons 8 LayerTrassa) (cons 62 (if ColorTrassa ColorTrassa 256)) '(-3 ("PE_URL")))))
Ну, да ладно с этими слоями и цветом, в принципе блоков, содержащих гиперссылку, не так много. Как мне отобрать из полученного набора блоки, которые содержат нужную гиперссылку? В выше приведенном мною коде что-то не получается.
Для меня важнее следующее:А-ха-ха! Зачем я в третьей строке делал обнуление? Убрал эту строку, всё работает! (Естественно без выбора LayerTrassa и ColorTrassa).
Цитата: 1958 от 15-03-2021, 18:32:57
Ну, да ладно с этими слоями и цветом, в принципе блоков, содержащих гиперссылку, не так много. Как мне отобрать из полученного набора блоки, которые содержат нужную гиперссылку? В выше приведенном мною коде что-то не получается.