Aller au contenu

Sélection de groupes


Messages recommandés

Posté(e)

J'avais ce lisp pour dégrouper les groupes

Tu peux peut être l'adapter avec un sssetfirst

 ;Décomposer les groupes

(defun c:supgp ()
(setq dictgroup (dictsearch (namedobjdict) "acad_group"))
(setq dictgroup (mapcar 'cdr
(vl-remove-if-not
'(lambda (x) (= 350 (car x)))
dictgroup
) ;_ Fin de vl-remove-if-not
) ;_ Fin de mapcar
) ;_ Fin de setq
;;;(initget "Oui Non")
;;;(setq reponse
;;;(getkword
;;;(strcat
;;;"\nIl y a "
;;;(itoa (length dictgroup))
;;;" groupes dans le dessin, voulez vous les supprimer ? [Oui/Non] :"
;;;) ;_ Fin de strcat
;;;) ;_ Fin de getkword
;;;) ;_ Fin de setq
(setq reponse "Oui")
 
(if (equal reponse "Non")
(exit)
) ;_ Fin de if
(setq i 0
) ;_ Fin de setq
(repeat (length dictgroup)
(entdel (nth i dictgroup))
(setq i (1+ i))
) ;_ Fin de while
(princ (strcat "\n" (itoa i) " groupes ont été suprimés."))
(princ)
) ;_ Fin de defun

Autocad 2021 - Revit 2022 - Windows 10

Posté(e)

 

 

Excellent! Merci!

 

(defun bl:list2ss (lst / select)
       (setq select (ssadd))
       (mapcar '(lambda (x) (ssadd x select)) lst)
       select)
(defun bl:massoc (n lst)
       (vl-remove-if-not '(lambda (x) (= n (car x))) lst))
(defun bl:group-list-all ()
       (mapcar 'cdr (vl-remove-if-not '(lambda (x) (= 350 (car x))) (dictsearch (namedobjdict) "acad_group"))))
(defun bl:group-select-all ()
       (bl:list2ss (apply 'append (mapcar '(lambda (x) (mapcar 'cdr (bl:massoc 340 (entget x)))) (bl:group-list-all)))))

 

permet, par exemple:

 

(command "erase" (bl:group-select-all) "")

 

 

Carboléüm, qui dessine aussi à la main -> Carboleum's sketchblog

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant
×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer. Politique de confidentialité