What is a DXF File?
DXF is the format that gets a drawing from one program to another when nothing else will. Almost every survey, GIS and design package reads and writes it, which makes it the common language of site drawings — and also the format most likely to open looking slightly wrong. Here is what is inside one, and what to check when it does.
What a DXF actually contains
A DXF is a drawing exchange file: a structured, mostly human-readable description of geometry. Points, lines, polylines, arcs, circles, text and 3D faces, each sitting on a named layer.
Layers are the organising principle. Contours on one, breaklines on another, boundaries on a third — layer names are how the receiving software knows what it is being handed, so they carry more meaning than people usually give them credit for.
Blocks let a repeated symbol — a tree, a manhole, a survey marker — be defined once and placed many times. That keeps files small, but a block is only as portable as its definition.
What a DXF does not contain
A coordinate reference system. This is the single biggest source of confusion. A DXF holds numbers, not a declaration of what those numbers mean.
The coordinates might be a projected grid in metres, a local site grid with an arbitrary origin, or millimetres from a corner of the sheet. Nothing in the file says which. Two DXFs can both be "correct" and land kilometres apart.
Units are equally slippery. A DXF has a units header, but it is often left at the default and ignored by the exporting program. A drawing in millimetres opened as metres is a thousand times too big — an unmistakable failure. A drawing in feet opened as metres is only 3.28 times off, which is far more dangerous because it can look plausible.
2D or 3D?
Elevation in a DXF can live in two very different places. In a true 3D drawing every vertex carries a Z value. In a flattened 2D drawing the geometry sits at Z = 0 and the elevation exists only as a text label beside the line.
Contours exported flat are the usual case. They look right on screen and are useless as a surface, because the height information is text, not geometry.
If you intend to build a surface from a DXF, check that the polylines actually carry Z. It takes seconds and saves an afternoon.
When a DXF opens wrong
Work through it in this order, because the symptoms overlap.
Nothing visible: the drawing is probably fine but far away — zoom to extents. If the extents are absurd, one stray entity at a huge coordinate is dragging them.
Everything tiny or enormous: a unit mismatch. Check the ratio; 1000 means mm/m, 3.28 means ft/m.
Correct shape, wrong place: a coordinate system or local-grid issue. The geometry is right; the datum it was drawn against is different.
Missing symbols: blocks that did not travel with the file, or an external reference that was never bound in.
Flat where it should have height: a 2D export, as above.
Working with DXF and terrain together
DXF is where a terrain job usually starts and ends. Boundaries, design lines and existing services arrive as DXF and need to be draped over the surface to make sense; plans, cross-sections and profiles go back out as DXF because that is what the construction set expects.
STREAM imports DXF drawings and displays them on the terrain, and exports plans, sections and profiles back to DXF. The rule that keeps it painless is the same one that applies to every other layer: know the coordinate system and the units of the file before you bring it in, because the file will not tell you.
Import and export DXF in STREAM
Native Windows · fully offline · free beta