Invité pleche.damien Posté(e) le 16 juin 2011 Posté(e) le 16 juin 2011 Bonjour Je n'arrive pas à creer un programme lisp qui créer un compteur Exemple: (defun c:compteur () (setq compteur 1) ; création d'un compteur (while "") ; tant que "" boucle recommence (setq rep "+ compteur 1 ") ; attribue à la variable "rep" la valeur + compteur 1 (setq ptclic (getpoint " point d'insertion du chiffre") ; donne le point d'insertion du chiffre (setq ptchiffre (polar ptclic 0 50)) ; place le chiffre a 50 cm du point ptchiffre (command "texte" ptchiffre 4 0 compteur) ; insère grace à la command texte le texte du compteur au point ptchiffre (setq compteur ( + compteur 1)) ) ; ferme la boucle while J'ai donc besoin de compléments d'information, sachant que mon compteur doit être capable d'insérer un texte: (ici se sera des chiffres: 1 clic = chiffre + 1) la condition pour que mon programme insére un compteur et qu'il faud au préalable cliquer sur un des boutons de ma barre d'outil. (sachant que les bouton de la barre d'outil fond tous appelles à un nom de macro ^C^C_ MERCI POUR VOS REPONSES
didier Posté(e) le 16 juin 2011 Posté(e) le 16 juin 2011 Coucou cliquer sur un des boutons de ma barre d'outil là je ne comprends pas ce que tu veux dire. ton compteur a l'air de fonctionner (pas testé) tu nous en dis plus ... amicalement Éternel débutant... Mon site perso : Programmer dans AutoCAD
vincentp010 Posté(e) le 16 juin 2011 Posté(e) le 16 juin 2011 (defun c:compteur () (setq compteur 1) (while "" ;attention ne pas mettre de parenthèse fermante ici (elle est déjà en bas) (setq rep "+ compteur 1 ") ;tu ne t'en sert pas de cette variable? (setq ptclic (getpoint " point d'insertion du chiffre")) ;il manquai une parenthèse fermante pour setq (setq ptchiffre (polar ptclic 0 50)) (command "texte" ptchiffre 4 0 (rtos compteur 2 0)) ;il faut convertir ton nombre en texte avec rtos (setq compteur ( + compteur 1)) ) ; ferme la boucle while Aide au téléchargement du cadastre dgfip-download-helper Insertion de photos géolocalisées exif https://www.dropbox.com/s/gkf6o9ac2hxen97/exifscr.zip?dl=0 Script correction BUG SPDC V2, propriétaire département 21 et 22 : https://greasyfork.org/scripts/442400-spdcv2/code/SPDCV2.user.js
(gile) Posté(e) le 16 juin 2011 Posté(e) le 16 juin 2011 Attention, une boucle (while ...) ne s'arrête que quand la condition d'arrêt vaut nil, or "" (chaine vide) ne vaut pas nil.(while "" ...) lancera immanquablement une boucle sans fin... Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
Invité pleche.damien Posté(e) le 17 juin 2011 Posté(e) le 17 juin 2011 Merci Vincent tas solution marche bien. Mais comment faire pour que mon programme marche des que l'on clic sur un bouton d'une barre d'outil (les boutons sont créer par moi même... ils correspondent à différent type d'acier) C'est à dire que 1 clic sur un des boutons de la barre d'outil = insertion du texte Merci également gile pour ton aide mais comme je débute en lisp j'aimerai savoir comment arrêter ma boucle...??? SACHANT que la condition d'arrêt de la boucle, s'effectue des que l'on sort de mon programme " defun c: fondation" Merci à tout le monde
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