Difference between revisions of "AutoCAD DXF"

From GICL Wiki
Jump to: navigation, search
 
(6 intermediate revisions by one user not shown)
Line 6: Line 6:
 
'''Date released:''' January 2008
 
'''Date released:''' January 2008
  
'''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 68: Line 68:
 
'''Identifier:''' [http://usa.autodesk.com/adsk/servlet/item?siteID=123112&id=12272454&linkID=10809853]
 
'''Identifier:''' [http://usa.autodesk.com/adsk/servlet/item?siteID=123112&id=12272454&linkID=10809853]
  
'''Documentation:''' [http://usa.autodesk.com/adsk/servlet/item?siteID=123112&id=12272454&linkID=10809853]
+
'''Documentation:''' [http://images.autodesk.com/adsk/files/acad_dxf.pdf]
  
 
'''File Extensions:''' .dxf
 
'''File Extensions:''' .dxf
Line 134: Line 134:
 
'''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]
 
'''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]
  
'''Format(s):''' ASCII and binary type supported
+
'''Format(s):''' application/dxf
  
 
'''Rights:''' Proprietary license distributed by AutoDesk
 
'''Rights:''' Proprietary license distributed by AutoDesk
Line 150: Line 150:
 
* '''External dependencies:''' None
 
* '''External dependencies:''' None
  
* '''Technical protection considerations:''' [[Technical protection considerations::]] - Any considerations that are necessary when it comes to technical protection.
+
* '''Technical protection considerations:''' None
  
'''Typical use:''' [[Typical use::]] - Keywords that describe the format's typical use. Examples: CAD and CAM
+
'''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
  
