C’est le moment de rendre ton AutoCAD® bavard ! ![]()
Jusqu’ici, tes routines vivaient dans leur bulle. Avec la famille des fonctions get..., elles vont enfin pouvoir te poser des questions. C’est ce qu’on appelle l’interface utilisateur (ou « l’interrogatoire », selon l’humeur).
Voici les membres de la famille, du plus simple au plus capricieux.
L’astuce vitale avant de commencer
Tu verras souvent \n au début de mes messages.
Cela veut dire « Nouvelle Ligne » (New Line). Sans ça, ta question risque de s’afficher collée au texte précédent dans la ligne de commande et personne ne la verra. C’est la politesse du codeur !
1. getint : Pour les comptes ronds 
Il veut un Entier (Integer). Pas de virgule, pas de demi-mesure.
Idéal pour demander un nombre de copies ou un numéro de dossier.
(setq nb (getint "\nCombien de copies voulez-vous ? "))
;; L'utilisateur tape 5 -> nb vaut 5
;; L'utilisateur tape 5.5 -> AutoCAD râle : "Nécessite un entier."
2. getreal : Pour les matheux 
Lui, il accepte tout : entiers ou nombres à virgule (Réels).
C’est brut : tu tapes un chiffre, point barre.
(setq largeur (getreal "\nEntrez la largeur : "))
3. getpoint : « X marque l’emplacement » 
C’est le plus utilisé. Il demande à l’utilisateur de cliquer quelque part (ou de taper des coordonnées).
Il renvoie une liste de 3 nombres (X Y Z).
(setq pt (getpoint "\nCliquez le point de départ : "))
;; Résultat : (150.5 200.0 0.0)
4. getdist : Le Géomètre (Le plus cool
)
Il ressemble à getreal, mais en mieux.
Il demande une distance. L’utilisateur peut :
-
Taper « 10.5 ».
-
Cliquer deux points à l’écran ! AutoCAD® affiche l’élastique visuel. C’est beaucoup plus intuitif pour l’utilisateur.
(setq long (getdist "\nQuelle longueur (tapez ou cliquez) ? "))
5. getstring : Le Bavard 
Pour demander du texte. Mais attention, il y a un piège classique !
Par défaut, dans AutoCAD®, la barre Espace sert à valider (comme Entrée).
Donc si tu tapes « Mur Brique », AutoCAD® s’arrête après « Mur ».
Pour autoriser les espaces, il faut mettre le drapeau T (True) en premier argument.
;; Méthode "Un seul mot" (L'espace valide)
(setq nom (getstring "\nTon Prénom : "))
;; Méthode "Phrase complète" (L'espace est un espace)
(setq phrase (getstring T "\nDécris le projet : "))
6. getkword : Le QCM (Questions à Choix Multiples) 
C’est le plus strict. Il oblige l’utilisateur à choisir parmi une liste de mots-clés définis à l’avance.
Il ne marche pas tout seul ! Il faut d’abord préparer le terrain avec initget.
;; 1. On définit les choix autorisés (Bleu, Rouge, Vert)
(initget "Bleu Rouge Vert")
;; 2. On pose la question
(setq choix (getkword "\nQuelle couleur ? [Bleu/Rouge/Vert] : "))
;; Si l'utilisateur tape "Jaune", AutoCAD répond : "Option incorrecte".
;; Si l'utilisateur tape juste "B", AutoCAD comprend "Bleu". Magique !
Résumé pour ne pas se tromper
-
Tu veux compter des moutons ?
getint -
Tu veux une mesure précise ?
getdist(mieux quegetreal) -
Tu veux une position ?
getpoint -
Tu veux du texte ?
getstring(n’oublie pas leTpour les phrases) -
Tu veux contrôler le choix ?
initget+getkword
- Utile
- Peut mieux faire
- Inutile
Tous les tutos AutoLISP
