CAO

Bonnes pratiques développement AutoLISP

Quelques règles à respecter pour faciliter la maintenance de vos programmes AutoLISP.

Etiquettes:

Construire dynamiquement le nom d'une fonction AutoLISP

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.

Etiquettes:

Créer un calque en AutoLISP sans passer par la commande CALQUE

On utilise d'abord tblsearch pour vérifier que le calque n'existe pas déjà, ensuite on crée une liste de définition d'entité et finalement on utilise entmakex :

Etiquettes:

VBA AutoCAD & Inventor : exporter l'ensemble des fichiers d'un projet

Un des inconvénients majeurs de VBA (qui en comporte beaucoup), c'est que le code est encapsulé dans un format binaire (fichiers .dvb pour AutoCAD, .ivb pour Inventor) qui au contraire d'un fichier texte, ne peut pas être correctement géré par un gestionnaire de source comme Mercurial ou Subversion.

VBA AutoCAD : passer le maintien d'une entité à SendCommand

Parfois, on a besoin d'utiliser SendCommand pour pouvoir réaliser certaines opérations que VBA ne supporte pas (la fonction LISSAGE par exemple). Et dans certaines situations, on veut pouvoir passer une référence à un objet précédemment créé. Dans ce cas on peut utiliser la fonction handent d'AutoLISP. handent prend en argument le maintien d'une entité et renvoie un nom d'entité qui est interprété par la ligne de commande d'AutoCAD :

Set circle1 = ThisDrawing.ModelSpace.AddCircle(p1, r1)
Set circle2 = ThisDrawing.ModelSpace.AddCircle(p2, r2)
ThisDrawing.SendCommand "_Loft" & vbCr _
        & "(handent """ & circle1.Handle & """)" & vbCr _
        & "(handent """ & circle2.Handle & """)" & vbCr _
        & vbCr _
        & vbCr

Notez bien que le maintien doit être spécifié entre deux guillemets doubles (qu'on doit doubler pour les spécifier dans une chaîne littérale en VBA).

AutoCAD : revenir à l'ancienne boite de dialogue de gestion de calques

Vous n'aimez pas le gestionnaire des propriétés des calques qui s'affiche dans une palette ? Vous pouvez revenir à une boite de dialogue classique en tapant CALCLASSIQ sur la ligne de commande d'AutoCAD.

Le gestionnaire des calques d'AutoCAD dans une boite de dialogue classique

Pages

Subscribe to RSS - CAO