'''File classification:''' - Specific properties that pertain to this engineering format.
+
* '''Geometric representation:'''
* '''Type {Binary, Text}:''' [[File Classification Type::]] - The type of file, choices are binary and text.
+
** '''Implicit representation:'''
* '''Raster data:''' - Section describes whether or not the engineering format supports raster data.
+
*** '''Implicit surfaces:'''
** '''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:''' No
*** '''Is Supported:''' [[File Classification Raster Data 2D - Is Supported::]] - Is the feature supported in the engineering format?
+
**** '''Description:''' N/A
*** '''Description:''' [[File Classification Raster Data 2D - Description::]] - This field is used to describe the support or lack of support of the feature.
+
*** '''Implicit curves:'''
** '''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:''' No
*** '''Is Supported:''' [[File Classification Raster Data 3D - Is Supported::]] - Is the feature supported in the engineering format?
+
**** '''Description:''' N/A
*** '''Description:''' [[File Classification Raster Data 3D - Description::]] - This field is used to describe the support or lack of support of the feature.
+
*** '''Point set:'''
* '''Geometric representation:''' - Section describes whether or not the engineering format supports geometric representations.
+
**** '''Is Supported:''' Yes
** '''Implicit representation:''' - Section describes whether or not the engineering format supports implicit representations.
+
**** '''Description:''' An example of this is shown in the 3DFACE section shown in the example file above.
*** '''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.
+
** '''Mesh:'''
**** '''Is Supported:''' [[File Classification Implicit Surfaces - Is Supported::]] - Is the feature supported in the engineering format?
+
*** '''Manifold surface meshes:'''
**** '''Description:''' [[File Classification Implicit Surfaces - Description::]] - This field is used to describe the support or lack of support of the feature.
+
**** '''Is Supported:''' No
*** '''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.
+
**** '''Description:''' The only mesh type structure supported is the idea of a polyface mesh which is described in more detail in the specification document.
**** '''Is Supported:''' [[File Classification Implict Curves - Is Supported::]] - Is the feature supported in the engineering format?
+
*** '''Manifold volume meshes:'''
**** '''Description:''' [[File Classification Implicit Curves - Description::]] - This field is used to describe the support or lack of support of the feature.
+
**** '''Is Supported:''' No
*** '''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.
+
**** '''Description:''' The only mesh type structure supported is the idea of a polyface mesh which is described in more detail in the specification document.
**** '''Is Supported:''' [[File Classification Point Set - Is Supported::]] - Is the feature supported in the engineering format?
+
*** '''Non-manifold meshes:'''
**** '''Description:''' [[File Classification Point Set - Description::]] - This field is used to describe the support or lack of support of the feature.
+
**** '''Is Supported:''' No
** '''Mesh:''' - Section describes whether or not the engineering format supports mesh.
+
**** '''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 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
+
** '''Parametric representation:'''
**** '''Is Supported:''' [[File Classification Mainfold Surface Meshes - Is Supported::]] - Is the feature supported in the engineering format?
+
*** '''Parametric surfaces:'''
**** '''Description:''' [[File Classification Manifold Surface Meshes - Description::]] - This field is used to describe the support or lack of support of the feature.
+
**** '''Is Supported:''' No
*** '''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
+
**** '''Description:''' N/A
**** '''Is Supported:''' [[File Classification Manifold Volume Meshes - Is Supported::]] - Is the feature supported in the engineering format?
+
*** '''Parametric curves:'''
**** '''Description:''' [[File Classification Manifold Volume Meshes - Description::]] - This field is used to describe the support or lack of support of the feature.
+
**** '''Is Supported:''' No
*** '''Non-manifold meshes:''' - Can the format support non-manifold meshes? Example: A format that supports meshes that are not manifolds
+
**** '''Description:''' N/A
**** '''Is Supported:''' [[File Classification Non-manifold Meshes - Is Supported::]] - Is the feature supported in the engineering format?
+
** '''Contour sets:'''
**** '''Description:''' [[File Classification Non-manifold Meshes - Description::]] - This field is used to describe the support or lack of support of the feature.
+
*** '''Is Supported:''' No
** '''Parametric representation:''' - Section describes whether or not the engineering format supports parametric representations.
+
*** '''Description:''' N/A
*** '''Parametric surfaces:''' - Can the format support parametric surfaces? Example: A format that can contain surfaces that are generated with parametric equations supports parametric surfaces.
+
** '''NURBS:'''
**** '''Is Supported:''' [[File Classification Parametric Surfaces - Is Supported::]] - Is the feature supported in the engineering format?
+
*** '''Is Supported:''' No
**** '''Description:''' [[File Classification Parametric Surfaces - Description::]] - This field is used to describe the support or lack of support of the feature.
+
*** '''Description:''' Splines are supported but NURBS are not specifically supported in DXF as these type of spline is not in the specification document.
*** '''Parametric curves:''' - Can the format support parametric curves? Example: A format that can contain curves that are generated with parametric equations supports parametric curves.
+
* '''Multi-resolution models:'''
**** '''Is Supported:''' [[File Classification Parametric Curves - Is Supported::]] - Is the feature supported in the engineering format?
+
** '''Is Supported:''' Yes
**** '''Description:''' [[File Classification Parametric Curves - Description::]] - This field is used to describe the support or lack of support of the feature.
+
** '''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.
** '''Contour sets:''' - Can the format support contour sets?
+
* '''Dynamics:'''
*** '''Is Supported:''' [[File Classification Contour Sets - Is Supported::]] - Is the feature supported in the engineering format?
+
** '''Kinematics:'''
*** '''Description:''' [[File Classification Contour Sets - Description::]] - This field is used to describe the support or lack of support of the feature.
+
*** '''Is Supported:''' No
** '''NURBS:''' - Can the format support Non Uniform Rational Basis Splines? Examples: The engineering formats IGES, STEP, ACIS, and PHIGS
+
*** '''Description:''' N/A
*** '''Is Supported:''' [[File Classification NURBS - Is Supported::]] - Is the feature supported in the engineering format?
+
** '''Assembly:'''
*** '''Description:''' [[File Classification NURBS - Description::]] - This field is used to describe the support or lack of support of the feature.
+
*** '''Is Supported:''' No
* '''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.
+
*** '''Description:''' N/A
** '''Is Supported:''' [[File Classification Multi-resolution Models - Is Supported::]] - Is the feature supported in the engineering format?
+
** '''Force(s):'''
** '''Description:''' [[File Classification Multi-resolution Models - Description::]] - This field is used to describe the support or lack of support of the feature.
+
*** '''Is Supported:''' No
* '''Dynamics:''' - Section describes whether or not the engineering format supports dynamics.
+
*** '''Description:''' N/A
** '''Kinematics:''' - Can the format support kinematics? Example: Does the format allow model parts to rotate?
+
* '''Boundary representation'''
*** '''Is Supported:''' [[File Classification Kinematics - Is Supported::]] - Is the feature supported in the engineering format?
+
** '''Manifold surface boundary representations:'''
*** '''Description:''' [[File Classification Kinematics - Description::]] - This field is used to describe the support or lack of support of the feature.
+
*** '''Is Supported:''' No
** '''Assembly:''' - Can the format support assembly? Example: Does the format allow the assembly instructions to be explicitly specified with a model?
+
*** '''Description:''' N/A
*** '''Is Supported:''' [[File Classification Assembly - Is Supported::]] - Is the feature supported in the engineering format?
+
** '''Manifold volume boundary representations:'''
*** '''Description:''' [[File Classification Assembly - Description::]] - This field is used to describe the support or lack of support of the feature.
+
*** '''Is Supported:''' No
** '''Force(s):''' - Can the format support forces? Example: Does the format support acceleration forces?
+
*** '''Description:''' N/A
*** '''Is Supported:''' [[File Classification Force - Is Supported::]] - Is the feature supported in the engineering format?
+
** '''Non-manifold boundary representations:'''
*** '''Description:''' [[File Classification Force - Description::]] - This field is used to describe the support or lack of support of the feature.
+
*** '''Is Supported:''' No
* '''Boundary representation''' - Can the format support models with boundary representations?
+
*** '''Description:''' N/A
** '''Manifold surface boundary representations:''' - Can the format support manifold surface boundary representations? Example: The engineering format STEP
+
* '''Material transparency:'''
*** '''Is Supported:''' [[File Classification Manifold Surface Boundary Representation - Is Supported::]] - Is the feature supported in the engineering format?
+
** '''Is Supported:''' No
*** '''Description:''' [[File Classification Manifold Surface Boundary Representation - Description::]] - This field is used to describe the support or lack of support of the feature.
+
** '''Description:''' N/A
** '''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.
+
'''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: