DenisHen Posté(e) le 26 décembre 2017 Posté(e) le 26 décembre 2017 Bonjour à tous... Et d'abord, bonnes vacances et/ou bonnes fêtes à vous... Voilà, ceci étant fait, je cherche à configurer, avec l'aide de la saisie de l'opérateur, deux échelles. Il en faut une dite 'primaire' et une seconde 'facultative' nommée 'secondaire'. Voici ce que j'ai écris :;;; ************************* ;;; Définitions des échelles ;;; ************************* ;;; ************************************ ;;; Définition de l'échelle primaire... (defun c:DHLotiEch (/ ech1 ech2) (if (= (vlax-ldata-get "DhLoti" "Ech1") nil) (setq ech1 (getreal "Échelle primaire : 1/ :")) (setq ech1 (getreal (strcat ")\nÉchelle primaire : 1/<" (rtos (vlax-ldata-get "DhLoti" "Ech1") 2 0) "> :" ) ;_ Fin:strcat ) ;_ Fin:getreal ) ;_ Fin:setq ) ;_ Fin:if (cond ((and (= ech1 nil) (/= (vlax-ldata-get "DhLoti" "Ech1") nil)) (vlax-ldata-put "DhLoti" "Ech1" (vlax-ldata-get "DhLoti" "Ech1")) ) ((/= ech1 nil) (vlax-ldata-put "DhLoti" "Ech1" ech1)) (T (alert "Aucune échelle primaire définie.\nAucune commande ne fonctionnera sans cette échelle minimum." ) ;_ Fin:alert (exit) ) ;_ Fin:progn ) ;_ Fin:if ;;; ************************************* ;;; Définition de l'échelle secondaire... (if (= (vlax-ldata-get "DhLoti" "Ech2") nil) (setq ech2 (getreal "Échelle secondaire : 1/ :")) (setq ech2 (getreal "\nÉchelle secondaire : 1/ :<" (vlax-ldata-get "DhLoti" "Ech2") "> '0 pour aucune échelle' :" ) ;_ Fin:getreal ) ;_ Fin:setq ) ;_ Fin:if (princ "Résultat ech2 =") (princ ech2) (princ "\n") (if ((or (/= ech2 nil) (/= ech2 0))) (progn (vlax-ldata-put "DhLoti" "Ech2" ech2) (alert (strcat "Échelle primaire : 1/" (rtos (vlax-ldata-get "DhLoti" "Ech1") 2 0) "\nÉchelle secondaire 1/" (rtos (vlax-ldata-get "DhLoti" "Ech2") 2 0) ) ;_ Fin:strcat ) ;_ Fin:alert ) ;_ Fin:progn (progn (vlax-ldata-put "DhLoti" "Ech2" nil) (alert (strcat "Échelle primaire : 1/" (rtos (vlax-ldata-get "DhLoti" "Ech1") 2 0) "\nAucune échelle secondaire" ech2 ) ;_ Fin:strcat ) ;_ Fin:alert ) ;_ Fin:progn ) ;_ Fin:if (princ) ) ;_ Fin:defun Il faudrait qu'il y ait au moins la première échelle saisie, sinon, rien ne fonctionnera, mais ça, je le gérerais autrement. Mais l'opérateur pourra éventuellement saisir une deuxième échelle. Mais celle-ci n'est pas obligatoire, si elle n'est pas saisie, elle sera égale à nul... Si non, égale à elle-même... Je n'arrive pas à mettre tous-ça en place... S'il y a une bonne âme... Windows 11 / AutoCAD 2024 Sur terre, il y a 10 types de personnes, celles qui comptent en binaire et les autres (developpez.net). Davantage d'avantages, avantagent davantage (Bobby Lapointe). La connaissance s'accroît quand on la partage (Socrate). Tant va la cruche à l'eau que l'habit n'amasse pas mousse avant de l'avoir tué. (Moi)
(gile) Posté(e) le 27 décembre 2017 Posté(e) le 27 décembre 2017 Salut, Tu peux forcer l'utilisateur à saisir une valeur en utilisant une expression de style :(while (not (setq ech1 (getreal ...))))ainsi on n'a d'autre choix qu'entrer une valeur ou faire Echap ce qui met fin à la routine. Mais si cette échelle concerne aussi d'autres routines, le plus sage est d'utiliser une valeur par défaut fixée arbitrairement.(setq ech (cond ((vlax-ldata-get "DhLoti" "Ech1")) ((vlax-ldata-put "DhLoti" "Ech1" 100)) ) ) Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
didier Posté(e) le 27 décembre 2017 Posté(e) le 27 décembre 2017 Coucou Je viens de supprimer ma réponse car j'étais agacé par tes questionsOn te file de l'aide mais tu n'en tiens pas compteVa voir sur "da-code" ce que j'explique sur getreal et tu devrais comprendre ton erreur de syntaxe, tu devrais ... Amicalement tout de même (comme une bonne âme) Éternel débutant… Mon site perso : Programmer dans AutoCAD
lecrabe Posté(e) le 27 décembre 2017 Posté(e) le 27 décembre 2017 Hello Vieux Maitre Jedi Didier YES mais les jeunes Padawans n'ont pas la patience des aines !! LA SANTE & Bonnes Fetes de fin d'annee, lecrabe (Autre Vieux Maitre Jedi) Autodesk Expert Elite Team
didier Posté(e) le 27 décembre 2017 Posté(e) le 27 décembre 2017 Coucou Oui je comprends mais je fatigue, je fatigueTu as raison pour la santé, c'est important, et en ce moment je fatigue, je fatigue... Amicalement, mais fatigué Éternel débutant… Mon site perso : Programmer dans AutoCAD
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