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

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > LISP > Lisp. Выбор динамических блоков с атрибутам скопом.

Lisp. Выбор динамических блоков с атрибутам скопом.

Ответ
Поиск в этой теме
Непрочитано 26.05.2013, 17:30
Lisp. Выбор динамических блоков с атрибутам скопом.
Kirill_Ja
 
Мурманск
Регистрация: 28.07.2008
Сообщений: 208

Итак снова про динамические блоки.
Есть задача выделить все блоки с определенным именем на чертеже.
Первая мысль была

(ssget "_X" (list (cons 0 "INSERT") (cons 2 <имя>)))

пока не вспомнил, что блоки динамические.

Есть какое-нибудь решение более элегантное, чем выбрать все блоки с именами, начинающимися со звездочки
и потом у каждого проверить EffectiveName?
Просмотров: 12229
 
Непрочитано 26.12.2017, 14:22
#21
Doctor_Che


 
Регистрация: 27.10.2015
Сообщений: 18


Подскажите пожалуйста как выбор блоков из поста #6 добавить к выбору линий.

Пытаюсь сделать так:
Код:
[Выделить все]
       (ssget                        
        '(   
          (-4 . "<OR")
            
            (-4 . "<AND")
              (0 . "ARC,ELLIPSE,LINE,*POLYLINE,SPLINE")  ; берём объекты с выбором
              (-4 . "<NOT")
                  (-4 . "<AND")
                      (0 . "POLYLINE") (-4 . "&") (70 . 80)
                  (-4 . "AND>")
              (-4 . "NOT>")
            (-4 . "AND>")  
            
            (-4 . "<AND")
              (0 . "INSERT")
              (2 . (LM:BlockList->Str (cons "Имя_Блока" (AnonymousInstancesof "Имя_Блока")) ","))
              (66 . 1)
            (-4 . "AND>")
        
          (-4 . "OR>")
        )

      ) ; end ssget
но не работает. Говорит "неверное значение списка SSGET".

Изначальный текст выглядел так:
Код:
[Выделить все]
       (ssget                        
        '(   (0 . "ARC,ELLIPSE,LINE,*POLYLINE,SPLINE")  ; берём объекты с выбором
             (-4 . "<NOT")
                 (-4 . "<AND")
                     (0 . "POLYLINE") (-4 . "&") (70 . 80)
                 (-4 . "AND>")
             (-4 . "NOT>")
         )
      ) ; end ssget
Заработало
Код:
[Выделить все]
       (ssget                        

        (list
          (cons -4 "<OR")
            
            (cons -4 "<AND")
              (cons 0 "INSERT")
              (cons 2 (LM:BlockList->Str (cons "Имя_Блока" (AnonymousInstancesof "Имя_Блока")) ","))
              (cons 66 1)
            (cons -4 "AND>")

            (cons -4 "<AND")
              (cons 0 "*LINE")
              (cons -4 "<NOT")
                (cons -4 "<AND")
                  (cons 0 "POLYLINE")
                  (cons -4 "&")
                  (cons 70 80)
                (cons -4 "AND>")
              (cons -4 "NOT>")
            (cons -4 "AND>")
          
          (cons -4 "OR>")
        )

      ) ; end ssget

Последний раз редактировалось Doctor_Che, 28.12.2017 в 11:45. Причина: Нашёл решение
Doctor_Che вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > LISP > Lisp. Выбор динамических блоков с атрибутам скопом.

Размещение рекламы
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
LISP. Очистка рисунка от "пустых" блоков Makswell Готовые программы 15 26.10.2022 15:24
Выбор динамических блоков по значению линейного параметра aso3 Программирование 30 26.08.2021 10:27
Какой язык перспективен для инженера-конструктора с условием The_Mercy_Seat Программирование 705 17.03.2021 14:19
Библиотека динамических блоков + XML + Lisp = I-Draw ( первая web палета инструментов ) gabrin Динамические блоки 55 24.05.2013 11:32
Тормозит команда расчленения набора блоков batmax Программирование 4 31.08.2010 17:37