AutoCAD DXF#

Reference

Catégorie:

Import-Export

Menu:

File ‣ Import/Export ‣ AutoCAD DXF (.dxf)

Import#

Les calques DXF sont reflétés comme des groupes Blender. Cet importateur utilise une bibliothèque DXF à usage général appelée “dxfgrabber”.

Mappage de types DXF#

Pour être aussi non-destructif que possible, l’importateur vise à mapper autant que possible de types DXF aux courbes Blender.

DXF vers Curves#

  • LINE comme courbe POLYLINE (avec la possibilité de fusionner les lignes de connexion).

  • (LW)POLYLINE, (LW)POLYGON comme courbe POLYLINE s’ils n’ont pas de renflements ou comme courbe de BEZIER.

  • ARCs, CIRCLEs et ELLIPSEs comme courbes de BEZIER.

  • HELIXes (3D) sous forme de courbes de BEZIER.

DXF vers Maillages#

  • MESH est mappé à un objet maillé avec un modificateur Subdivision Surface, y compris le crease d’arête.

  • POLYFACEs et POLYMESHs sont importés dans un objet maillage.

  • 3DFACE s, SOLID s, POINT s sont importés dans un objet maillage combiné par calque appelé layername_3Dfaces.

Types DXF manquants#

  • Hatches

  • Leader

Properties#

Options de fusion#

Blocks As

Les blocs DXF peuvent être importés en tant qu’objets liés ou instances de groupe. Les objets liés utilisent la parenté pour les sous-blocs DXF (blocs dans blocs).

Parent Blocks to Bounding Boxes

Tracer une boîte englobante autour des blocs.

Merged Objects

Puisque Blender (v2.71) est assez lent à ajouter des objets, l’utilisateur peut souhaiter fusionner une géométrie DXF similaire en un seul objet.

By Layer

Produit un objet par couche DXF. Si une couche contient plusieurs types de données qui ne peuvent pas être fusionnés, il s’agira toujours d’objets individuels.

By Layer and DXF Type

La seconde différencie non seulement les types de données Blender, mais également les types DXF, tels que LWPOLYLINE et POLYLINE.

By Layer and Closed No-bulge Polygons

Les polylignes fermées sans renflement, c’est-à-dire sans arêtes courbes, peuvent être fusionnées en un seul maillage. Cela a du sens lorsque les polylignes DXF ont une extrusion et/ u un attribut d’élévation, qui décrit essentiellement une transformation d’emplacement/rotation/échelle. Si cette option de fusion est choisie, les paramètres d’épaisseur de ligne seront ignorés/désactivés.

By Layer and DXF-Type and Blocks

Pour les fichiers DXF avec un bloc référencé plusieurs fois, cette option permet d’insérer le même bloc plusieurs fois avec un objet à face-instanciée au lieu d’un objet pour chaque fois que le bloc doit être inséré. Malheureusement, cela ne fonctionne que pour les insertions de bloc qui sont uniformément mises à l’échelle. Les insertions de bloc non-uniformément mis à l’échelle sont importées comme défini dans Blocks As.

Combine LINE Entities to Polygons

Les lignes séparées dans DXF peuvent être fusionnées en une courbe poly Blender consécutive. Similaire à Remove Doubles mais pour les courbes.

Épaisseur et largeur de ligne#

Represent Line Thickness/Width

Thickness et Width des attributs de ligne DXF ont un effet sur la ligne dans les directions Z et X/Y respectivement. Une ligne droite peut être transformée en cube par ses attributs par exemple. Par conséquent, dans Blender, ces attributs sont représentés avec des objets d’extrusion de courbe, de biseau et de conicité.

Merge by Attributes

Si Merged Objects et Represent Line Thickness/Width sont tous deux activés, la fusion des objets doit être étendue pour séparer toutes les lignes de largeur et d’épaisseur différentes. Avec Merge by Attributes, cette option de séparation est également disponible sans la représentation réelle de l’épaisseur et de la largeur de la ligne.

Objets facultatifs#

Import TEXT

(TEXT, MTEXT)

Import LIGHT

Y compris la prise en charge des couleurs AutoCAD.

Export ACIS Entities

Exporte NURBS 3D geometry (BODY, REGION, PLANESURFACE, SURFACE, 3DSOLID) vers des fichiers ACIS-Sat, car c’est le format qu’AutoCAD utilise pour stocker les NURBS en DXF. Vous allez être informé de la quantité de fichiers .sat/.sab enregistrés.

Options de vue#

Display Groups in Outliner(s)

Basculer le mode d’affichage Outliner sur GROUPS (les calques DXF sont mappées à des groupes).

Import DXF File to a New Scene

À faire.

Center Geometry to Scene

