Difference between revisions of "Drawing (DWG)"

From Wiki.OSArch
m
(rewrite)
Line 4: Line 4:
  
 
=DWG in FOSS Software=
 
=DWG in FOSS Software=
 +
 +
Current status
 +
 +
(Heavily inspired by a post by Reini Urban to the LibreDWG discussion list)
  
 
There have been two efforts at making a free software library for reading/writing DWG. The most advanced of these is [[LibreDWG]].
 
There have been two efforts at making a free software library for reading/writing DWG. The most advanced of these is [[LibreDWG]].
Line 9: Line 13:
 
You can read about the struggles of supporting DWG in free software in the [http://libregraphicsworld.org libregraphicsworld] article [http://libregraphicsworld.org/blog/entry/libredwg-revived-starts-getting-regular-releases LibreDWG revived, starts getting regular releases]
 
You can read about the struggles of supporting DWG in free software in the [http://libregraphicsworld.org libregraphicsworld] article [http://libregraphicsworld.org/blog/entry/libredwg-revived-starts-getting-regular-releases LibreDWG revived, starts getting regular releases]
  
Free software known to support DWG is limited to [[FreeCAD]] from version 0.19. You can read the discussion in [https://forum.freecadweb.org/viewtopic.php?f=8&t=39827 Let's talk about libredwg support].
+
Free software known to have some support for DWG:
 +
* [[FreeCAD]] from version 0.19. You can read the discussion in [https://forum.freecadweb.org/viewtopic.php?f=8&t=39827 Let's talk about libredwg support].
 +
* [[GauchoCAD]] currently alpha software with no released packages
 +
 
 +
Generally LibreDWG is stable for the most common entities and objects for DWG and DXF, plus hundreds more. It can write DWG r2000 already, plus all DXF versions. DWG write support for 2004-2018 is about 80% done. Please [https://github.com/LibreDWG/libredwg/issues report bugs]].
 +
 
 +
For the more technically minded see the link to the [https://lists.gnu.org/archive/html/libredwg/2020-12/threads.html original thread].
  
The [https://www.opendesign.com Open Design Alliance] has a freely available proprietary [https://www.opendesign.com/guestfiles/oda_file_converter ODA File Converter] for converting between different versions of .dwg and .dxf
+
There is currently focus on gambas bindings (that's the free GNU VBA variant) for GauchoCAD and C++ bindings for SolveSpace. Perl and python bindings are ready but unused.
  
=Resources=
+
'''Current limitations:'''
* [https://en.wikipedia.org/wiki/.dwg DWG at Wikipedia]
+
* Not feature parity with [[Open_Design_Alliance_(ODA)|Drawings SDK]]
 +
* Many basic dynamic blocks and parametrics are done but it's still a work in progress.
 +
* DWG write support for 2004-2018 is about 80% done, still some bugs.
 +
* Creating 3dsolids from scratch, writing acis data is also not yet good enough.
 +
* The objects and fields are all done, but it's undocumented and unstable.
 +
* lisp bindings, like for guile would be nice, but low priority (no one has asked for it)
 +
 
 +
=See also=
 
* [[Drawing Exchange Format (DXF)]]
 
* [[Drawing Exchange Format (DXF)]]
 +
* [[Open_Design_Alliance_(ODA)]]
 +
* [[Autodesk]]
 +
* [[FreeCAD]]
 +
* [[GauchoCAD]]
 +
 +
=External Resources=
 +
* The [https://www.opendesign.com Open Design Alliance] has a freely available proprietary [https://www.opendesign.com/guestfiles/oda_file_converter ODA File Converter] for converting between different versions of .dwg and .dxf
 +
* [https://en.wikipedia.org/wiki/.dwg DWG at Wikipedia] gives background on the way Autodesk has pursued anyone trying to achieve compatability.
  
 
[[Category:Drawing (DWG)]]
 
[[Category:Drawing (DWG)]]
 
[[Category:Drawing_Exchange_Format_(DXF)]]
 
[[Category:Drawing_Exchange_Format_(DXF)]]
 
[[Category:File formats]]
 
[[Category:File formats]]

Revision as of 14:09, 26 December 2020

The Drawing (DWG) file format developed by Autodesk is a proprietary file format and the native file format for a number of proprietary CAD systems. The Drawing Exchange Format (DXF) is usually a better alternative for free software as it has better support for virtually the same content.

Wikipedia has a good article about the DWG format and it's history.

DWG in FOSS Software

Current status

(Heavily inspired by a post by Reini Urban to the LibreDWG discussion list)

There have been two efforts at making a free software library for reading/writing DWG. The most advanced of these is LibreDWG.

You can read about the struggles of supporting DWG in free software in the libregraphicsworld article LibreDWG revived, starts getting regular releases

Free software known to have some support for DWG:

Generally LibreDWG is stable for the most common entities and objects for DWG and DXF, plus hundreds more. It can write DWG r2000 already, plus all DXF versions. DWG write support for 2004-2018 is about 80% done. Please report bugs].

For the more technically minded see the link to the original thread.

There is currently focus on gambas bindings (that's the free GNU VBA variant) for GauchoCAD and C++ bindings for SolveSpace. Perl and python bindings are ready but unused.

Current limitations:

  • Not feature parity with Drawings SDK
  • Many basic dynamic blocks and parametrics are done but it's still a work in progress.
  • DWG write support for 2004-2018 is about 80% done, still some bugs.
  • Creating 3dsolids from scratch, writing acis data is also not yet good enough.
  • The objects and fields are all done, but it's undocumented and unstable.
  • lisp bindings, like for guile would be nice, but low priority (no one has asked for it)

See also

External Resources