Hello !
Essai ce lisp (je ne sais plus de qui il vient, c'est très surement de ce forum ... et comme toujours c'est une tuerie !).
Je l'utilise depuis quelques années déjà !
tu tape "hbound", tu sélectionnes toutes tes hachures, tu valides ... et hop Miracle : tous les contours sont recréés dans le calque de la hachures qu'ils entourent et en plus ils sont associatifs !
(defun c:hbound (/ ss echo n ent elast lay)
(princ "\nSélectionnez les hachures (Entrée, Espace ou clic droit pour toutes")
(if (or (setq ss (ssget '((0 . "HATCH"))))
(setq ss (ssget "_X" '((0 . "HATCH"))))
)
(progn
(setq echo (getvar 'cmdecho)
n -1
)
(setvar 'cmdecho 0)
(while (setq ent (ssname ss (setq n (1+ n))))
(setq elast (entlast)
lay (assoc 8 (entget ent))
)
(if (= 0 (cdr (assoc 97 (entget ent))))
(vl-catch-all-apply
'(lambda ()
(command "_.hatchedit" ent "_boundary" "_polyline" "_yes")
)
)
)
(while (setq elast (entnext elast))
((lambda (l)
(entmod (subst lay (assoc 8 l) l))
)
(entget elast)
)
)
)
(setvar 'cmdecho echo)
)
)
(princ)
)