Centre la géométrie importée au centre de la scène ; les informations de décalage sont stockées en tant que propriété personnalisée de la scène.

Géoréférencement#

Important : les fichiers DXF ne stockent aucune information sur le système de coordonnées/la projection sphérique de ses coordonnées. La meilleure pratique consiste à connaître le système de coordonnées de votre fichier DXF spécifique et à saisir ces informations dans l’interface de l’importateur DXF comme suit :

Pyproj

Installation : télécharger (Windows, macOS) Pyproj et le copier dans votre système.

AppData/ApplicationSupport Folder/Blender/4.2/scripts/modules/.

Au cas où vous auriez besoin de compiler votre propre binaire, reportez-vous à cet article sur Blender Artists.

Pyproj est un wrapper Python pour la bibliothèque PROJ, une bibliothèque C bien connue utilisée pour convertir les coordonnées entre différents systèmes de coordonnées. Les bibliothèques SIG open source telles que PROJ sont utilisées directement ou indirectement par de nombreuses autorités et peuvent donc être considérées comme bien maintenues.

Si Pyproj est disponible, l’importateur DXF affiche une sélection de systèmes de coordonnées nationaux mais permet également à l’utilisateur de saisir un code EPSG/SRID personnalisé. Il stocke également le SRID en tant que propriété personnalisée dans la scène Blender. Si une scène possède déjà une telle propriété SRID, les coordonnées sont en cours de conversion de votre fichier DXF vers le système de coordonnées cible et vous devez donc spécifier un SRID pour le fichier DXF. Si aucune propriété personnalisée SRID n’est disponible, le SRID de la scène est par défaut le même que le SRID DXF.

No Pyproj

Dans le cas où Pyproj n’est pas disponible, l’importateur DXF utilisera uniquement son convertisseur lat/lon vers X/Y intégré. Pour la conversion, la projection “transversale de Mercator” est appliquée, qui entre une coordonnée lat/lon à utiliser comme centre de la projection. La coordonnée lat/lon est ajoutée à votre scène en tant que propriété personnalisée. Les importations ultérieures convertiront toutes les coordonnées de latitude/longitude en la même géoréférence.

Important : jusqu’à présent, seule la conversion lat/lon vers X/Y est prise en charge. Si vous avez un fichier DXF avec des coordonnées euclidiennes faisant référence à un autre centre de latitude/longitude, la conversion n’est pas (encore) prise en charge.

Rules of thumb for choosing an SRID

Si vos données proviennent d’OpenStreetMap ou d’un site web de service SIG similaire et que vous les avez exportées avec QGIS ou ArcGIS, les coordonnées sont très probablement en lat/lon, utilisez alors WGS84 comme SRID avec Pyproj ou “spherical” si Pyproj n’est pas disponible. Pour les autres cartes vectorielles DXF, il est très probable qu’elles utilisent des systèmes de coordonnées locaux/nationaux.

Ouvrez le DXF avec un éditeur de texte (il a plusieurs milliers de lignes) et faites une estimation éclairée en regardant quelques coordonnées. DXF fonctionne avec des “group codes”, un nom inventé par Autodesk pour “key” comme dans les paires clé/valeur. X a le code de groupe 10, Y a 20, Z a 30. Si vous trouvez un modèle comme :

10, newline, whitespace, whitespace, NUMBER, newline,
20, newline, whitespace, whitespace, NUMBER, newline,
30, newline, whitespace, whitespace, NUMBER

alors NUMBER sera probablement vos coordonnées. Vous pouvez probablement dire à partir du format et/ou de la plage des coordonnées de quel système de coordonnées il doit s’agir.

Export#

Données prises en charge#

  • Mesh face : POLYFACE ou 3DFACE

  • Mesh edge : LINE

  • Modificateur (facultatif)

Données non prises en charge#

  • Mesh vertex : POINT

  • Curve : LINEs ou POLYLINE

  • Curve NURBS : curved-POLYLINE

  • Text : TEXT ou (wip : MTEXT)

  • Camera : POINT ou VIEW ou VPORT ou (wip : INSERT(ATTRIB+XDATA))

  • Light : POINT ou (wip : INSERT(ATTRIB+XDATA))

  • Empty : POINT ou (wip : INSERT)

  • Object matrix : extrusion (210-group), rotation, elevation

  • Vue 3D : (wip : VIEW, VPORT)

  • Instancing vert : auto-instanced ou (wip : INSERT)

  • Material : propriétés LAYER, COLOR et STYLE

  • Group : BLOCK et INSERT

  • Parenting : BLOCK et INSERT

  • Visibility status : LAYER_on

  • Frozen status : LAYER_frozen

  • Locked status : LAYER_locked

  • Surface

  • Meta

  • Armature

  • Lattice

  • IPO/Animation