Difference between revisions of "AutoCAD DXF"

From GICL Wiki
Jump to: navigation, search
(Some of the earlier sections are complete)
 
(7 intermediate revisions by one user not shown)
Line 1: Line 1:
 
[[Category:Engineering format]]
 
[[Category:Engineering format]]
'''Title(s):''' [[Title::AutoCAD DXF]], [[Title::DXF File Format]], [[Title::Drawing Interchange Format]], [[Title::Drawing Exchange Format]]
+
'''Title(s):''' AutoCAD DXF, DXF File Format, Drawing Interchange Format, Drawing Exchange Format
  
'''Version ID:''' [[Version ID::u19.1.01]]
+
'''Version ID:''' u19.1.01
  
'''Date released:''' [[Version Date released::January 2008]]
+
'''Date released:''' January 2008
  
'''Date:''' [[Format Date::1982-12-??]]
+
'''Date:''' December 1982
  
 
'''Creator(s):''' [[Creator::AutoDesk]] - Created as part of AutoCAD 1.0
 
'''Creator(s):''' [[Creator::AutoDesk]] - Created as part of AutoCAD 1.0
Line 12: Line 12:
 
'''Contributor(s):''' [[Contributor::AutoDesk]]
 
'''Contributor(s):''' [[Contributor::AutoDesk]]
  
'''Description:''' [[Description::]] - The DXF file format is developed by AutoDesk and is used as a CAD file format. It was originally created as a way to increase interoperability between AutoCAD and other similar programs. The DXF file format was initially meant to provide exact representation of AutoCAD drawings which were natively stored in DWG(Drawing) format. Since AutoDesk did not release the DWG specification for some time, the DXF file format and the accompanying specification were meant to allow CAD drawings to be opened, edited, and exported by any CAD program.  
+
'''Description:''' The DXF file format is developed by AutoDesk and is used as a CAD file format. It was originally created as a way to increase interoperability between AutoCAD and other similar programs. The DXF file format was initially meant to provide exact representation of AutoCAD drawings which were natively stored in DWG(Drawing) format. Since AutoDesk did not release the DWG specification for some time, the DXF file format and the accompanying specification were meant to allow CAD drawings to be opened, edited, and exported by any CAD program.  
  
'''History:''' [[History::]] - Below is a short, bulleted history of the DXF file format.
+
'''History:''' Below is a short, bulleted history of the DXF file format.
  
* '''Previous Version(s):'''
+
* '''December 1982 - ''' DXF file format released as part of AutoCAD 1.0
  
* '''Contains:'''
+
* '''October 1888 - ''' Both ASCII and binary forms of the DFX file supported in AutoCAD
  
* '''Syntax Format(s):'''
+
* '''October 1994 - ''' Specification first released as part of AutoCAD Release 13
  
* '''Family Format(s):'''
+
* '''February 1997 to Current - ''' Specification updated and released as part of every release from AutoCAD Release 14 to the latest AutoCAD 2010
  
