Aller au contenu

Dissocier polyligne en concervant l\'épaisseur si constante


usegomme

Messages recommandés

Dans la série décomposition, ce n'est pas d'un grand intêret ,mais puisque je l'ai et qu'à l'occasion je m'en sert et qu' il peut vous servir voici le lisp.

 

;;;usegomme 14-08-2008
;; dissocie les segments d'une polyligne d'épaisseur constante
(defun c:splitpol (/ js ent lent typent ss ep i1 i2) 
 (setvar "cmdecho" 0)
 (setq js (ssget))
 (setq i1 0)
 (repeat (sslength js)
   (setq ent (ssname js i1))
   (setq lent (entget ent))
   (setq typent (cdr (assoc 0 lent))) 
   (cond
     ((or (= typent "POLYLINE")(= typent "LWPOLYLINE"))
       (setq ep (cdr (assoc 41 lent)))
       (command "_explode" ent)
       (setq ss (ssget "p"))
       (setq i2 0)
       (repeat (sslength ss)
         (setq ent (ssname ss i2))
         (if (= 0 (getvar "peditaccept"))
           (command "_PEDIT" ent "" "_w" ep "")
           (command "_PEDIT" ent "_w" ep "")    
         )
         (setq i2 (1+ i2))   
       )
     )
   ) 
   (setq i1 (1+ i1))
 ) 
 (setvar "cmdecho" 1)
 (princ)
)

 

Ci-joint également l'outil de reconstruction avec (gile)' s method

 

;; joindre arc ligne polyligne 
(defun c:JPO (/  jpo:pa) 
 (setq jpo:pa (getvar "peditaccept" ))
 (setvar "peditaccept" 1) (vl-cmdf "_.pedit" "_m" (ssget) "" "_j" 1.0 "")  ;; 0.0 ;; écart réglable
 (setvar "peditaccept" jpo:pa)
 (princ)
) 

Lien vers le commentaire
Partager sur d’autres sites

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é