Aller au contenu

lien


alex29

Messages recommandés

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

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é