DenisHen Posté(e) le 30 octobre 2013 Posté(e) le 30 octobre 2013 Salut à tous, Quelqu'un aurait-il sous le coude (car je suis sur que ça a déjà été fait) un LiSP qui donnerait la somme des longueurs des polylignes du calque courant ? Je ne sais pas comment faire ce style de LiSP... Denis... Windows 11 / AutoCAD 2024 Sur terre, il y a 10 types de personnes, celles qui comptent en binaire et les autres (developpez.net). Davantage d'avantages, avantagent davantage (Bobby Lapointe). La connaissance s'accroît quand on la partage (Socrate). Tant va la cruche à l'eau que l'habit n'amasse pas mousse avant de l'avoir tué. (Moi)
capde06 Posté(e) le 30 octobre 2013 Posté(e) le 30 octobre 2013 j'ai cail n'y a pas de filtre sur les calques .. mais bon (defun c:cumul () (setq cumul 0 sel nil cpx 0) (prompt "\nSelection des poly lignes :") (setq sel (ssget '((0 . "LWPOLYLINE")))) (setq cpx 0) (repeat (sslength sel) (setq ent (ssname sel cpx)) (setq obj (vlax-ename->vla-object ent)) (setq cumul (+ cumul (vla-get-length obj))) (setq cpx (+ cpx 1)) ) (princ (strcat "\nLongueur :" (rtos cumul 2 2))) (princ) ) Vous fîtes ce que vous pûtes et vous m'épatâtes !!!!
DenisHen Posté(e) le 30 octobre 2013 Auteur Posté(e) le 30 octobre 2013 Salut, Merci, je prend... Denis... Windows 11 / AutoCAD 2024 Sur terre, il y a 10 types de personnes, celles qui comptent en binaire et les autres (developpez.net). Davantage d'avantages, avantagent davantage (Bobby Lapointe). La connaissance s'accroît quand on la partage (Socrate). Tant va la cruche à l'eau que l'habit n'amasse pas mousse avant de l'avoir tué. (Moi)
lesourd2 Posté(e) le 30 octobre 2013 Posté(e) le 30 octobre 2013 Salut, Merci, je prend... Denis... Ou çaLongueur_cumul_poly.lsp
(gile) Posté(e) le 30 octobre 2013 Posté(e) le 30 octobre 2013 Salut, Pour avoir directement le cumul sur le calque courant (sans sélection par l'utilisateur) : (defun c:cumul () (princ (strcat "\nLongueur cummulée des polylignes sur le calque '" (getvar 'clayer) "' : " (rtos (polyLengthByLayer (getvar 'clayer))) ) ) (princ) ) (defun polyLengthByLayer (layer / len ss) (vl-load-com) (or *acdoc* (setq *acdoc* (vla-get-ActiveDocument (vlax-get-acad-object)))) (setq len 0) (if (ssget "_X" (list '(0 . "lwpolyline") (cons 8 layer))) (progn (vlax-for pl (setq ss (vla-get-ActiveSelectionSet *acdoc*)) (setq len (+ len (vla-get-Length pl))) ) (vla-Delete ss) ) ) len ) Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
DenisHen Posté(e) le 31 octobre 2013 Auteur Posté(e) le 31 octobre 2013 Salut à tous Et merci... J'ai exactement ce qu'il me faut... Encore merci, Denis... Windows 11 / AutoCAD 2024 Sur terre, il y a 10 types de personnes, celles qui comptent en binaire et les autres (developpez.net). Davantage d'avantages, avantagent davantage (Bobby Lapointe). La connaissance s'accroît quand on la partage (Socrate). Tant va la cruche à l'eau que l'habit n'amasse pas mousse avant de l'avoir tué. (Moi)
Messages recommandés
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 compteSe connecter
Vous avez déjà un compte ? Connectez-vous ici.
Connectez-vous maintenant