'''Example(s):''' [[Example::Example Template]] - Information and example models of the engineering format.
+
'''Example(s):''' An example file found here: [http://www.enlight.ru/demo/faq/smth.phtml?query=fmt_dxf] is shown below.
 +
<pre>
  
'''Identifier:''' [[Identifier::]] - A URL or other identifier that refers to the engineering format.
+
0        // Delimiter means we're starting 'something new.'
 +
SECTION    // Aha! The 'something new' we're starting is a section
 +
  2        // What section? 2 means ENTITIES section.
 +
ENTITIES  // ENTITIES also means ENTITIES section. Sound redundant?
 +
  0        // Starting 'something new' again!
 +
3DFACE    // Oh, yeah, baby! It's a 3DFACE!
 +
  8        // 8 means the next line tells me what layer this is on
 +
0          // It's on layer 0. I usually ignore the layer.
 +
10        // The line which follows will be vertex 1 X.
 +
50.0      // X of vertex 1 is 50.0.
 +
20
 +
-50.0      // Y of vertex 1 is -50.0.
 +
30
 +
-50.0      // Z of vertex 1 is -50.0
 +
11
 +
50.0      // X of vertex 2 is 50.0
 +
21
 +
50.0      // Y of vertex 2 is 50.0
 +
31
 +
-50.0      // And so on . . .
 +
12
 +
-50.0
 +
22
 +
50.0
 +
32
 +
-50.0
 +
13
 +
-50.0
 +
23
 +
-50.0      // Once we read 'em all, we see that this 3DFACE has four
 +
33        // vertices with the following coordinates:
 +
-50.0      // (50,-50,-50);(50,50,-50);(-50,50,-50);(-50,-50,-50)
 +
  0        // Starting 'something new' again!
 +
ENDSEC    // Ah, damn, it's the end of the ENTITIES section . . .
 +
  0
 +
EOF        // End of file, baby! You should stop reading now.
  
'''Documentation:''' [[Documentation::Documentation Template]] - Information in general about the engineering format.
+
</pre>
  
'''File Extensions:''' [[File Extension::]] - Extensions of the engineering format, excluding the dot.
+
'''Identifier:''' [http://usa.autodesk.com/adsk/servlet/item?siteID=123112&id=12272454&linkID=10809853]
  
'''Applications:''' - Applications that the engineering format uses.
+
'''Documentation:''' [http://images.autodesk.com/adsk/files/acad_dxf.pdf]
  
* '''Native application(s):''' [[Native Application::Engineering Format Application Template]] - Applications which are primarily designed to specifically run this engineering format.
+
'''File Extensions:''' .dxf
  
* '''Interoperable applications:''' [[Interoperable Application::Engineering Format Application Template]] - Applications which can read or write files of this format, but are not native applications for the format.
+
'''Applications:''' - AutoDesk AutoCAD
  
'''Magic numbers:''' [[Magic Numbers::]] - Unique identifying characters at the beginning of files for this engineering format.
+
* '''Native application(s):''' AutoDesk AutoCAD (NOTE: this was meant as an interoperable format but was originally developed by and supported by AutoCAD so it is the only program listed here.)
  
'''Format(s):''' [[Format::]] - The MIME file types.
+
* '''Interoperable applications:''' The list below, found here - [http://en.wikipedia.org/wiki/AutoCAD_DXF#Software_which_supports_DXF], is a list of many programs supporting this format.
 +
    * A9Cad
 +
    * Adobe Illustrator
 +
    * AGI32
 +
    * AI4CAD 3D
 +
    * Alibre Design
 +
    * Altium
 +
    * ArchiCAD
 +
    * ArcMap
 +
    * AutoCAD
 +
    * Blender - Using an import script
 +
    * BRL-CAD
 +
    * Cadwork
 +
    * Corel Draw
 +
    * DWGeditor
 +
    * Drawbase
 +
    * Easy-PC
 +
    * Epanet
 +
    * Eye-Sys
 +
    * EnRoute[1]
 +
    * FASTechnologies NC-CAM
 +
    * Geosoft Oasis montaj
 +
    * Google SketchUp
 +
    * GraphCalc - Export only
 +
    * Inkscape - export only as of version 0.46
 +
    * IntelliCAD
 +
    * Harness Expert
 +
    * Hevacomp
 +
    * Kabeja
 +
    * Leica Geo Office
 +
    * Lenel OnGuard
 +
    * LD Assistant
 +
    * Lightcalc
 +
    * Manifold System
 +
    * Maple 12
 +
    * Mathematica
 +
    * MetaCAM
 +
    * Microlux
 +
    * Microsoft Visio
 +
    * Microstation
 +
    * miniPLAN
 +
    * Modo (software)
 +
    * OmniWin Cadnest
 +
    * Paint Shop Pro
 +
    * PETRA
 +
    * Pro/Engineer
 +
    * pdf2cad
 +
    * QCad
 +
    * RackTools
 +
    * Rhinoceros 3D
 +
    * Solid Edge
 +
    * Solidworks
 +
    * VariCAD
 +
    * VectorWorks
 +
    * Visual
  
'''Rights:''' [[Rights::]] - The name or type of the license for the engineering format. Examples: BSD-style license, Apache License, Proprietary license
+
'''Magic numbers:''' The number 0 will appear at the beginning of the file and at the beginning of every new element. It is used as a delimiter in the file. There are also a number of other magic numbers that may appear in the header section, these are outlined in p13-34  in [http://images.autodesk.com/adsk/files/acad_dxf.pdf]
  
'''Sustainability Factors:''' - Facts about the sustainability of this particular engineering format.
+
'''Format(s):''' application/dxf
  
* '''Standardization:''' [[Standardization::]] - Information regarding standardization attempts with this format.
+
'''Rights:''' Proprietary license distributed by AutoDesk
  
* '''Adoption:''' [[Adoption::]] - Information about how this format has been adopted by other organizations.
+
'''Sustainability Factors:'''
  
** '''Licensing and patent claims:''' [[Licensing and patent claims::]] - Any licenses or patent claims that the engineering format makes.
+
* '''Standardization:''' AutoDesk controls this format. All other programs must conform to the standards and specification put forth by AutoDesk in their yearly release of AutoCAD.
  
* '''Self-documentation:''' [[Self-documentation::]] - Any self-documentation capabilities of the format.
+
* '''Adoption:''' Given the list of programs supporting this file format shown above I would say that adoption is fairly widespread and that any major program in the the CAD field supports DXF.
  
* '''External dependencies:''' [[External dependencies::]] - Anything that the format depends on outside of its control to function.
+
** '''Licensing and patent claims:''' None.
  
* '''Technical protection considerations:''' [[Technical protection considerations::]] - Any considerations that are necessary when it comes to technical protection.
+
* '''Self-documentation:''' The labels and section names make the files a little more understandable but there is no inherent ability for self-documentation.
  
'''Typical use:''' [[Typical use::]] - Keywords that describe the format's typical use. Examples: CAD and CAM
+
* '''External dependencies:''' None
  
'''File classification:''' - Specific properties that pertain to this engineering format.
+
* '''Technical protection considerations:''' None
* '''Type {Binary, Text}:''' [[File Classification Type::]] - The type of file, choices are binary and text.
+
* '''Raster data:''' - Section describes whether or not the engineering format supports raster data.
+
** '''Raster data 2D:''' - Can the format support 2D raster data? Example: A format that can contain 2D pixelated data supports 2D raster data.
+
*** '''Is Supported:''' [[File Classification Raster Data 2D - Is Supported::]] - Is the feature supported in the engineering format?
+
*** '''Description:''' [[File Classification Raster Data 2D - Description::]] - This field is used to describe the support or lack of support of the feature.
+
** '''Raster data 3D:''' - Can the format support 3D raster data? Example: A format that can contain 2D pixelated data of a 3D model supports 3D raster data.
+
*** '''Is Supported:''' [[File Classification Raster Data 3D - Is Supported::]] - Is the feature supported in the engineering format?
+
*** '''Description:''' [[File Classification Raster Data 3D - Description::]] - This field is used to describe the support or lack of support of the feature.
+
* '''Geometric representation:''' - Section describes whether or not the engineering format supports geometric representations.
+
** '''Implicit representation:''' - Section describes whether or not the engineering format supports implicit representations.
+
*** '''Implicit surfaces:''' - Can the format support implicit surfaces? Example: A format that can contain surfaces that are generated with mathematical equations that contain the independent variables x, y, and z, like x^2 + y^2 + z^2 * R^2 = 0, supports implicit surfaces.
+
**** '''Is Supported:''' [[File Classification Implicit Surfaces - Is Supported::]] - Is the feature supported in the engineering format?
+
**** '''Description:''' [[File Classification Implicit Surfaces - Description::]] - This field is used to describe the support or lack of support of the feature.
+
*** '''Implicit curves:''' - Can the format support implicit curves? Example: A format that can contain curves that are generated with mathematical equations that contain the independent variables x, y, and z, supports implicit curves.
+
**** '''Is Supported:''' [[File Classification Implict Curves - Is Supported::]] - Is the feature supported in the engineering format?
+
**** '''Description:''' [[File Classification Implicit Curves - Description::]] - This field is used to describe the support or lack of support of the feature.
+
*** '''Point set:''' - Can the format support point sets? Example: A format that supports surfaces and lines that are generated by points that form triangles supports point sets.
+
**** '''Is Supported:''' [[File Classification Point Set - Is Supported::]] - Is the feature supported in the engineering format?
+
**** '''Description:''' [[File Classification Point Set - Description::]] - This field is used to describe the support or lack of support of the feature.
+
** '''Mesh:''' - Section describes whether or not the engineering format supports mesh.
+
*** '''Manifold surface meshes:''' - Can the format support manifold surface meshes? Example: A format that supports surfaces that are mathematical spaces in which every point has a neighborhood which resembles Euclidean space
+
**** '''Is Supported:''' [[File Classification Mainfold Surface Meshes - Is Supported::]] - Is the feature supported in the engineering format?
+
**** '''Description:''' [[File Classification Manifold Surface Meshes - Description::]] - This field is used to describe the support or lack of support of the feature.
+
*** '''Manifold volume meshes:''' - Can the format support manifold volume meshes? Example: A format that supports volumes that are mathematical spaces in which every point has a neighborhood which resembles Euclidean space
+
**** '''Is Supported:''' [[File Classification Manifold Volume Meshes - Is Supported::]] - Is the feature supported in the engineering format?
+
**** '''Description:''' [[File Classification Manifold Volume Meshes - Description::]] - This field is used to describe the support or lack of support of the feature.
+
*** '''Non-manifold meshes:''' - Can the format support non-manifold meshes? Example: A format that supports meshes that are not manifolds
+
**** '''Is Supported:''' [[File Classification Non-manifold Meshes - Is Supported::]] - Is the feature supported in the engineering format?
+
**** '''Description:''' [[File Classification Non-manifold Meshes - Description::]] - This field is used to describe the support or lack of support of the feature.
+
** '''Parametric representation:''' - Section describes whether or not the engineering format supports parametric representations.
+
*** '''Parametric surfaces:''' - Can the format support parametric surfaces? Example: A format that can contain surfaces that are generated with parametric equations supports parametric surfaces.
+
**** '''Is Supported:''' [[File Classification Parametric Surfaces - Is Supported::]] - Is the feature supported in the engineering format?
+
**** '''Description:''' [[File Classification Parametric Surfaces - Description::]] - This field is used to describe the support or lack of support of the feature.
+
*** '''Parametric curves:''' - Can the format support parametric curves? Example: A format that can contain curves that are generated with parametric equations supports parametric curves.
+
**** '''Is Supported:''' [[File Classification Parametric Curves - Is Supported::]] - Is the feature supported in the engineering format?
+
**** '''Description:''' [[File Classification Parametric Curves - Description::]] - This field is used to describe the support or lack of support of the feature.
+
** '''Contour sets:''' - Can the format support contour sets?
+
*** '''Is Supported:''' [[File Classification Contour Sets - Is Supported::]] - Is the feature supported in the engineering format?
+
*** '''Description:''' [[File Classification Contour Sets - Description::]] - This field is used to describe the support or lack of support of the feature.
+
** '''NURBS:''' - Can the format support Non Uniform Rational Basis Splines? Examples: The engineering formats IGES, STEP, ACIS, and PHIGS
+
*** '''Is Supported:''' [[File Classification NURBS - Is Supported::]] - Is the feature supported in the engineering format?
+
*** '''Description:''' [[File Classification NURBS - Description::]] - This field is used to describe the support or lack of support of the feature.
+
* '''Multi-resolution models:''' - Can the format support models with multiple resolutions? Examples: A format that supports a highly detailed and lowly detailed model simultaneously supports multi-resolution models.
+
** '''Is Supported:''' [[File Classification Multi-resolution Models - Is Supported::]] - Is the feature supported in the engineering format?
+
** '''Description:''' [[File Classification Multi-resolution Models - Description::]] - This field is used to describe the support or lack of support of the feature.
+
* '''Dynamics:''' - Section describes whether or not the engineering format supports dynamics.
+
** '''Kinematics:''' - Can the format support kinematics? Example: Does the format allow model parts to rotate?
+
*** '''Is Supported:''' [[File Classification Kinematics - Is Supported::]] - Is the feature supported in the engineering format?
+
*** '''Description:''' [[File Classification Kinematics - Description::]] - This field is used to describe the support or lack of support of the feature.
+
** '''Assembly:''' - Can the format support assembly? Example: Does the format allow the assembly instructions to be explicitly specified with a model?
+
*** '''Is Supported:''' [[File Classification Assembly - Is Supported::]] - Is the feature supported in the engineering format?
+
*** '''Description:''' [[File Classification Assembly - Description::]] - This field is used to describe the support or lack of support of the feature.
+
** '''Force(s):''' - Can the format support forces? Example: Does the format support acceleration forces?
+
*** '''Is Supported:''' [[File Classification Force - Is Supported::]] - Is the feature supported in the engineering format?
+
*** '''Description:''' [[File Classification Force - Description::]] - This field is used to describe the support or lack of support of the feature.
+
* '''Boundary representation''' - Can the format support models with boundary representations?
+
** '''Manifold surface boundary representations:''' - Can the format support manifold surface boundary representations? Example: The engineering format STEP
+
*** '''Is Supported:''' [[File Classification Manifold Surface Boundary Representation - Is Supported::]] - Is the feature supported in the engineering format?
+
*** '''Description:''' [[File Classification Manifold Surface Boundary Representation - Description::]] - This field is used to describe the support or lack of support of the feature.
+
** '''Manifold volume boundary representations:''' - Can the format support manifold volume boundary representations? Example: The engineering format STEP
+
*** '''Is Supported:''' [[File Classification Manifold Volume Boundary Representation - Is Supported::]] - Is the feature supported in the engineering format?
+
*** '''Description:''' [[File Classification Manifold Volume Boundary Representation - Description::]] - This field is used to describe the support or lack of support of the feature.
+
** '''Non-manifold boundary representations:''' - Can the format support non-manifold boundary representations? Example: The engineering format STEP
+
*** '''Is Supported:''' [[File Classification Non-manifold Boundary Representation - Is Supported::]] - Is the feature supported in the engineering format?
+
*** '''Description:''' [[File Classification Non-manifold Boundary Representation - Description::]] - This field is used to describe the support or lack of support of the feature.
+
* '''Material transparency:''' - Can the format support transparency? Example: Does the format allow models to have a clear window in a car?
+
** '''Is Supported:''' [[File Classification Material Transparency - Is Supported::]] - Is the feature supported in the engineering format?
+
** '''Description:''' [[File Classification Material Transparency - Description::]] - This field is used to describe the support or lack of support of the feature.
+
  
'''References:''' [[References::]] - A list of references regarding any aspects of this engineering format; any reading material supplemental to this page.
+
'''File classification:'''
 +
* '''Type {Binary, Text}:''' Binary and ASCII
 +
* '''Raster data:'''
 +
** '''Raster data 2D:'''
 +
*** '''Is Supported:''' No
 +
*** '''Description:''' N/A
 +
** '''Raster data 3D:'''
 +
*** '''Is Supported:''' No
 +
*** '''Description:''' N/A
 +
 
 +
* '''Geometric representation:'''
 +
** '''Implicit representation:'''
 +
*** '''Implicit surfaces:'''
 +
**** '''Is Supported:''' No
 +
**** '''Description:''' N/A
 +
*** '''Implicit curves:'''
 +
**** '''Is Supported:''' No
 +
**** '''Description:''' N/A
 +
*** '''Point set:'''
 +
**** '''Is Supported:''' Yes
 +
**** '''Description:''' An example of this is shown in the 3DFACE section shown in the example file above.
 +
** '''Mesh:'''
 +
*** '''Manifold surface meshes:'''
 +
**** '''Is Supported:''' No
 +
**** '''Description:''' The only mesh type structure supported is the idea of a polyface mesh which is described in more detail in the specification document.
 +
*** '''Manifold volume meshes:'''
 +
**** '''Is Supported:''' No
 +
**** '''Description:''' The only mesh type structure supported is the idea of a polyface mesh which is described in more detail in the specification document.
 +
*** '''Non-manifold meshes:'''
 +
**** '''Is Supported:''' No
 +
**** '''Description:''' The only mesh type structure supported is the idea of a polyface mesh which is described in more detail in the specification document.
 +
** '''Parametric representation:'''
 +
*** '''Parametric surfaces:'''
 +
**** '''Is Supported:''' No
 +
**** '''Description:''' N/A
 +
*** '''Parametric curves:'''
 +
**** '''Is Supported:''' No
 +
**** '''Description:''' N/A
 +
** '''Contour sets:'''
 +
*** '''Is Supported:''' No
 +
*** '''Description:''' N/A
 +
** '''NURBS:'''
 +
*** '''Is Supported:''' No
 +
*** '''Description:''' Splines are supported but NURBS are not specifically supported in DXF as these type of spline is not in the specification document.
 +
* '''Multi-resolution models:'''
 +
** '''Is Supported:''' Yes
 +
** '''Description:''' Supports different levels. Each level represents a different slice of the overall drawing. See the level discussion in the specification file and in the example file comments.
 +
* '''Dynamics:'''
 +
** '''Kinematics:'''
 +
*** '''Is Supported:''' No
 +
*** '''Description:''' N/A
 +
** '''Assembly:'''
 +
*** '''Is Supported:''' No
 +
*** '''Description:''' N/A
 +
** '''Force(s):'''
 +
*** '''Is Supported:''' No
 +
*** '''Description:''' N/A
 +
* '''Boundary representation'''
 +
** '''Manifold surface boundary representations:'''
 +
*** '''Is Supported:''' No
 +
*** '''Description:''' N/A
 +
** '''Manifold volume boundary representations:'''
 +
*** '''Is Supported:''' No
 +
*** '''Description:''' N/A
 +
** '''Non-manifold boundary representations:'''
 +
*** '''Is Supported:''' No
 +
*** '''Description:''' N/A
 +
* '''Material transparency:'''
 +
** '''Is Supported:''' No
 +
** '''Description:''' N/A
 +
 
 +
'''References:'''
 +
* [http://www.enlight.ru/demo/faq/smth.phtml?query=fmt_dxf An example dxf file]
 +
* [http://images.autodesk.com/adsk/files/acad_dxf.pdf Specification file for the version of DXF described here]
 +
* [http://usa.autodesk.com/adsk/servlet/item?siteID=123112&id=12272454&linkID=10809853 List of all released DXF specifications]
 +
* [http://en.wikipedia.org/wiki/AutoCAD_DXF#Software_which_supports_DXF Wikipedia page giving general information on DXF]
 +
* [http://betaprograms.autodesk.com/history/autocad_release_history.htm A timeline of AutoCAD releases]

Latest revision as of 22:10, 12 May 2009

Title(s): AutoCAD DXF, DXF File Format, Drawing Interchange Format, Drawing Exchange Format

Version ID: u19.1.01

Date released: January 2008

Date: December 1982

Creator(s): AutoDesk - Created as part of AutoCAD 1.0

Contributor(s): AutoDesk

Description: The DXF file format is developed by AutoDesk and is used as a CAD file format. It was originally created as a way to increase interoperability between AutoCAD and other similar programs. The DXF file format was initially meant to provide exact representation of AutoCAD drawings which were natively stored in DWG(Drawing) format. Since AutoDesk did not release the DWG specification for some time, the DXF file format and the accompanying specification were meant to allow CAD drawings to be opened, edited, and exported by any CAD program.

History: Below is a short, bulleted history of the DXF file format.

  • December 1982 - DXF file format released as part of AutoCAD 1.0
  • October 1888 - Both ASCII and binary forms of the DFX file supported in AutoCAD
  • October 1994 - Specification first released as part of AutoCAD Release 13
  • February 1997 to Current - Specification updated and released as part of every release from AutoCAD Release 14 to the latest AutoCAD 2010

Example(s): An example file found here: [1] is shown below.


 0        // Delimiter means we're starting 'something new.'
SECTION    // Aha! The 'something new' we're starting is a section
  2        // What section? 2 means ENTITIES section.
ENTITIES   // ENTITIES also means ENTITIES section. Sound redundant?
  0        // Starting 'something new' again!
3DFACE     // Oh, yeah, baby! It's a 3DFACE!
  8        // 8 means the next line tells me what layer this is on
0          // It's on layer 0. I usually ignore the layer.
 10        // The line which follows will be vertex 1 X.
50.0       // X of vertex 1 is 50.0.
 20
-50.0      // Y of vertex 1 is -50.0.
 30
-50.0      // Z of vertex 1 is -50.0
 11
50.0       // X of vertex 2 is 50.0
 21
50.0       // Y of vertex 2 is 50.0
 31
-50.0      // And so on . . .
 12
-50.0
 22
50.0
 32
-50.0
 13
-50.0
 23
-50.0      // Once we read 'em all, we see that this 3DFACE has four
 33        // vertices with the following coordinates:
-50.0      // (50,-50,-50);(50,50,-50);(-50,50,-50);(-50,-50,-50)
  0        // Starting 'something new' again!
ENDSEC     // Ah, damn, it's the end of the ENTITIES section . . .
  0
EOF        // End of file, baby! You should stop reading now.

Identifier: [2]

Documentation: [3]

File Extensions: .dxf

Applications: - AutoDesk AutoCAD

  • Native application(s): AutoDesk AutoCAD (NOTE: this was meant as an interoperable format but was originally developed by and supported by AutoCAD so it is the only program listed here.)
  • Interoperable applications: The list below, found here - [4], is a list of many programs supporting this format.
   * A9Cad
   * Adobe Illustrator
   * AGI32
   * AI4CAD 3D
   * Alibre Design
   * Altium
   * ArchiCAD
   * ArcMap
   * AutoCAD
   * Blender - Using an import script
   * BRL-CAD
   * Cadwork
   * Corel Draw
   * DWGeditor
   * Drawbase
   * Easy-PC
   * Epanet
   * Eye-Sys
   * EnRoute[1]
   * FASTechnologies NC-CAM
   * Geosoft Oasis montaj
   * Google SketchUp
   * GraphCalc - Export only
   * Inkscape - export only as of version 0.46
   * IntelliCAD
   * Harness Expert
   * Hevacomp
   * Kabeja
   * Leica Geo Office
   * Lenel OnGuard
   * LD Assistant
   * Lightcalc
   * Manifold System
   * Maple 12
   * Mathematica
   * MetaCAM
   * Microlux
   * Microsoft Visio
   * Microstation
   * miniPLAN
   * Modo (software)
   * OmniWin Cadnest
   * Paint Shop Pro
   * PETRA
   * Pro/Engineer
   * pdf2cad
   * QCad
   * RackTools
   * Rhinoceros 3D
   * Solid Edge
   * Solidworks
   * VariCAD
   * VectorWorks
   * Visual

Magic numbers: The number 0 will appear at the beginning of the file and at the beginning of every new element. It is used as a delimiter in the file. There are also a number of other magic numbers that may appear in the header section, these are outlined in p13-34 in [5]

Format(s): application/dxf

Rights: Proprietary license distributed by AutoDesk

Sustainability Factors:

  • Standardization: AutoDesk controls this format. All other programs must conform to the standards and specification put forth by AutoDesk in their yearly release of AutoCAD.
  • Adoption: Given the list of programs supporting this file format shown above I would say that adoption is fairly widespread and that any major program in the the CAD field supports DXF.
    • Licensing and patent claims: None.
  • Self-documentation: The labels and section names make the files a little more understandable but there is no inherent ability for self-documentation.
  • External dependencies: None
  • Technical protection considerations: None

File classification:

  • Type {Binary, Text}: Binary and ASCII
  • Raster data:
    • Raster data 2D:
      • Is Supported: No
      • Description: N/A
    • Raster data 3D:
      • Is Supported: No
      • Description: N/A
  • Geometric representation:
    • Implicit representation:
      • Implicit surfaces:
        • Is Supported: No
        • Description: N/A
      • Implicit curves:
        • Is Supported: No
        • Description: N/A
      • Point set:
        • Is Supported: Yes
        • Description: An example of this is shown in the 3DFACE section shown in the example file above.
    • Mesh:
      • Manifold surface meshes:
        • Is Supported: No
        • Description: The only mesh type structure supported is the idea of a polyface mesh which is described in more detail in the specification document.
      • Manifold volume meshes:
        • Is Supported: No
        • Description: The only mesh type structure supported is the idea of a polyface mesh which is described in more detail in the specification document.
      • Non-manifold meshes:
        • Is Supported: No
        • Description: The only mesh type structure supported is the idea of a polyface mesh which is described in more detail in the specification document.
    • Parametric representation:
      • Parametric surfaces:
        • Is Supported: No
        • Description: N/A
      • Parametric curves:
        • Is Supported: No
        • Description: N/A
    • Contour sets:
      • Is Supported: No
      • Description: N/A
    • NURBS:
      • Is Supported: No
      • Description: Splines are supported but NURBS are not specifically supported in DXF as these type of spline is not in the specification document.
  • Multi-resolution models:
    • Is Supported: Yes
    • Description: Supports different levels. Each level represents a different slice of the overall drawing. See the level discussion in the specification file and in the example file comments.
  • Dynamics:
    • Kinematics:
      • Is Supported: No
      • Description: N/A
    • Assembly:
      • Is Supported: No
      • Description: N/A
    • Force(s):
      • Is Supported: No
      • Description: N/A
  • Boundary representation
    • Manifold surface boundary representations:
      • Is Supported: No
      • Description: N/A
    • Manifold volume boundary representations:
      • Is Supported: No
      • Description: N/A
    • Non-manifold boundary representations:
      • Is Supported: No
      • Description: N/A
  • Material transparency:
    • Is Supported: No
    • Description: N/A

References: