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

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Не могу организовать выбор примитивов (ssget)

Не могу организовать выбор примитивов (ssget)

Ответ
Поиск в этой теме
Непрочитано 22.05.2006, 16:26 #1
Не могу организовать выбор примитивов (ssget)
mmax
 
Программист широкого профиля.
 
Челябинск
Регистрация: 08.09.2005
Сообщений: 722

Код:
[Выделить все]
(setq ss_get 
      (ssget 
      (list  (cons 0 "LINE") (cons 0 "lwpolyline"))
       )
     )
Найдено 0
Возвращает nil
Как организовать выбор только линий и полилиний и ничего больше.
Если использовать фильтры по отдельности, то все работает.
Просмотров: 3502
 
Непрочитано 22.05.2006, 16:36 Re: Не могу организовать выбор примитивов (ssget)
#2
Елпанов Евгений

программист
 
Регистрация: 20.12.2005
Москва
Сообщений: 1,439
Отправить сообщение для Елпанов Евгений с помощью Skype™


Цитата:
Сообщение от mmax
Код:
[Выделить все]
(setq ss_get 
      (ssget 
      (list  (cons 0 "LINE") (cons 0 "lwpolyline"))
       )
     )
Найдено 0
Возвращает nil
Как организовать выбор только линий и полилиний и ничего больше.
Если использовать фильтры по отдельности, то все работает.
Пара вариантов, для затравки...
Код:
[Выделить все]
(setq ss_get
       (ssget
         (list
           (cons
             0
             (strcat "LINE" "," "lwpolyline")
           ) ;_  cons
         ) ;_  list
       ) ;_  ssget
) ;_  setq
(setq ss_get
       (ssget
         (list
           (cons -4 "<OR")
           (cons 0 "LINE")
           (cons 0 "lwpolyline")
         ) ;_  list
         (cons -4 "OR>")
       ) ;_  ssget
) ;_  setq
Елпанов Евгений вне форума  
 
Автор темы   Непрочитано 25.05.2006, 19:19
#3
mmax

Программист широкого профиля.
 
Регистрация: 08.09.2005
Челябинск
Сообщений: 722


Ух как, я даже не подозревал, что можно такие списки делать.

А можно такие списки составлять для ENTMAKE????
mmax вне форума  
 
Непрочитано 25.05.2006, 23:02
#4
Елпанов Евгений

программист
 
Регистрация: 20.12.2005
Москва
Сообщений: 1,439
Отправить сообщение для Елпанов Евгений с помощью Skype™


Цитата:
Сообщение от mmax
Ух как, я даже не подозревал, что можно такие списки делать.

А можно такие списки составлять для ENTMAKE????
Нет...
Елпанов Евгений вне форума  
 
Непрочитано 26.05.2006, 10:08
#5
VVA

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


Еще вариант для развития
Код:
[Выделить все]
(setq ss_get (ssget '((0 . "*LINE"))))
Выберет все, что заканчивается на LINE (LINE, POLYLINE, LWPOLYLINE, SPLINE)
VVA вне форума  
 
Непрочитано 26.05.2006, 10:17
#6
Кулик Алексей aka kpblc
Moderator

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


В общем-то фильтры в ssget формируются аналогично wcmatch, о чем честно написано в справке. Единственное отличие, по-моему, так это то, что для wcmatch играет роль регистр символов, а для ssget - нет. Но в этом до конца не уверен, т.к. постоянно пишу типы примитивов в "верхнем" варианте.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 26.05.2006, 10:39
#7
Елпанов Евгений

программист
 
Регистрация: 20.12.2005
Москва
Сообщений: 1,439
Отправить сообщение для Елпанов Евгений с помощью Skype™


Цитата:
Сообщение от kpblc
В общем-то фильтры в ssget формируются аналогично wcmatch, о чем честно написано в справке. Единственное отличие, по-моему, так это то, что для wcmatch играет роль регистр символов, а для ssget - нет. Но в этом до конца не уверен, т.к. постоянно пишу типы примитивов в "верхнем" варианте.
Да, для данного, конкретного случая можно написать очень коротко...
Код:
[Выделить все]
(setq ss_get  (ssget '((0 . "L*E"))))
Елпанов Евгений вне форума  
 
Непрочитано 26.05.2006, 10:41
#8
Елпанов Евгений

программист
 
Регистрация: 20.12.2005
Москва
Сообщений: 1,439
Отправить сообщение для Елпанов Евгений с помощью Skype™


Немного поясню фильтр - выбрать примитивы, название которых начинается на "L" и заканчивается на "E"...
Елпанов Евгений вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Не могу организовать выбор примитивов (ssget)

Реклама i