2D or 3D Linework in DXF Format

This video explains how and why TBC does what it does on output of DXF and DWG files due to AutoCADs Linetypes and ites limited support of 3D geometry. This affects Access and SCS900 / Siteworks Controllers if you opt to use DXF in place of the new smarter VCL formats that have better support for curved horizontal and vertical geometries.

Video gives the details

Here is some supporting information

One of the challenges with DXF / DWG Files is that they really dont support 3D lines that incorporate curves (Arcs, Spirals, Vertical Curves, Vertical) at all - in a DXF / DWG AutoCAD itself has to create the 2D Arcs on a tilted plane (UCS) in order to give it elevation at all. The challenge that we have is that in TBC we have Lines that are “smarter” than lines that are supported in an AutoCAD DXF file, so we have to “Down Grade” the lines to something that a DXF File can work with.

In TBC we have the following Line Types and I will try to indicate what happens to those in a DXF / DWG File and maybe that helps you to work through what to do to get what you need in Access.

  1. Alignment - this includes a Horizontal and Vertical Alignment. Those can contain Spirals, Vertical Curves (Parabolas) and Vertical Arcs none of which are supported in a DXF File / DWG File. So TBC has to “chord” those lines to be able to write them as 3D lines to AutoCAD. It uses the Project Settings - Computations - Surfaces - Beakline Approximation Parameters to do that. These specify an “Arc to Chord tolerance” that when exceeded forces the export to drop a chord point into the output lines. The output line at the chord points equals the original alignment. The lines between the chord points will be “off” from the original design by as much as the arc to chord tolerance that you defined in Project Settings - ie if you use a 2mm tolerance your lines can be off by as much as 2mm from the source line at all but the chord points (mid chord). We apply these in Horizontal and Vertical - so either type of curve is chorded on output

  2. Linestring - a linestring can incorporate Arcs in the Horizontal and Vertical Curves and Vertical Arcs in the Vertical. The lines can have independent elevation points defined on the line (that are not at 2D nodes of the line) and these are exported as nodes in the output line. Because DXF doesnt support 3D Curves or independent elevation points or vertical curves or vertical arcs in a line, we have to again chord these lines if they are 3D and incorporate any of these elements.

  3. Polylines - typically in TBC a Polyline is a 2D line with a single elevation like a contour. If it contains Arcs and Line segments only then this will go out as a Polyline and work OK in a DXF file. If you use the “Smooth” option in the polyline properties, then it will go out to the DXF as a Spline curve.

  4. CAD LINE - this is typically a 3D line that has no curves in it, if that is the case then this goes out as a 3D Line into a DXF file and should work OK in AutoCAD or Access.

So AutoCAD DXF is an Old Format to use and really is less than ideal for Field Stakeout. Access also supports two other forms of linework data which you may find better

  1. LandXML - you can send out one Alignment plus a lot of 3D lines in a LandXML - however all of the lines in the LandXML are chorded and need to be made into a surface in TBC in order to output them as linework - so you will lose your curves on road pavement edges and curbs etc - so maybe not much better

  2. Moss / MX GENIO - again you can send out an alignment plus multiple 3D strings - again these are chorded lines so again maybe not perfect - if you want to use this format you may want to look at the Rockpile Solutions TML for Moss / MX Export as that gives a lot of control on how to take TBC data and map it correctly to an MX GENIO file output. MX files do support what they call 6D strings that include curves but Access does not support those as far as I know.

  3. What some people do is output a Surface for Elevation control and a DXF file as 2D linework - that way you get the Horizontal Curvature for linework and a surface for elevation controls. Some people output 2D and 3D lines on different layers so they have data for each type of work.

On the Construction Side we use SiteWorks as our controller so I am not as familiar with Access - you may want to check out the Geospatial Forum and ask for input there as they may have some other suggestions. We have just started to use TBC VCL files in Siteworks so that we can leverage the smart data that they contain compared to DXF, LandXML etc which all have their place but don’t really support “Site Layout” as well as VCL files do.

When you output a DXF File you can elect to output as 2D or 3D - the two options will affect what gets output to the DXF file based on the source object types in TBC.

1 Like