alex29 Posté(e) le 13 novembre 2007 Partager Posté(e) le 13 novembre 2007 bonjour à tous!est-il possible de générer un tableau avec les distances suivant le type et la longueur des lignes tracées.mercia+ Lien vers le commentaire Partager sur d’autres sites More sharing options...
vinz34 Posté(e) le 14 novembre 2007 Partager Posté(e) le 14 novembre 2007 Salut, Un début de réponse (defun c:tab ( / lst lstcalque lstlg) (setq ss (ssget '((0 . "LINE"))) ) (repeat (setq n (sslength ss)) (setq ent (ssname ss (setq n (1- n))) lst (cons (distance (cdr (assoc 10 (entget ent))) (cdr (assoc 11 (entget ent)))) lst ) lst (if (setq tl (cdr (assoc 6 (entget ent)))) (cons tl lst) (cons (strcat "DuCalque : " (cdr (assoc 8 (entget ent)))) lst) ) ) ) (repeat (setq n (sslength ss)) (setq lstemp lst lg 0 ) (if (not (member (car lst) lstcalque)) (progn (setq lstcalque (cons (car lst) lstcalque)) (while (setq lstemp (member (car lst) lstemp)) (setq lg (+ (cadr lstemp) lg) lstemp (cddr lstemp) ) ) (setq lstlg (cons lg lstlg)) ) ) (setq lst (cddr lst)) ) (setq pt (getpoint "\nChoix du point d'insertion du tableau") osold (getvar "osmode")) (setvar "osmode" 0) (repeat (setq n (length lstcalque)) (command "_rectangle" (list (car pt) (+ (* 7 n) (cadr pt))) (list (+ 50 (car pt)) (+ (cadr pt) (* 7 (- n 1))))) (command "_text" (list (+ 1.5 (car pt)) (+ 2.5 (cadr pt) (* 7 (- n 1)))) 2.5 0 (car lstcalque)) (command "_rectangle" (list (+ 50 (car pt)) (+ (* 7 n) (cadr pt))) (list (+ 100 (car pt)) (+ (cadr pt) (* 7 (- n 1))))) (command "_text" (list (+ 51.5 (car pt)) (+ 2.5 (cadr pt) (* 7 (- n 1)))) 2.5 0 (rtos (car lstlg) 2 2)) (setq lstcalque (cdr lstcalque) lstlg (cdr lstlg) n (- n 1)) ) (setvar "osmode" osold) (princ) ) Le tableau reste primitif et à adapter à tes besoins.[Edité le 14/11/2007 par vinz34]Oups, désolé j'avais pas vu que c'était dans le forum LT ! [Edité le 14/11/2007 par vinz34] Lien vers le commentaire Partager sur d’autres sites More sharing options...
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