As you have seen, there are a number of inherently different ways of representing elevation data: grids, points, TINS, contours, etc. For each one of these data types, there are multiple file formats that can be used to save and exchange them.
Elevation data can be a simple collection of XYZ points, often called a point cloud when the points are numerous and very densely spaced, as with lidar data. Point data is conceptually simple; however, it is often advantageous to attach a large number of attributes to each point, in which case, the file structure can become very cumbersome very quickly. ASCII and SHP work for small datasets, but are very inefficient for large numbers of attributed points.
A DEM is a raster, just like an optical image, so it can be stored in many of the common image formats described in Lesson 4. The important difference is that each cell in an image raster usually contains a discrete integer value (for example, in an 8-bit image, each cell contains an integer value from 0 - 255), whereas elevation values are continuous and can be expressed with decimal places appropriate for the accuracy of the data. Elevation rasters, therefore, are defined to store floating point [1] values rather than integers.
Commonly encountered raster elevation formats, previously described as image formats, are:
Common raster formats specifically designed for elevation data only are:
Both of these formats are used for specific data products that meet USGS or NGA product standards; post-spacing, accuracy, and collection methods are prescribed in addition to the format of the file itself. These formats are only used for these USGS and NGA products; they are not generally used for more generic elevation datasets.
A digital terrain model consists of 3D points and 3D breaklines. There are a number of CAD data formats, such as AutoCAD DXF and Microstation DGN, which hold both point and line data in a single file. This is less common in GIS, where files are normally restricted to one type: either point, line, or polygon. Geodatabases can contain multiple feature classes to accommodate these multiple topologies.
A DSM is a special case of either a point cloud, a DEM, or a DTM; the difference is whether the elevation surface represented is bare ground or if it contains above ground features. Data formats used for DSMs are the same as for point clouds, DEMs, and DTMs described above.
TINs are an efficient representation of terrain for visualization and analysis, but they are most efficiently used when generated on-the-fly and stored in random access memory (RAM). Points, DEMs, and DTMs can all be used to generate TINs, and there are many different TIN generating algorithms and data formats; some are open source but many are proprietary. It is quite uncommon to see a TIN specified as a deliverable product; therefore no specific TIN formats are presented here.
Breaklines are 3D lines, and they can be represented in any number of common 3D polyline formats, such as:
Contours are isolines of elevation; a single contour line has the same elevation value everywhere. Historically, contours were often stored as 2D lines, with the elevation added as an attribute or label. That approach makes it very difficult to do any kind of 3D analysis on a contour layer; therefore, it is most common today to find contours in the same 3D polyline formats described above for breaklines.