Infinicad Posté(e) le 18 octobre 2013 Posté(e) le 18 octobre 2013 Bonjour,J'essaie d'imprimer chaque presentation d'un dessin (je sais il existe publier mais je veux faire des PLT et ça me fait faire des exos.Je suis partis sur un truc comme ça:(setq nom (layoutlist))(defun c:print (/nom) (command "_-plot" "N" "PRESENTATION" "ANR 510 SERIES.pc3" "O" nom "N" "O"))(defun print-pres (print) (if(null (nom)) (command) (print (cons (car nom) (print-pres (cdr nom)))) )Mais je sens bien que ça va pas mais je suis perduSi quelqu'un a une petite pisteMerci
Tramber Posté(e) le 18 octobre 2013 Posté(e) le 18 octobre 2013 (setq nom (layoutlist)) donne une liste.Donc, je te conseille de te pencher sur la syntaxe : (foreach p (layoutlist) .... du code (command "_-plot" "N" "PRESENTATION" "ANR 510 SERIES.pc3" "O" p "N" "O")) .... du code ) En clair, tu dois boucler sur ta liste, p est une variable automatiquement appliquée à chacun des éléments de la liste obtenue. Tu as vu ? J'ai remplacé nom par la lettre p. Pas besoin de tous les defun, pour l'instant. Bureau d'études dessin. Spécialiste Escaliers Développement - Formation ./__\. (.°=°.)
Infinicad Posté(e) le 18 octobre 2013 Auteur Posté(e) le 18 octobre 2013 Le 18/10/2013 à 10:41, Tramber a dit : (setq nom (layoutlist)) donne une liste.Donc, je te conseille de te pencher sur la syntaxe : (foreach p (layoutlist) .... du code (command "_-plot" "N" "PRESENTATION" "ANR 510 SERIES.pc3" "O" p "N" "O")) .... du code ) En clair, tu dois boucler sur ta liste, p est une variable automatiquement appliquée à chacun des éléments de la liste obtenue. Tu as vu ? J'ai remplacé nom par la lettre p. Pas besoin de tous les defun, pour l'instant. Ah foreach...je vais continuer, ça m'enlève une bonne épine du piedMerci bcp
Infinicad Posté(e) le 23 octobre 2013 Auteur Posté(e) le 23 octobre 2013 Le 18/10/2013 à 13:03, Infinicad a dit : Ah foreach...je vais continuer, ça m'enlève une bonne épine du piedMerci bcp Bonjour,Suite de l'aventure (parce que s'en est une .....) voilà ce que j'ai ecrit: (foreach p (layoutlist))(setq nb-pres (length p));; decrémente le nb de présentation (defun defil-pres (nb-pres) (if (= 0 nb-pres) (0) (- 1 (defil-pres (- nb-pres 1))) ) );;imprime chaque présentations (defun c:print (p defil-pres)(while (< defil-pres 0 ) (command "_-plot" "N" "PRESENTATION" "ANR 510 SERIES.pc3" "O" p "N" "O") (command) ) )Mes questions:J'ai une erreur : "nombre d'arguments insuffisants"et ma boucle est elle correct pour imprimer chaque présentation? Merci pour votre aide Re Du coup j'ai trouvé!: (defun c:print (/ p nom)(setq nom (layoutlist))(foreach p nom (command "_-plot" "N" p "" "ANR 510 SERIES.pc3" "O" "" "N" "O")) )C'est tout bête mais ça marche.Simplement si quelqu'un peux me dire si la recursivité que j'ai utilisé au début fonctionne ou est completement ratée, ça peut m'aider...Merci
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