Nentselp
Аналогичны функции entsel. Имеются особенности работы при выборе объектов типа «Полилиния» и «Блок».
13. ssget – формирует набор по запросу или признаку. Наиболее характерные примеры: (setq b (ssget)) – создает набор в соответствии с интерактивными действиями пользователя (как при «ручном» черчении в AutoCADе). (setq b (ssget ‘(20.0 5.0))) – создает набор из всех примитивов, проходящих через указанную точку. (setq b (ssget “_w” ‘(20.0 5.0) ‘(205.0 292.0))) – создает набор из примитивов, выбираемых рамкой с углами в указанных точках. (setq b (ssget “_c” ‘(20.0 5.0) ‘(205.0 292.0))) – создает набор из примитивов, выбираемых секущей рамкой с углами в указанных точках. (setq b (ssget “_x” ‘((0. “Line”)))) – создает набор из всех примитивов, являющихся объектами типа “Line”.
Для формирования сложных условий применяются точечные пары с DXF-кодом -4. В них используются аналоги логических операторов AND, OR, NOT и операторов сравнения. (setq b (ssget “_x” ‘((-4. “<or”) (0. “Arc”) (0. “Circle”) (-4. “or>”)))) –создает набор из примитивов, являющихся объектами типа “Arc” или “Circle”.
(setq b (ssget “_x” ‘((0. “Line”) ‘(-4. “>=”) ‘(370. 100)))) – создает набор из линий, которые имеют значение веса, большее или равное 1,00 мм (в DXF-коде 370 хранятся веса, представленные числами в 100 раз больше).
14. ssadd – добавляет примитив в набор. (ssadd a b) – добавляет примитив a в набор b.
15. ssdel – удаляет примитив из набора. (ssdel a b) – удаляет примитив a из набора b.
16. sslength – вычисляет длину набора (количество примитивов). (setq d (sslength b)) – длина набора b сохранится в переменной d.
17. ssmemeb – проверка вхождения примитива в набор. (setq d (ssmemb a b)) – в переменной d сохранится значение примитива a, если он входит в набор b, или nil в противном случае.
18. ssname – извлечение примитива из набора по порядковому номеру. (setq d (ssname набор номер))
19. ssnamex – извлечение примитива из набора по порядковому номеру. При этом выдается дополнительная информация о методах, с помощью которых набор был сформирован.
20. sssetfirst – включает ручки у примитивов, входящих в набор, и подсвечивает их пунктиром (что означает выбор их для следующей операции редактирования). (sssetfirst nil набор) По синтаксису языка, на месте константы nil может стоять другой набор. Однако, начиная с версии AutoCAD 2004, с ним ничего не происходит, поэтому имеет смысл в качестве первого аргумента функции sssetfirst использовать только nil.
|