|
Besoin d'un développement spécifique pour AutoCAD ?
Développement de compléments à AutoCAD et aux autres logiciels Autodesk (AutoCAD Electrical, AutoCAD Mechanical, Inventor, Revit, Vault). C#/VB/.NET, C++/ObjectARX, AutoLISP, VBA.
Migration de vos projets VBA en .NET, intégration RealDWG dans vos applications, développement sur plateforme AutoCAD OEM et Inventor OEM.
Formation utilisation et développement, assistance technique AutoCAD, Inventor, Revit.
Maxence DELANNOY - Tél. : 09.70.46.32.55 - maxence.delannoy@wiip.fr
|
|
Soumis par Maxence le mar, 11/10/2011 - 16:51
Supposons que vous avez défini deux fonctions : f1 et f2. Vous voulez appeler l'une ou l'autre en vous basant sur le contenu d'une variable a qui contient 1 ou 2.
Il faut d'abord construire le nom de la fonction avec strcat :
(setq function-name (strcat "f" (itoa a)))
Puis il faut convertir la chaîne obtenue en symbole. On peut faire ça avec la fonction atoms-family :
(setq function-symbol (atoms-family 0 (list function-name))
Une fois qu'on a le symbole, on peut exécuter la fonction avec eval :
(eval function-symbol)


Poster un nouveau commentaire