Terrain schema properties

A terrain dataset's properties are set throughout various stages of the terrain dataset creation process. The following are schema properties of a terrain dataset.

Average point spacing

When a terrain dataset is created, the average point spacing of the input measurements must be specified. The terrain dataset uses this information to define a horizontal tiling system into which input measurements are divided. The average point spacing is used as a means to bin, or group, the points together, constructing a virtual tile system. The tile system's origin is based on the domain of the feature dataset. Specify the spacing in the horizontal units of the target feature dataset. This system is one of the mechanisms used by the terrain to improve the performance of spatial queries. It also helps split the data up into manageable chunks. For the most part, the tile system is internal and managed by a terrain. It saves you from having to tile and chunk this data yourself.

Usually, the average point spacing is defined as part of the data procurement process and is recorded as metadata. If you don't know the average point spacing of your data, you'll need to determine what it is. The best average spacing to use for terrain is that which represents the most common distance between points and vertices. For example, there may be some points that are only 0.2 meters apart, and some that are 5 meters apart, but if the vast majority are approximately 2 meters apart, that is the value you should specify. Outliers should have little to no influence. When working with data from different datasets with varying resolutions, use the smallest point spacing from all the contributing datasets. Use the Point File Information tool.

Height source

When adding a feature class to a terrain, you need to indicate whether or not it has z-values and, if so, where they come from. In the case of 3D features, the z-values reside with the shape geometry. Indicate the Shape field as the source because this is a reference to the geometry. You can tell whether or not a feature class is 3D by reviewing the Source tab of the feature class's Layer Properties dialog box in ArcGIS Pro.

Surface feature type (SFType)

When adding a feature class to a terrain, you need to indicate its surface feature type. This defines the role the feature class will play in defining the terrain dataset surface. There are mass points, breaklines, and several polygon types. Breaklines and polygons also have hard and soft qualifiers. These indicate to the natural neighbors interpolator whether the surface crosses over the features smoothly (soft) or with a potentially sharp discontinuity (hard). Terrain datasets can be made from different types of data. These include lidar and sonar points, breaklines and points derived from stereo photography, and other forms of survey data. Supported geometry types include points, multipoints, lines, and polygons.

Mass points

Point and multipoint feature classes can only be represented as mass points. The mass point surface feature type is used to store many points in one database row. Points are used to record surface-specific peaks and pits as well as provide non-feature-specific samples at predetermined minimum spacing to satisfy project accuracy requirements. Many new sensors, such as lidar, can produce huge arrays of mass points that can be used to derive high-resolution terrain datasets. Often, data file formats such as LAS can be loaded into multipoint feature classes in the geodatabase, which are subsequently used as data sources for building a terrain dataset. The LAS To Multipoint tool is available to load LAS datasets into the geodatabase.


Breaklines are lines with height (z) recorded at each vertex. They become sequences of one or more triangle edges. Breaklines typically represent either natural features, such as ridgelines or streams, or built features, such as roadways.

Clip polygons

These polygons are used to define boundaries for terrain surfaces. They're needed when a data area has an irregular shape. Without a clip polygon, the data area is convex.

Erase polygons

These polygons define holes in a terrain. These are used to represent areas for which you have no data or want no interpolation to occur. They display as voids, and analysis treats them as areas of NoData.

Replace polygons

Replace polygons define areas of constant height. These are typically used to represent water bodies or human-made features that are flat. Replace polygons are best used when other measurements may exist in their interior that have different heights, and you want them reset. If you know there are no contradictory measurements within these areas, add the features as breaklines instead of replace polygons, because there's less work to do in the triangulator and they are added faster.

Hard or soft surface feature types

Hard and soft qualifiers for line and polygon feature types are used to indicate whether a distinct break in slope occurs on the surface at their location. This information influences the behavior of the natural neighbors interpolator. It interprets the terrain surface as smooth except when crossing hard lines and hard polygon boundaries.

All the SFTypes other than mass points support the hard or soft qualification. Some examples of hard features are lake shorelines, streams, building pads, curb lines along roads, and road cuts. Some examples of soft features are study area boundaries, ridge and valley lines for smooth or rolling topography, void area boundaries, and contours (contours can also be added as mass points).

