AutoLISP, le langage de programmation AutoCAD


Facebooktwittergoogle_pluslinkedinmail

AutoLISPAutoLISP est un langage de personnalisation interprété et propre à AutoCAD. Autolisp est un dérivé du langage LISP dont les origines remontent à la fin des années 1950. Le LISP a été conçu pour l’utilisation de l’intelligence artificielle dans les applications.

Même si AutoCAD supporte AutoLISP, il ne prend pas en charge la plupart des fonctions en Visual LISP ou de l’interface d’automatisation ActiveX de Microsoft. Mais cela n’en fait pas pour autant un outil moins puissant.

AutoCAD possède tout de même un éditeur Visual LISP qui est accessible depuis l’onglet Gérer du ruban. Mais vous pouvez aussi utiliser un éditeur de texte comme Notepad++ pour écrire vos programmes par exemple.

AutoLISP et AutoCAD

L’intégration d’AutoLISP dans le logiciel AutoCAD s’est faite au milieu des années 1980. Le LISP a été choisi comme API initiale parce qu’il était particulièrement bien adapté pour le processus de conception de projets AutoCAD non structurés.

Le développement de programmes AutoLISP est réalisé par l’écriture de code dans un éditeur de texte. Le programme est ensuite chargé et exécuté par le logiciel.

Comme AutoLISP n’a pas besoin d’être compilé, vous pouvez taper votre code dans la ligne de commande et voir le résultat immédiatement.

Les bases d’AutoLISP

Le langage AutoLISP vous permet d’utiliser des nombres, des chaines de caractères et la liste des fonctions de manipulation et de personnalisation d’AutoCAD.

Vous pouvez ainsi améliorer grandement votre productivité en créant des programmes et des commandes qui effectuent pour vous les tâches répétitives.

Un programme AutoLISP est composé d’une série d’expressions qui ont la forme suivante :

(Fonction Argument)

Chaque expression commence par une parenthèse ouverte, se compose d’un nom de fonction, des arguments optionnels à cette fonction et d’une parenthèse fermante. Chaque arguments peut être également une expression. Chaque expression renvoie une valeur qui peut être utilisée par une autre expression environnante. Enfin, la valeur de la dernière expression est renvoyée à l’expression appelante.

Par exemple, le code suivant comporte 3 fonctions :

(fonction1 (fonction2 arguments) (fonction3 arguments))

Si vous entrez ce code dans la ligne de commande AutoCAD, l’interpréteur AutoLISP traitera ce code. Quelques explication s’imposent :

  • La fonction1 possède 2 arguments (fonction2 et fonction3).
  • Les fonction2 et fonctions3 ont chacune un argument.
  • Les fonction2 et fonctions3 sont entourés par la fonction1. Leurs valeurs de retour sont passés à la fonction1 comme arguments.
  • La fonction1 évalue les 2 arguments et retourne la valeur à la fenêtre à partir de laquelle vous avez entrée le code.

 Exemple de multiplication avec AutoLISP

L’exemple suivant vous montre comment utiliser la fonction de multiplication en AutoLISP.

(* 5 8)

Résultat = 40.

J’ai d’abord utilisé une parenthèse ouvrante, la fonction de multiplication (*), les arguments qui suivent et enfin la parenthèse fermante. Et comme vous pouvez aussi utiliser une expression dans une autre expression :

(* 2 (* 2 5))

Résultat = 20.

N’hésitez pas à expérimenter sur votre ligne de commande avec les signes « + », « – » et « / ». Attention avec la fonction « / », le diviseur correspond au second argument !

Participez à cette discussion sur AutoLISP en postant votre commentaire ci-dessous ! Ou posez moi vos questions pour que je puisse y répondre.

A très vite sur le blog.

Cet article à été rédigé par Sébastien

Sébastien, formateur et coach AutoCAD est consultant spécialisé dans la croissance productive des petites entreprises. Il est l'auteur de plusieurs formations d'élite qui permettent aux dirigeants, chefs d'entreprises, techniciens et dessinateurs de devenir des experts sur ce logiciel de référence.

Laissez un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

sept + 2 =