Fichiers DXF binaires

Le format DXF ASCII consiste en une représentation complète d'un dessin AutoCAD sous un format de texte ASCII. Il est facilement traité par d'autres programmes. En outre, AutoCAD permet de créer ou de lire le format binaire d'un fichier DXF complet et d'accepter des entrées limitées dans un autre format binaire.

Les commandes SAUVEGRD et SAUVENOM disposent d'une option Binaire permettant de générer des fichiers DXF binaires. Un tel fichier contient toutes les informations se trouvant dans un fichier DXF ASCII mais sous une forme plus compacte occupant en général 25 pour cent d'espace en moins. AutoCAD lit et écrit ces fichiers plus rapidement (généralement, cinq fois plus vite). Contrairement aux fichiers DXF ASCII qui opèrent un compromis entre la taille et l'exactitude de la virgule flottante, les fichiers DXF binaires conservent l'exactitude dans la base de données des dessins. (AutoCAD version 10 fut la première version à prendre en charge ce format de fichier DXF ; les versions précédentes ne permettent donc pas de lire ce format.)

Un fichier DXF binaire débute par un drapeau de 22 octets composé des éléments suivants :

AutoCAD Binary DXF<CR><LF><SUB><NULL>

Le drapeau est suivi d'une série de paires (groupe, valeur) comme dans un fichier DXF ASCII, mais sous une forme binaire. Le code de groupe est une valeur binaire de deux octets (ou d'un seul octet dans les fichiers DXF des versions AutoCAD Release 14), suivie de l'un des éléments suivants :

  • Un entier codé sur 2 octets, avec l'octet de poids faible en premier et l'octet de poids fort en dernier
  • Une valeur IEEE à virgule flottante 8 octets en double précision, stockée avec l'octet de poids faible en premier et l'octet de poids fort en dernier
  • Une chaîne ASCII terminée par un octet 0 (NULL)

Le type des données suivant le groupe est déterminé en fonction du code de groupe, selon les règles utilisées pour le décodage des fichiers DXF ASCII. Une conversion des angles en degrés et des dates en dates fractionnaires du calendrier julien est effectuée pour les fichiers binaires comme pour les fichiers DXF ASCII. Le groupe de commentaires 999 n'est pas utilisé dans les fichiers DXF binaires.

Dans un fichier DXF binaire, les codes de groupe de données étendues sont représentés par un seul octet ayant pour valeur 255, suivi d'un entier de 2 octets contenant le code de groupe et la valeur qui lui est associée.

Les valeurs longues de données étendues (code de groupe 1071) occupent 4 octets. Les tranches binaires de données étendues (code de groupe 1004) sont représentées par un entier long non signé sur 1 octet, suivi du nombre d'octets spécifié relatif aux données de la tranche. Par exemple, pour transférer un groupe de données étendues long, les valeurs suivantes s'affichent, occupant respectivement 1, 2 et 4 octets.

255 Code de groupe échappement
1071 Code de groupe réel
999999 Valeur du code de groupe 107

SAUVENOM écrit les fichiers DXF binaires avec le même type de fichier (.dxf) que pour les fichiers DXF ASCII. Les commandes OUVRIR et INSERER reconnaissent automatiquement la chaîne du drapeau d'un fichier binaire. Vous n'avez pas à l'identifier en tant que fichier binaire.

Si les commandes OUVRIR et INSERER détectent une erreur dans un fichier DXF binaire, AutoCAD signale l'adresse de l'octet dans le fichier où l'erreur a été détectée.