alex29 Posté(e) le 13 novembre 2007 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+
vinz34 Posté(e) le 14 novembre 2007 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]
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