Azerty Posté(e) le 10 décembre 2004 Posté(e) le 10 décembre 2004 Bjr, Voilà, je cherche a mesurer (additionner serait encore mieux) la longueur de plusieurs polyligne en même temps. Est-ce possible ? Concretement, sur un plan j'ai environs 60 polylignes de largeur 0,40 et une 100aine de 0,20 (représentant des frises en dalles naturelles)Pour moi faire mes metrées, je les mets bout a bout, puis je les joins et là j'obtient le lineaire total. Mais bon, y doit y avoir bcp plus rapide ... D'avance, merci. Une seule chose à dire : MERCI CADxp !
Krynn Posté(e) le 10 décembre 2004 Posté(e) le 10 décembre 2004 Une petite recherche sur CadXP aurait surment permis de trouver la reponse. Vu que j'ai deja ceci qui viens d'ici: LISP DE MNT SUR CADXP.COM MODIF LE 20.10.2004 PAR KRYNN (defun C:TOTALLONGUEUR (/ ss tl n ent itm obj l) (setq ss (ssget) tl 0 n (1- (sslength ss))) (while (>= n 0) (setq ent (entget (setq itm (ssname ss n))) obj (cdr (assoc 0 ent)) l (cond ((= obj "LINE") (distance (cdr (assoc 10 ent))(cdr (assoc 11 ent)))) ((= obj "ARC") (* (cdr (assoc 40 ent)) (if (minusp (setq l (- (cdr (assoc 51 ent)) (cdr (assoc 50 ent))))) (+ pi pi l) l))) ((or (= obj "CIRCLE")(= obj "SPLINE")(= obj "POLYLINE") (= obj "LWPOLYLINE")(= obj "ELLIPSE")) (command "_.area" "_o" itm) (getvar "perimeter")) (T 0)) tl (+ tl l) n (1- n))) (princ (strcat "Total des longeurs d'objets sélectionnés: " (rtos tl) " unité du dessin")) (princ) ) un petit LISP c'est toujours pratique.pour la separation, je pense que c'est possible de faire qqchose. mais si c'est sur 2 couches separées, c'est tres vite selectionné.
Azerty Posté(e) le 10 décembre 2004 Auteur Posté(e) le 10 décembre 2004 Merci, merci et encore merci !! Encore un truc qui va bien m'aider pdt mes charettes ... ;) PS : j'ai un souci avec les recherches, au dessus d'un mot je n'ai aucune page qui s'affiche.Ce n'est pas de la feinéentise ... Une seule chose à dire : MERCI CADxp !
Patrick_35 Posté(e) le 10 décembre 2004 Posté(e) le 10 décembre 2004 Ah, grillé ;) Bon je poste quand même, il était dans mes tablettes, de plus il est en visual lisp et faire une addition avec celui-ci est un jeu d'enfant (vl-load-com) (if (setq sel (entsel)) (progn (setq sel (vlax-ename->vla-object (car sel))) (setq deb (vlax-curve-getStartParam sel)) (setq fin (vlax-curve-getEndParam sel)) (princ (strcat "\nLa longueur est de : " (rtos (vlax-curve-getDistAtParam sel fin)))) ) ) (princ) @+ Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
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