page updated: 2021.06.10
DXF-importer for Blender-3D banner

DXF-importer will help you to import DWG and DXF files to Blender-3D.
I have been developing and maintaining the importer since 2007. It is a part of official distribution since Blender 2.45. Since Blender 2.50 the importer got a replacement because of the new python-API.

DXF-importer PE (Personal Edition) is an enhanced version of the importer, developed in the context of CADtools Project. The motivation was to overcome a number of limitations Blender has by importing big lists of objects. The new engine supports DXF and DWG files of any largeness and complexity at constant transfer rate.

There are different versions for Blender 2.49b, 2.7x, 2.8x and 2.9x.
All these versions are actively maintained and continuously developed.

a comparison between Standard Version and Personal Edition
lll  - fully supported,
l..  - partially supported,
...  - not supported yet,
lll  - recently completed,
ll.  - under construction / WIP, 
...  - planned / todo, 

... lll   ... ll.   ... ll.  - minimal CPU and RAM consumption
... lll   ... ll.   ... ll.  - unlimited DXF file size (even 500MB and more)
... lll   ... lll   ... lll  - constant transfer rate of 100KB/sec
l.. lll   lll lll   lll lll  - support for DXF formats: r10 to r2015 (best choice is r12)
lll lll   ... lll   ... lll  - support for DWG files (via external converter)
lll lll   lll lll   lll lll  - support for 2d and 3d data
... lll   ... lll   ... lll  - support for ACIS/SAT objects (via external converter)
lll l..   ... l..   ... l..  - support for "model space" and "paper space"
lll lll   lll lll   lll lll  - geometries can be represented as mesh or as curve objects
lll lll   ll. lll   ll. lll  - support for BLOCK-hierarchies (as groups/collections)
... lll   ... lll   ... lll  - support for decompositing of BLOCKs (explode)
lll lll   ll. lll   ll. lll  - support for units re-calculation (global re-scale)
lll lll   ll. lll   ll. lll  - support for re-location of geometry origin
lll lll   ... ll.   ... ll.  - customizable objects filtering to reduce data volume
lll lll   l.. ll.   l.. ll.  - customizable objects types mapping/representation
lll lll   ... lll   ... lll  - customizable on-the-fly geometry manipulation
... l..   ... l..   ... l..  - customizable material pre-processing (wip)
... lll   ... l..   ... l..  - ability to explore DXF data prior to import
... l..   ... l..   ... l..  - ability to read/restore corrupted DXF files
lll lll   ... lll   ... lll  - ability to batch processing: to import multiple files

         DXF properties:
lll lll   ... l..   ... l..  - visibility status
lll l..   ... l..   ... l..  - frozen status
lll lll   l.. lll   ... lll  - thickness
lll lll   ... l..   ... l..  - width
lll l..   ... l..   ... l..  - color
lll lll   l.. lll   l.. lll  - layer

         DXF-r12 objects:
lll lll   lll lll   lll lll  - POINT
lll lll   lll lll   lll lll  - LINE
lll lll   lll lll   lll lll  - CIRCLE
lll lll   lll lll   lll lll  - ARC
lll lll   lll lll   lll lll  - TEXT
lll lll   lll lll   lll lll  - 3DFACE
lll lll   lll lll   lll lll  - 2d-POLYLINE (incl. arc, variable-width, curve, spline)
lll lll   lll lll   lll lll  - 3d-POLYLINE
lll lll   lll lll   lll lll  - 3d-POLYMESH
lll lll   lll lll   lll lll  - 3d-POLYFACE
lll lll   lll lll   lll lll  - SOLID
lll lll   lll lll   lll lll  - TRACE
lll lll   lll lll   lll lll  - INSERT and BLOCK
lll lll   ll. lll   ll. lll  - MINSERT (=array of BLOCKs)
lll l..   ... l..   ... l..  - XREF (External Reference)
lll lll   ... l..   ... l..  - VIEW
lll lll   ... l..   ... l..  - VIEWPORT
... l..   ... l..   ... l..  - DIMENSION
... l..   l.. l..   ... l..  - MLINE
... lll   l.. lll   l.. lll  - MTEXT
... l..   ... l..   ... l..  - HATCH

         DXF>r12 objects:
lll lll   lll lll   lll lll  - ELLIPSE
lll lll   lll lll   lll lll  - LWPOLYLINE (LightWeight Polyline)
lll lll   ... lll   ... lll  - SPLINE
... lll   ... lll   ... lll  - REGION (ACIS/SAT) (via external converter)
... lll   ... lll   ... lll  - 3DSOLID (ACIS/SAT) (via external converter)

- All BLOCKs are imported to layer 19, then referenced as DupliGroup/Collection for each INSERT point. Big number of BLOCKs (over 700) may decrease import and editing performance.
- DXF-properties can be used to assign Blender materials.
- Native support for ACIS objects (REGION, 3DSOLID) is still under construction. For now ACIS objects can be imported into Blender only via conversion to mesh objects. There are three methods available:
>> convert 3DSOLIDs to POLYFACEs via "explode" inside AutoCAD before export to DXF format.
>> OR export to DXF r12 format - 3DSOLIDs will be converted on-the-fly to POLYFACEs.
>> OR set up external converter and use "DXF-r12" import parameter (this will force the conversion).
- You may need to run 'RemoveDoubles' on imported meshes.
- You can import into Blender 2.49, then read the blend file in Blender 2.6+. It works in both directions.

on Blender 2.65/2.80/2.9+:
- Getting Started.

on Blender 2.49b:
- the documentation on blender-wiki.

For individual support you can contact me per email: "DXF-support ...".
The importer can read DXF data of any complexity - even broken / corrupted files can be handled properly. Configuration panel offers big number of options allowing precise control over import process. You should invest some time to learn how to use it effecively. With help of proper configuration you can minimize import time and significantly reduce pre- and post-processing efforts.

DXF-importer PE is a bonus script for subscribers of CADtools Project.
Look at CADtools License for details.

To get a copy you need to subscribe to CADtools Project.


related links:
CADtools Project
manual on blenderwiki

demo ________

demo ________

pic 2d engineering drawing: in CAD-App before export to DXF file

pic 2d engineering drawing: imported to Blender 2.79a via DXF-importer-PE

demo User Interface in version 2.3.1 for Blender 2.78a (mouse over to show areas under construction)

demo User Interface in version 2.15 for Blender 2.49b

demo How to import BIM (Revit, ArchiCAD, Allplan)

Copyright Remigiusz Fiedler, • Impressum