Skip to content

DXF Library overview

Torsten Paul edited this page Jun 1, 2019 · 62 revisions
  • Comparison

libdxfrw Dime dxflib BRL-CAD
2D/3D 2D 3D 2D 3D
License GPL2 3-clause BSD license GPL2 or greater v2.1 LGPL
Programming Language C++ C++ C++ C++
Instructions on how to integrate the library No No Yes No
Latest Version v0.5.12 (2014) 0.9.x? 3.17 (2017) 7.28.0 (2018)
In Debian No 0.20111205-2.1 / coin3 4.0.0~CMake~6f54f1602475+ds1-2 3.17 N/A
In MXE No coin 3.1.3 No N/A
In Homebrew No No 2.5 N/A

*If we still can not found a library that supports both 2D and 3D, we have to choose two libraries for each of them. There is library support both 2D and 3D but it is written in python. According to Kintel, we do not have the plan to drag python into OpenSCAD.

  • libdxfrw
    • Documentation/Comment: It only contains basic descriptions and very few comments.
    • Community Support: It really depends. Some got no response for months even years, but there is commit made to the repo 3 weeks ago. We are looking at the version maintained by LibreCAD.
    • DXF file support: It should support most of 2D DXF files but there is an existing issue with arcs has not been solved yet.
    • Additional information:
  • Dime
    • Documentation/Comment: It contains some documents and the code commented on average.
    • Community Support: Dime is fairly well maintained by Coin3D.
    • DXF file support: No issue found yet. It should support most of the 3D DXF files.
    • Additional information:
  • dxflib
    • Documentation/Comment: It has sufficient documentation and the code is well commented. It even provides some instructions on how to integrate the library for both import and export.
    • Community Support: The version maintained by QCAD is well maintained.
    • DXF file support: No issue found yet. It should support most of the 2D DXF files.
    • Additional information: According to the documentation, dxflib does not store any entities, only pass the supported entities found in the DXF file to OpenSCAD class.
  • BRL-CAD
    • Documentation/Comment: It contains basic documents and the code commented on average.
    • Community Support: It's well maintained but it is the minor issue for BRL-CAD and they only focus on the part that is related to solid modeling.
    • DXF file support: It should support most of the 3D DXF files but there is a post saying there is a problem with DXF import. It's unsure whether it is a BRL-CAD issue or DXF import related code issue.
    • Additional information:

*The DXF file support information is base on the issue that I found. I have not tested each of the libraries with all the possible DXF files.

Name \ Preference Order libdxfrw Dime dxflib BRL-CAD
Xuwei 2D(2) 3D(1) 2D(1) 3D(2)
t-paul 2D(3) 3D(3) 2D(2) 2D+3D(1) / 3D(2)
Clone this wiki locally