LISTES
Les listes sont la base du langage AutoLisp, pour mémoire Lisp signifie
LISt Processing (traitement des listes).
Toute entité est définie dans AutoCAD par des listes.
Les listes sont des groupes de valeurs séparées par des espaces.
Pour imaginer comment fonctionnent les listes imaginez un train avec une locomotive et des wagons rattachés à cette dernière.
Première chose à admettre (et à savoir par cœur) le premier élément d'une liste est l'élément 0 (zéro) comme rappelé dans les explications de la fonction (nth).
Par exemple dans une expression extraite avec la fonction (entget), si je reprends la définition du train, le premier élément (la locomotive) est le nom de l'entité dans la base de données du dessin, puis suivent tous les renseignements nécessaires à la définition de cette entité (les wagons), ils sont différents suivant le type d'entité, une ligne a besoin de son point de départ et de son point d'arrivée, un cercle a besoin de son centre et de son rayon, bien sûr, les calques et types de ligne sont aussi présents dans cette liste.
C'est depuis cette liste de renseignement sur une entité qu'on part pour la modifier, la changer de calque, la changer de couleur, ou bien obtenir des renseignements comme sa direction ou sa longueur ou dans le cas d'une polyligne de savoir si elle est close ou pas.
Voir (entget) qui nous permet d'obtenir une telle liste (LIST).
En annexe vous trouverez les définitions des codes DXF par types d'entités qui vous renseigneront sur chaque spécificité.
Exemple avec une liste extraire par (entget) sur une ligne, les codes sont les codes DXF :
( | Parenthèse ouvrante de début de liste | |
(-1 . <Nom d'entité: 7ffffb0fca0>) | code -1 | nom de l'entité |
(0 . "LINE") | code 0 | type de l'entité |
(330 . <Nom d'entité: 7ffffb029f0>) | code 330 | identificateur de pointeur logiciel |
(5 . "BAA") | code 5 | identificateur (handle) |
(100 . "AcDbEntity ") | code 100 | marqueur de sous-classe |
(67 . 0) | code 67 | espace de dessin (objet ou papier) |
(410 . "Model") | code 410 | nom de la présentation |
(8 . "0") | code 8 | calque de l'entité |
(100 . "AcDbLine") | code 100 | marqueur de sous-classe |
(10 1654.9 932.963 0.0) | code 10 | point de départ |
(11 2359.87 1145.07 0.0) | code 11 | point final |
(210 0.0 0.0 1.0) | code 210 | direction d'extrusion |
) | Parenthèse fermante de fin de liste |
5 juin 2017