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

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Взрыв Групп - выбрал и взрывает :-)

Взрыв Групп - выбрал и взрывает :-)

Ответ
Поиск в этой теме
Непрочитано 22.08.2006, 20:50 #1
Взрыв Групп - выбрал и взрывает :-)
Startrek
 
AutoCAD/AutoLISP
 
Seattle/USA
Регистрация: 27.08.2003
Сообщений: 1,133

Знаю что тема уже тут прорабатывалась.
Просто набрел в одном из англоязычных форумов на очень простенькую програмку для взрывыния ГРУПП.
Код не мой - за что купил за то и ......


Код:
[Выделить все]
(defun C:GX () (GROUP_EX)) 


(defun get_group_name (ename / key dct rtn) 
  (setq 
    key (cons 340 ename) 
    dct (dictsearch (namedobjdict) "ACAD_GROUP") 
  ) 
  (while (setq dct (member (assoc 3 dct) dct)) 
    (if (member key (entget (cdadr dct))) 
      (setq rtn (cons (cdar dct) rtn)) 
    ) 
    (setq dct (cddr dct)) 
  ) 
  (reverse rtn) 
) 


(defun group_ex (/ cont grp gname) 
  (setq cont 1) 
  (while cont 
    (setq grp (car (entsel "\nSelect Group to Explode:"))) 
    (if (setq gname (nth 0 (get_group_name grp))) 
      (progn 
        (command "-group" "e" gname) 
        (setq cont nil) 
      ) 
      (alert "Entity Selected is not a Group! Try Again") 
    ) 
  ) 
  (princ) 
)
__________________
Сквозь тернии к звездам.... и обратно :yes:
Просмотров: 2720
 
Непрочитано 23.08.2006, 09:24
#2
Кочетков Андрей

Java/Kotlin/Go
 
Регистрация: 03.02.2006
Сообщений: 5,789


Да вещь полезная.
А еще в Тулпаке есть команда для мгновенного создания группы OGM и взрывания OGX.
Использую их постоянно.
Кочетков Андрей вне форума  
 
Непрочитано 23.08.2006, 10:35
#3
AY

webcad.pro
 
Регистрация: 06.01.2005
Московская обл.
Сообщений: 501


>Startrek
Да уж на англоязычных форумах не заботятся о подчеркиваниях когда используют (command ... ).
Отмечусь своим вариантом без командной строки:
Код:
[Выделить все]
(DEFUN c:ungroup2 (/ a)
    (if (setq a (entget (car (entsel "\nУкажите объект разбиваемой группы... "))))
            (if (setq a (cdr (assoc 330 a)))
                (if (eq (cdr (assoc 0 (entget a))) "GROUP")
                    (if (entdel a) (princ "\nГруппа разбита..."))
                    (princ "\nГруппа не обнаружжена...")
                )
                (princ "\nГруппа не обнаружжена...")
            )
    )
    (princ)
)
AY вне форума  
 
Непрочитано 24.08.2006, 11:45
#4
Кулик Алексей aka kpblc
Moderator

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


> Startrek : А здесь: http://www.autocad.ru/cgi-bin/f1/board.cgi?t=22733Nt не смотрел?
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Взрыв Групп - выбрал и взрывает :-)