amine.btp Posté(e) le 15 janvier 2013 Posté(e) le 15 janvier 2013 Bonjour je veux me lancer dans la programmation des logiciels travaillant dans l’environnement d'AutoCAD, j'ai bien trouvé VBA mais ce dernier va disparaitre des prochaines versions d'AutoCAD, il y a aussi Lisp mais je connais rien en de langage et en plus toutes la documentation trouvées est en anglais. Par contre je maitrise Pascal (Delphi) et c++, et donc je cherche si je peux accéder aux commandes d'acad à partir de cs langages, je veux prendre des flaches dans ce sujet là pour trouver de quoi commencer. merci pour votre aide. cordialement.
(gile) Posté(e) le 15 janvier 2013 Posté(e) le 15 janvier 2013 Salut, Si on écarte le VBA, AutoCAD supporte 3 environnements de programmation. Du plus puissant (ou plus complet) au plus facile d'accés :ObjectARX, langage : C++ ;ObjectARX "managé" (API AutoCAD.NET), langages : C#, VB.net, F# (ainsi que tous les autres langages supportés par l'environnement .NET) ;Visual LISP, langage AutoLISP avec possibilité d'accéder à l'interface COM/ActiveX.Dans tous les cas, la documentation "officielle" est en anglais, les ressources sur internet, éventuellement en français, sont très nombreuses pour AutoLISP, plus rares pour .NET et quasi confidentielles pour ObjectARX/C++. Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
waakabayashi Posté(e) le 16 janvier 2013 Posté(e) le 16 janvier 2013 Bonjour, Je souhaite également apprendre à programmer. Je pensais commencer par le Lisp avant de d'apprendre le C#. Est-ce une bonne démarche ou est-ce que le C# suffi ? Les deux langages ont'ils un point commun ou sont-ils totalement différents ? Je précise qu'actuellement je connais assez bien autocad mais je n'ai aucune conaissance en programmation.
(gile) Posté(e) le 16 janvier 2013 Posté(e) le 16 janvier 2013 waakabayashi, AutoLISP et C# sont vraiment très différents. AutoLISP est un langage dédié à AutoCAD (et inutilisable en dehors d'AutoCAD (ou de ses clones)), C# est un langage de l'environnement .NET qui permet de programmer AutoCAD (via l'API AutoCAD .NET) mais aussi Windows, voire d'autres systèmes (Mac OS, UNIX via le projet Mono), de faire de la programmation Web, etc. Si les deux sont multi-paradigme, AutoLISP est une langage à typage dynamique issu du LISP et privilégie la programmation fonctionnelle, C#, langage à typage statique fort, privilégie la programmation orientée objet. L'apprentissage d'AutoLISP est incomparablement plus facile et moins exigeant, voire ingrat, (on arrive très rapidement à écrire des routines simples), mais C# est beaucoup plus puissant. Donc, si ton but est de programmer AutoCAD, je te conseille vivement AutoLISP, quitte à passer plus tard à C# même si les connaissances acquises en LISP ne t'aideront pas beaucoup excepté pour la connaissance des dessous d'AutoCAD et la rigueur logique nécessaire à toute programmation. Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
waakabayashi Posté(e) le 17 janvier 2013 Posté(e) le 17 janvier 2013 Merci pour ta réponse. ;) Pour le moment, je découvre le lisp. J'arrive à lire un fichier, à le comprendre et des fois à le modifier.Ce que tu me dis me conforte dans le choix d'apprendre en priorité Autolisp. Par contre la création de boite de dialogue (les .dcl ou Osnap Palette que tu a créé) passent par l'utilisation d'un langage plus puissant ?
alala Posté(e) le 17 janvier 2013 Posté(e) le 17 janvier 2013 Les DCL peuvent être inclusent dans le lisp.Le langage est diférent, mais très "simple" .L'avantage, comme pour le lisp, c'est qu'Autocad interpréte directement ces languages, ça facilite le dévellopement. Pour moi si tu reste à 100% sur du Autocad le LISP est ce qu'il faut apprendre, le C# est à choisir si tu souhaite un language plus largement utilisable sous Windows, mais il faut en avoir l'utilité, et le temps de l'apprendre. C'est en forgeant que l'on devient forgerons.Et c'est en sciant que Léonard DeVinci!
waakabayashi Posté(e) le 17 janvier 2013 Posté(e) le 17 janvier 2013 Merci. Je vais donc me concentrer sur le lisp et laisser tomber le C# pour le moment. ;)
(gile) Posté(e) le 17 janvier 2013 Posté(e) le 17 janvier 2013 waakabayashi,Par contre la création de boite de dialogue (les .dcl ou Osnap Palette que tu a créé) passent par l'utilisation d'un langage plus puissant ?DCL est un langage assez simple qui permet de créer des boites dialogues modales basiques. Ces boites sont gérées par du code LISP.OsnapPalette est écrit entièrement en C#. Une palette est une boite de dialogue non-modale ancrable, le langage DCL ne permet pas de créer de telles boites de dialogue. Les applicatifs ObjectDCL ou OpenDCL permettent de créer des boites dialogue non-modales gérables en LISP, mais je pense qu'il est préférable de maitriser AutoLISP avant de se lancer dans la programmation de boites de dialogue avec ces applicatifs. alala,le C# est à choisir si tu souhaite un language plus largement utilisable sous Windows, mais il faut en avoir l'utilité, et le temps de l'apprendre.C# (et plus généralement .NET) est aussi plus puissant qu'AutoLISP en ce qui concerne directement AutoCAD et permet de faire beaucoup de choses impossibles avec AutoLISP / Visual LISP. Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
waakabayashi Posté(e) le 18 janvier 2013 Posté(e) le 18 janvier 2013 Merci beaucoup pour toutes ces explications. ;)
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