sechanbask Posté(e) le 21 octobre 2011 Posté(e) le 21 octobre 2011 Bonjour, Je cherche à insérer différents blocs en ligne de commande, les blocs sont choisis en fonction des réponses des utilisateurs. Le choix est restreint (diamètre collecteur : 100 125 150) (diamètre piquage 40 50), mais pour l'instant je ne peux pas afficher à l'utilisateur ces différents choix possibles.Plus important, j'aimerais que certaines valeurs soient choisie par défaut pour que l'utilisateur puisse faire entrer sans taper le diamètre collecteur (très souvent en 100) et le diamètre du piquage (très souvent en 50). Voici mon début de code ;Insertion d'un piquage par le dessus (defun c:sd () (setq diam_plb_sd_coll (getint "Diamètre collecteur :")) (setq diam_plb_sd_piq (getint "Diamètre piquage : ")) (command "_insert" (strcat "assemblage_PVC_" (itoa diam_plb_sd_coll) "_" (itoa diam_plb_sd_piq) "_c.dwg") pause 1 1 pause) Pouvez-vous m'apporter un peu d'aide ? ATEGIE - Bureau d'Études Fluideshttp://www.ategie.fr/uploads/ategie/ategie-at%C3%A9gie-bureau-%C3%A9tudes-etudes-fluides-logo-100x56.pngExécution, Synthèse, Conception, Maîtrise d'Oeuvre, Audit, Chiffragewww.ategie.fr
bonuscad Posté(e) le 21 octobre 2011 Posté(e) le 21 octobre 2011 Bonjour, Le choix est restreint (diamètre collecteur : 100 125 150) (diamètre piquage 40 50) Pour faire un choix restreint, utilise plutôt (getkword) et tu défini tes choix restreints avec (initget)Par exemple (avec une valeur par défaut): (initget "100 125 150") (setq diam_plb_sd_coll (getkword "\nDiamètre collecteur[100/125/150] <100>: ")) (if (not diam_plb_sd_coll) (setq diam_plb_sd_coll "100")) (initget "40 50") (setq diam_plb_sd_piq (getkword "\nDiamètre piquage [40/50] <50>: ")) (if (not diam_plb_sd_piq) (setq diam_plb_sd_piq "50")) (princ (strcat "assemblage_PVC_" diam_plb_sd_coll "_" diam_plb_sd_piq "_c.dwg")) (prin1) En plus de cette manière, tes différents choix seront accessibles avec le click-droit, même pas besoin de taper les caractères (Attention à la variable SHORTCUTMENU si elle n'a pas sa valeur par défaut) Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius
sechanbask Posté(e) le 21 octobre 2011 Auteur Posté(e) le 21 octobre 2011 merci, comme je débute vraiment du coup l'adaptation entre mon code est tes améliorations me posent problème : _insert Entrez le nom du bloc ou [?]: ; erreur: une erreur est survenue dans la fonction *erreur*paramètre de la variable AutoCAD rejeté: "OSMODE" nilEntrez le nom du bloc ou [?]: *Annuler* j'ai essayé ça mais ça marche point : ;Insertion d'un piquage par le dessus (defun c:sd () (initget "100 125 150") (setq diam_plb_sd_coll (getkword "\nDiamètre collecteur[100/125/150] <100>: ")) (if (not diam_plb_sd_coll) (setq diam_plb_sd_coll "100")) (initget "40 50") (setq diam_plb_sd_piq (getkword "\nDiamètre piquage [40/50] <50>: ")) (if (not diam_plb_sd_piq) (setq diam_plb_sd_piq "50")) (prin1) (command "_insert" (strcat "assemblage_PVC_" (itoa diam_plb_sd_coll) "_" (itoa diam_plb_sd_piq) "_c.dwg") pause 1 1 pause) (princ) ) ) ATEGIE - Bureau d'Études Fluideshttp://www.ategie.fr/uploads/ategie/ategie-at%C3%A9gie-bureau-%C3%A9tudes-etudes-fluides-logo-100x56.pngExécution, Synthèse, Conception, Maîtrise d'Oeuvre, Audit, Chiffragewww.ategie.fr
bonuscad Posté(e) le 21 octobre 2011 Posté(e) le 21 octobre 2011 Attention (getkword) retourne une clé sous forme de chaine, donc (itoa diam_plb_sd_coll) et (itoa diam_plb_sd_piq) sont incorrects. (Voir le strcat fait dans le code proposé) NB:Une parenthèse fermante en trop dans ton dernier code posté. Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius
sechanbask Posté(e) le 24 octobre 2011 Auteur Posté(e) le 24 octobre 2011 merci ATEGIE - Bureau d'Études Fluideshttp://www.ategie.fr/uploads/ategie/ategie-at%C3%A9gie-bureau-%C3%A9tudes-etudes-fluides-logo-100x56.pngExécution, Synthèse, Conception, Maîtrise d'Oeuvre, Audit, Chiffragewww.ategie.fr
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