A propos des codes de groupe des tables de symboles (DXF)

L'ordre des tables peut varier mais la table LTYPE précède toujours la table LAYER. Chaque table commence par un code de groupe 0 intitulé TABLE. Ce dernier est suivi d'un code de groupe 2 identifiant la table donnée (APPID, DIMSTYLE, LAYER, LTYPE, STYLE, UCS, VUE, VPORT ou BLOCK_RECORD), d'un code de groupe 5 (un identificateur), d'un code de groupe 100 (marqueur de sous-classe AcDbSymbolTable) et d'un code de groupe 70 spécifiant le nombre maximum d'entrées de table pouvant suivre. Les noms de tables apparaissent en lettres majuscules. L'identificateur DIMSTYLE est un code de groupe 105 et non un code de groupe 5.

Les tables d'un dessin peuvent contenir des éléments supprimés mais ceux-ci ne sont pas écrits dans le fichier DXF. En conséquence, moins d'entrées de table peuvent suivre l'en-tête de la table que ne l'indique le code de groupe 70, dont la valeur ne peut donc pas être utilisée comme index pour la lecture de la table. Ce code de groupe permet à un programme lisant des fichiers DXF d'allouer une table assez grande pour contenir les entrées qui suivent.

Après cet en-tête viennent les entrées de table pour chaque table. Chaque entrée de table consiste en un groupe 0 identifiant le type de l'élément (identique au nom de table, comme LTYPE ou LAYER), un groupe 2 donnant le nom de l'entrée de table, un groupe 70 spécifiant les drapeaux appropriés pour l'entrée (définis pour chaque table suivante) et les groupes supplémentaires fournissant la valeur de cette entrée. La fin de chaque table est indiquée par un groupe 0 avec la valeur ENDTAB.

Les tables de symboles ainsi que leurs enregistrements sont des objets de base de données. Au strict minimum, étant donné les usages courants dans AutoCAD ® , cela implique la présence d'un identificateur positionné après les codes de groupe 2 pour les objets d'enregistrement de la table de symboles ainsi que les objets de la table de symboles.

La table DIMSTYLE est le seul type d'enregistrement du système avec un code d'identification 105, suite à l'utilisation précédente d'un code de groupe 5. Les programmeurs ne doivent guère se soucier de cette exception sauf dans le contexte de la section de table DIMSTYLE. Cette exception ne se produit que dans ce contexte.