Infinicad Posté(e) le 24 octobre 2013 Posté(e) le 24 octobre 2013 Bonjour,J'ai ecris ça ne marche pas et j'ai beau regarder je ne vois pas pourquoiSi quelqu'un peut m'aiderMerci;;; Imprime toutes les présentations du dessin en PLT;;; (defun c:plprint ( / p l nom chemin nomplt) (setq l (layoutlist) ) (setq nom (vl-filename-base (getvar "dwgname") ) ) (setq chemin (getvar "dwgprefix") ) (setq nomplt (strcat chemin nom) ) (defun pos (foreach p l (cond ((equal (car l) p) "1") ((+1 (pos (cdr l) p)))) ) )(foreach p l (command "_-plot" "N" p "" "ANR 510 SERIES.pc3" "O" (strcat nomplt "-" pos ) "N" "O")) )
Goldorak44 Posté(e) le 25 octobre 2013 Posté(e) le 25 octobre 2013 Salut, pour une meilleur lisibilté, met ton code entre les balise "code" : Que souhaite tu faire dans cette partie : (defun pos (foreach p l (cond((equal (car l) p) "1") ((+1 (pos (cdr l) p))) ) ) ) Tu veux incrémenter le nom tes présentations ? PIRO CharlesDeveloppeur Revit, RV/RA - Formateur RevitPIRO CIE
Infinicad Posté(e) le 25 octobre 2013 Auteur Posté(e) le 25 octobre 2013 Salut, pour une meilleur lisibilté, met ton code entre les balise "code" : Que souhaite tu faire dans cette partie : (defun pos (foreach p l (cond((equal (car l) p) "1") ((+1 (pos (cdr l) p))) ) ) ) Tu veux incrémenter le nom tes présentations ? bonjour,En fait je cherche à obtenir la position de la présentation dans le listeen gros "car" donne 1 "cdr" donne 2 "cadr" donne 3 ect...
Goldorak44 Posté(e) le 25 octobre 2013 Posté(e) le 25 octobre 2013 Tu peux tout simplement faire un compteur. Tu l'initialise à 1 (setq compteur 1) Et tu l'incrémente après l'impression (setq compteur (+1 compteur)) Je trouve ton lisp très compliqué pour pas grand chose mais je n'ai peut être pas bien saisi ce que tu souhaite obtenir. Voici comment je l'aurai écrit : (defun c:plprint ( / l nom chemin nomplt compteur) (setq nom (vl-filename-base (getvar "dwgname")) (setq chemin (getvar "dwgprefix")) (setq compteur 1) (foreach l (layoutlist) (setq nomplt (strcat chemin nom "-" (itoa compteur))) (command "_-plot" "N" l "" "ANR 510 SERIES.pc3" "O" nomplt "N" "O") (setq compteur (1+ compteur)) ) ) Est-ce que cela correspond à ce que tu souhaite faire ? PIRO CharlesDeveloppeur Revit, RV/RA - Formateur RevitPIRO CIE
Infinicad Posté(e) le 26 octobre 2013 Auteur Posté(e) le 26 octobre 2013 Tu peux tout simplement faire un compteur. Tu l'initialise à 1 (setq compteur 1) Et tu l'incrémente après l'impression (setq compteur (+1 compteur)) Je trouve ton lisp très compliqué pour pas grand chose mais je n'ai peut être pas bien saisi ce que tu souhaite obtenir. Voici comment je l'aurai écrit : (defun c:plprint ( / l nom chemin nomplt compteur) (setq nom (vl-filename-base (getvar "dwgname")) (setq chemin (getvar "dwgprefix")) (setq compteur 1) (foreach l (layoutlist) (setq nomplt (strcat chemin nom "-" (itoa compteur))) (command "_-plot" "N" l "" "ANR 510 SERIES.pc3" "O" nomplt "N" "O") (setq compteur (1+ compteur)) ) ) Est-ce que cela correspond à ce que tu souhaite faire ? Merci à toi prince d'EuphorC'est exactement ça
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