Section 1.2 : Créer sa première commande personnalisée

Afficher des boîtes de dialogue, c’est amusant cinq minutes, mais on est là pour dessiner. Nous allons maintenant créer une vraie commande AutoCAD, que tu pourras taper au clavier comme tu tapes LIGNE ou CERCLE.

1. Le fameux « defun C: » La fonction defun signifie « Define Function » (Définir une fonction). Le C: qui la suit est crucial : il indique à AutoCAD que cette fonction doit agir comme une Commande native. (Attention, ça n’a rien à voir avec le disque dur C: de Windows !).

La syntaxe ressemble à ceci : (defun C:NOM_DE_MA_COMMANDE () ...les actions ici... ) (Les petites parenthèses () vides servent à lister des variables, on verra ça au chapitre 2. Pour l’instant, on les laisse vides).

2. Piloter AutoCAD de l’intérieur avec « command » Voici ton arme la plus puissante pour débuter : la fonction command. Elle permet de lancer n’importe quelle commande AutoCAD classique, exactement comme si tu la tapais au clavier.

Créons une commande très simple appelée ZE qui va faire un « Zoom Étendu » instantané.

(defun C:ZE ()
  (command "_ZOOM" "_E")
  (princ)
)

Décortiquons ce code :

  • (defun C:ZE () : « AutoCAD, apprends cette nouvelle commande qui s’appelle ZE ».

  • (command "_ZOOM" "_E") : « Lance la commande Zoom, puis passe-lui l’option Étendu ». (On met des _ devant les commandes en anglais pour que le code fonctionne sur les AutoCAD français, anglais, espagnols, etc.).

  • (princ) : « Sors proprement, sans faire de bruit ».

  • ) : « Fin de ma nouvelle commande ».

Comment tester ?

  1. Copie l’intégralité de ce bloc de code et colle-le dans la ligne de commande AutoCAD. Fais Entrée.

  2. Dessine un cercle quelque part, puis dézoome très loin.

  3. Tape ZE dans AutoCAD et appuie sur Entrée. Magique, non ?

[!Tip] Référence
Vous trouverez la référence de toutes les fonctions AutoLISP dans l’aide en ligne.