Terrain pyramids

Pyramids are levels of detail generated for a terrain dataset to improve efficiency for some applications. They are used as a form of scale-dependent generalization. Pyramid levels take advantage of the fact that accuracy requirements diminish with scale. They are similar in concept and purpose to raster pyramids, but their implementation is different.

Terrain pyramids are generated through the process of point reduction, also known as point thinning. This reduces the number of measurements needed to represent a surface for a given area. For each successive pyramid level, fewer measurements are used, and the accuracy requirements necessary to display the surface drop accordingly. The original source measurements are still used in coarser pyramids, but there are fewer of them. No resampling, averaging, or derivative data is used for pyramids.

Overview terrain

The overview terrain is the coarsest representation of the terrain dataset and is intended for fast drawing at small scales. The overview is what's drawn by default when zoomed to the full extent of the terrain dataset. It is a vector-based thumbnail representation. Point-based data sources are always used in the overview terrain. Other feature classes participating in the terrain can be represented in the overview by setting this property to TRUE in the creation process. Only set those feature classes that must be represented in the overview to TRUE. For example, you probably don't need detailed breaklines, but you might need a clip polygon, particularly if the data boundary is irregularly shaped. If the boundary you have is detailed, generalize it and use the coarser representation for the overview. The detailed version should be used in more detailed pyramid levels.


Groups are used to define multiple levels of detail for line and polygon features. Since terrains do not have an automated way of generalizing lines and polygons, you need to do this up front and tell a terrain, through group definition, how the features should be used.

For example, you may have a very detailed clip polygon feature class that should be used only at large scales. You can create one or two generalized versions of this, using the Simplify Polygon tool, for use at smaller scales and define a group. Assigning the same group ID to each polygon feature class tells the terrain they belong to the same theme (for example, the study area boundary). You then assign different resolution bounds to each as a means to describe in which pyramid levels each will be used. Since they represent the same thing at different levels of detail, they need to be enforced in different, nonoverlapping pyramid levels. When a terrain encounters multiple feature classes with the same group ID, it ensures they participate in different pyramid levels. There is no grouping for points or multipoints since a terrain dataset has a methodology for generalizing them.

Embedded feature classes

Terrain pyramids can require a significant amount of storage space. The size is roughly equivalent to that of the geometry present in the feature classes participating in the terrain. For large point collections, typically represented by lidar or sonar, the cost of storage may be prohibitive. In these cases, large multipoint feature classes can be embedded in a terrain dataset as a way to save storage space.

When a multipoint feature class is embedded, its geometry and, optionally, LAS lidar attributes are copied directly into the terrain pyramid structure. This copying occurs during the build process. After the terrain is built, it becomes the container of the points and no longer references the source feature class. That feature class can be deleted, allowing you to recover its storage space. Keep in mind that subsequent builds involving schema edits will temporarily require roughly that amount of space for processing.

Pyramid resolution bounds

Minimum and maximum resolution bounds are used for feature classes added as polyline or polygon surface feature types. They define the range of pyramid levels at which the features will be enforced in the surface. You provide the resolution thresholds, given in the resolution of the terrain's pyramid levels.

Anchor points

Anchor points remain through all pyramid levels of a terrain dataset. They are never filtered or thinned away. This ensures they are present in the terrain surface regardless of what resolution pyramid level is being used. This applies to both display and analysis operations.

The intent of anchor point support is to provide the option to preserve a relatively small collection of important measurements, such as control points, benchmarks, and golden soundings, in the terrain at all times. An example application is navigation safety, where a generalized pyramid level can be used for analysis with the assurance that critical mountain peaks (for air) or shallow features (for water) are in the surface model and have not been filtered out along with other less critical information.

A point feature class can be assigned the anchor property when it's added to a terrain dataset. Multipoint feature classes are not supported as anchor points due to the size that multipoint feature classes can reach. To change this property, you can remove and add the feature class again using a different setting.

Related topics