User’s Guide – Professional Edition

Terra Power Tools – Professional Edition
User’s Guide


Terra Power Tools (Professional Edition) extends the core functionality of AutoCAD® Civil3D® by providing a comprehensive set of surface creation, visualization, and volumetric analysis tools. Surface data may be imported from multiple drawings and other sources. The results of the analyses can be exported as tabular text, or geometric data back to AutoCAD Civil 3D, and also saved to the Windows clipboard as CSV data. Material ‘mesh’ data exported to AutoCAD Civil 3D can be analyzed using Visual Report Designer.


Terra Power Tools is also available in a Lite Edition, which provides a subset of the features included in Terra Power Tools – Professional Edition.

User Interface

Although Terra Power Tools runs in its own UI separate from AutoCAD Civil 3D, it functions as just another AutoCAD Civil 3D dialog that operates on certain AutoCAD Civil 3D objects to perform some analyses. In the Professional Edition, these objects may come from multiple drawings, and may interact with objects that are imported from other sources as well. All imported objects may be visualized in 3d, as can material mesh objects and section views calculated from the imported object data. While tightly integrated with AutoCAD Civil 3D, the Terra Power Tools UI is built to allow both applications to remain responsive even if the other is ‘busy’ processing a command. Also, objects and analysis results created in Terra Power Tools are not automatically inserted into AutoCAD Civil 3D, thus allowing for ad-hoc calculations that do not clutter your active drawing with extraneous data or objects.


The following is a summary of the commands available in Terra Power Tools – Professional Edition

  • Import Geometric Data
    • TIN Surfaces and 3D Faces are imported as Terra Power Tools Surface entities.
    • Polylines and alignments can be imported as Path entities, which are used for laying out cross-sections.
    • Closed polylines can also be imported as Boundary entities which define regions for restricting surfaces analyses.
  • Visualize
    • Easy, point-and-click, visualization of entities and analyses results is provided as:
      • Model View: Presents surface entities and volume results as 3D geometric meshes and paths and boundaries as linear entities. Surfaces can be visualized as a smooth or flat mesh, optionally rendered in a continuous vertical gradation, or in contour form. Simple, button-click, switching between perspective and plan (2D) views is provided.
      • Section Panels: Any number of section-panels can be created depicting chosen surfaces and volume results in sectional form. Each section panel hosts a single longitudinal section along a specified path, and a series of cross-sections orthogonal to the path, at specified locations along the path. An intuitive interface allows navigation between cross-sections.
  • Create/Modify Surfaces
    • New surface entities can be created from imported ones by performing any of several geometric operations:
      • Topmost / Bottommost: Selected surfaces are combined such that the elevation of the resulting surface at any point is either the highest or the lowest of all the combined surfaces.
      • Split: A given surface, A, is used to split another surface, B, resulting in (possibly) three other surfaces representing the regions of B that are above, below, or outside of surface A.
      • Clip: A boundary entity, B, is used to clip a surface, A, producing a smaller surface representing the region of A that is either inside or outside the clip boundary B.
      • Vertical Offset: A given surface, A, is used to create a set of one or more surfaces, {Bi}, such that the elevation at any point of surface Bi is the elevation of surface A at that point plus/minus a provided offset value.
      • Level: Same-elevation surfaces are created at one or more specified values.
  • Analyze – Create Volume Results
    • Several types of volume analyses can be performed on imported and/or created surfaces:
      • Cut/Fill volumes: Any number of surface-pairs can be compared against each other to produce a comprehensive Cut and Fill volumes report. Planar (projected, 2D) areas of the Cut and Fill regions are also reported separately.
      • Material volumes: Very powerful, comprehensive analyses between surfaces can be carried out using a Material Table, which allows identification/designation of volumetric regions bounded by different surfaces as Materials. Using very simple rules, these materials are defined as volumetric envelopes that are bounded Above, Below, Immediately Above, or Immediately Below by a set of surfaces. Volumes and 2D areas are reported for each material in tabular form and as a chart. Additionally, the individual materials are identified in the model-view as separate solids.
      • Floodplain volumes: A floodplain analysis of any given surface can be computed, providing volumes and areas of flooded and un-flooded regions separately. A simple user interface allows changing the floodplain elevation dynamically so that the results of the analysis can be reported and/or visualized on the fly.
      • Layered volumes: Ponds, berms, landfills and the like can be separately analyzed for volumes at a given set of elevation-intervals. The results are reported as a table of individual and cumulative volumes/areas for each layer. A cut/fill curve allows viewing the results in chart-form.
  • Export Volume Results
    • Results of the volume analyses can be exported as native AutoCAD Civil 3D objects. The following forms of export are supported:
      • Tabular results: A simple right-click context menu can be invoked from any tabular result panel, allowing a choice of either inserting the text of the results to any open AutoCAD Civil 3D drawing, or copying the text to the clipboard as CSV data. The latter can be pasted into any CSV viewer, like MS Excel®, or a text file, for subsequent printing and/or analyses.
      • Geometric models: Created surfaces and computed volumetric results can be exported to any open, coordinate-compatible, AutoCAD Civil 3D drawing as subdivision meshes.

Main Window Components


The user interface of Terra Power Tools – Professional Edition follows the familiar Multiple Document Interface (MDI) layout used by Microsoft Windows®/Office® apps. It comprises a ribbon panel at the top hosting command buttons, organized into groups, and three detachable panels:

Model View

The Model View panel provides graphic representations of entities and volume results belonging to an entity set. Navigation inside the model view is achieved by manipulation of the (implicit) camera using either the provided camera controls or mouse buttons, as shown below:


The right edge of the model view also houses a collapsible Settings panel that has controls for other view-related manipulations, as illustrated below:


Note: Model View panels can be detached from the main window frame by holding and dragging the tab at the top.

Entity Explorer

The Entity Explorer panel lists entities and volume result items in all the datasets that are currently in use. At any time only one dataset can be active, and the entity explorer will scroll into view the items of the active dataset when its header panel is clicked. Clicking on the Model View panel of the dataset also makes it the active dataset.


The user interaction in the Entity Explorer is similar to the Microsoft Windows Explorer. Items belonging to a dataset are arranged in rows and categorized into a tree structure consisting of collapsible groups and subgroups. Right clicking an item brings up a context menu with commands relevant to the item. Multiple items can be selected by holding down the Ctrl or Shift buttons and clicking on individual items, and also by clicking and dragging in the Item Selection panel. Clicking anywhere inside an item row makes the item active or current. Note that item selection and activation are related, but distinct, concepts – item selection allows certain commands to be applied to a set of items, whereas activating an item allows viewing or modification of its properties.

Properties Panel

The Properties panel lists relevant properties of the active item, as shown above for a Surface entity. Any property that isn’t read-only can be modified, here. Note that the “Name” property for most items is listed here for reference purposes only, and can be modified in the Entity Explorer.


As a special case, an Entity Set “Name” property is displayed and can be modified when a category item, like “Surfaces” or “Entities” is made active.

Ribbon Bars

Terra Power Tools provides commands to import entities, create surfaces and section views, and to perform various kinds of surface analyses. The commands are available as clickable buttons in the main ribbon panel, and also as actionable items in relevant context-menus.

Import Entities Command Group


Commands in this group are used to import various AutoCAD Civil 3D objects like polylines, surfaces and 3D faces. The following mappings are applied for imported items:

AutoCAD Entity Terra Power Tools Entity
TIN Surface Surface
Light-weight Polyline Boundary, Path
2D Polyline Boundary, Path
3D Polyline Boundary, Path
Alignment Boundary, Path
3D Faces Surface

As noted above, polylines and alignments can be imported as either Boundaries or Paths. In a typical usage scenario, closed polylines would be used as Boundaries, and open ones as Paths. If an open polyline is used as a Boundary, it is automatically closed upon import by appending the first point at the end. Also, since Terra Power Tools uses Boundaries and Paths only as 2D linear elements to define outlines or paths, any elevation information in the imported polylines is ignored, and their elevations are set to a constant default value, slightly lower than the minimum elevation of all imported surfaces.

Refresh Surfaces

The Refresh Surfaces command looks for TIN surfaces in the currently active drawing and lists them as un-imported items in the Entity Explorer. These can subsequently be imported by right clicking on the item, or, if not needed in further computations, removed from the list. Whenever a new entity set is created, the Refresh Surfaces command is automatically invoked.

The other commands in the command group allow importing Surfaces, Paths, Boundaries, and 3D Faces by selecting them from the active drawing. In this mode, Terra Power Tools is first minimized, and then AutoCAD is brought to the foreground to allow for selection of items, and finally Terra Power Tools is restored to its original state. Alternatively, if relevant items are first pre-selected in AutoCAD, they can be imported directly by clicking on a matching command button.

Tip: If Terra Power Tools is not automatically brought back to the front after selection, click on the Terra Power Tools icon in the AutoCAD tray:


Analyze Volumes Command Group


Commands in this group compute volumes/planar-areas between selected surfaces and create a Volume Result item that serves to reference the computed results by name. Result items are added to the Entity Explorer under the “Results” category, and each has an associated Edit Panel that is initially used to create the result item and later on serves to edit the creation parameters to obtain modified results. Each result item is also associated with an Item Visual that represents the results of the computation in solid/planar form in the Model View. Like entities, result-items can be hidden or shown in the Model View by toggling the “Show” check-box in the Entity Explorer. Note that any number of result-items can be created at any time.

As noted in the illustration for Floodplain Volumes, below, all edit panels support collapsible panes that are also resizable. Also, the result tabulation can be copied to the clipboard and inserted (as an anonymous block) to the active DWG.

Tip: In some cases the edit panels may only be gripped in certain areas for moving and resizing as shown below:


Cut/Fill Volumes

The Cut/Fill Volumes command computes cut and fill volumes and planar areas between pairs of surfaces, called Base and Compare surfaces. The material enclosed by surface envelopes where the Base surface is above the Compare surface is reported as Cut material and where it is below the Compare surface, as Fill material. Any number of surface comparisons can be performed within the same tabulation.


As shown above, the command UI consists of four panes:

Settings and Actions

The Settings and Actions pane allows setting up the volume computation. The surfaces selected in the Selected Surface(s) drop down are only used for creating an initial (default) set of material definitions (also called a material table). The radio buttons in the Volume Computation group allow selection of one of three modes of computation:

  • Unbounded – volumes are computed for the entirety of all surfaces involved.
  • Bounded – volume computation is restricted within the chosen 2D Boundary.
  • Interactive – volume computation is restricted within a 2D Boundary that is allowed to be dragged around the model while the computation results are updated dynamically. This mode of operation is explained in detail in a later section.

Once the material table has valid entries, the Compute button becomes enabled and can be clicked to initiate volume computations.

Material Definition

The Material Definition pane allows specification of the different Comparisons that form the basis of the volume computations. Each row of the material table contains specifications for the Base and Compare surfaces and names/colors of the Cut and Fill materials related to the comparison. As shown in the illustration, above, drop-down lists allow choosing the Base and Compare surfaces from the list of available surfaces. The buttons at the top of the pane invoke commands that allow modifications to the material table:

  • The Create Table command creates new material definitions (or replaces existing ones) by forming pairs of Base/Compare surfaces from the list of Selected Surfaces in the Settings and Actions pane.
  • The Add Row command adds a blank row with default comparison and material names/colors.
  • The Remove Rows command removes selected rows from the table.
  • Save and Load commands allow saving and restoring the current state of the material table to/from a text file.
  • The Validate command flags invalid material definitions, if any. Invalid definitions include missing or identical Base and Compare surfaces or duplicate definitions where two comparisons have the same surfaces for Base and Compare. If the Base or Compare surfaces are not available in the entity set, as for example when an incorrect material table is loaded, it is flagged as an error.
  • The Clear Table command removes all definitions from the table.

Chart and Results Panes

The Chart and Results panes are output panes only, in that, no user input is needed or allowed, except that the Results pane permits a right click export option to save the tabular results in a CSV format to the clipboard, or inserted to the active DWG.

Material Volumes

The Material Volumes command is the most general-purpose of the volume computation commands – it allows definition of material envelopes based on topological relationships to bounding surfaces. For example, in the illustration below, where some surfaces are shown in a profile-section view, the green material is identified as being bounded by surfaces A, B, C, and D, with the specified relationships.


When TIN models are used for representing surfaces, a surprisingly small set of topological relations can be used to build very powerful material models. For Terra Power Tools, four such topological relationships are defined: Above, Below, Immediately Above, and, Immediately Below. Like in the example above, material definitions are constructed by specifying a set of surfaces along with their relationship to the material envelope.

Given a set of surfaces and a set of material definitions, Terra Power Tools first subdivides the 3D space occupied by the surfaces into polyhedrons bounded by two or more of the given surfaces. The material represented by the individual polyhedral envelopes is then determined by matching their bounding surfaces against the set of material definitions. Using the above example, the 2D equivalent of the process can be described as follows:

  1. Form all polygonal-envelopes (like the green shaded regions in the example) by intersecting line-segments representing the individual surfaces.
  2. Match the envelopes to the material definitions. In the example, only the green-shaded regions match the single definition provided, and thus will be classified as material “green”.
  3. Add areas for all envelopes for the same material to produce a composite material “area”.

Given a set of N surfaces, a Material Table in Terra Power Tools consists of one or more rows of material definitions, each of which contains N relationship-specifiers indicating the topological relationship of the material envelope to each surface:

Relationship Meaning
Above A vertical line through the material envelope will intersect the surface somewhere above it
Immediately Above The surface bounds the material envelope at the top
Below A vertical line through the material envelope will intersect the surface somewhere below it
Immediately Below The surface bounds the material envelope at the bottom
<Empty> Does not matter where the surface is in relation to the material envelope

The following example illustrates the above concepts for a scenario where material quantities are needed for different surface layers when excavating a channel:


First of all, we see that four different material quantities are needed, involving all the surfaces shown, except Water. Next, since only the material inside the drilling channel is of interest here, we can easily determine that all material definitions will have the following relationships:

Mi (Above, DrillChannel Bot) (Below, DrillChannel Top)

Further, since material M1 exists between the surfaces Ground and Level 1 only, it can now be completed as below. Note that the relationships specified are necessary and sufficient:

M1 (Above, DrillChannel Bot) (Below, DrillChannel Top) (Below, Ground) (Above, Level 1)

Following a similar logic for the remaining materials we get the following material table:




The User Interface for the Material Volumes command is very similar to the Cut/Fill Volumes command with some exceptions. As shown below, the UI consists of four panes – the first two, Settings and Actions, and Material Definition allow user input, while the other two provide computed results in chart and tabular formats. The toolbar commands for Material Volumes are very similar to the ones used for Cut/Fill Volumes. One additional command present here, Add Selected Surfaces, is used to add surfaces specified in the Settings and Actions pane as columns to the material table. In addition, a column header context menu allows adding and removing surface-columns.


In contrast to the Cut/Fill Volumes command, where the material definitions consist of comparisons between pairs of Base and Compare surfaces, here, a Material Table defines rows of material specifications. For a set of m materials and n surfaces, the material definition consists of a table of m rows and n columns with each cell Cij, specifying the topological relationship between the material (envelope) Mi and surface Sj. Note that the materials Mi don’t need to be unique. In other words, multiple rows (definitions) could identify the same material, in which case the volumes (and planar areas) of all polyhedral-envelopes satisfying any of the multiple material definitions are combined. For example, in the scenario below, where all material inside the “V” shape and below the surface S3 needs to be considered as material M1, we would need to tag both the material definition rows with the same material, M1:


Some points should be noted regarding the matching of computed polyhedral-envelopes with material definitions:

  • The conditions implied by the relationship – specifiers (Above, Below, etc.) in a given row are treated as “AND” conditions. In other words, all of them have to be satisfied. Thus, for the first row in the above example, any envelope that meets the criterion of being <Above, S1> AND <Below, S3> will be classified as material M1.
  • An empty cell in the material table implies that the surface in that cell’s column will not be used when matching the material for the cell’s row. In other words, it does not matter how the surface is topologically related to the envelope, as far as the criterion in that row is concerned.
  • The ordering of the rows and columns is irrelevant.
  • The volume (and planar-area) of a computed polyhedral envelope is added to all material accumulations whose material definition it matches. Thus, it is possible that the sum of all reported material volumes exceeds the combined volumes of all polyhedrons. At this time, the only way to check for this is visually – by turning on or off the display of individual materials.

For both Cut/Fill and Material Volume commands, the Interactive option provides an on-the-fly mode of computation, where a polygonal boundary can be dragged around the model and the dynamically computed, bounded results can be viewed as the polygon moves inside the model space. This feature can be used for large/complex models to get a quick idea of the “lay of the land”, and also provides a convenient way to check cut/fill quantities for balancing. The following procedure outlines the steps to compute interactive volumes for a Cut/Fill command:

  1. Clicking the Interactive button starts an interactive computation. The Compute button will be enabled only if there are boundaries available to drag. The Recompute button is enabled after the interactive session ends, and allows results to be recomputed if any changes are made to the material definitions.


  1. Once the material specs are in place, the Material Definitions pane can be collapsed to make room and the Chart and Results panes expanded to view the results:


As shown above, clicking the Compute button now brings up a prompt at the left-end of the status bar indicating that any polygonal boundary can be picked and dragged. The cursor changes to “drag” mode when it is positioned on a valid boundary, which highlights to indicate that it’s a valid entity for use in the drag operation.

  1. Clicking and dragging the boundary now computes volumes/planar-areas using the specified material definitions, restricting the computation to the inside of the boundary, as it is dragged along the model space:


Floodplain Volumes

The Floodplain Volumes command computes volumes and planar areas for flooded and un-flooded regions of the selected surface at the given floodplain elevation. The elevation of the floodplain can be modified using the slider or specified in the “Elevation” field. Volume results can be computed for the entire surface or can be restricted to a selected boundary. Note that if no Boundary entities exist in the data-set, the “Bounded” radio button will not be enabled.


Layered Volumes

The Layered Volumes command computes volumes between (virtual) constant-elevation layers of the selected surface. Per-layer and cumulative volumes as well as planar areas are reported for each layer. Layers can be inserted or deleted and their visibility (in the Model View) and color can be modified as desired.


As shown above, volumes can be computed as “Cut” or “Fill” type, depending on the need of the application. Typically one would use the “Fill” type computation for examining pond volumes where cumulative volumes and areas increase with increasing elevations. The “Cut” type computation, on the other hand, reports decreasing cumulative volumes and areas as elevations increase, and is suitable for situations involving removal of ground like an existing berm, or mound.


Sections Command Group

The Create command in this command group allows display of surfaces and volume results in cross-section and profile-section views. The selected volume-results are also be reported by sections.


As shown above, the command UI consists of two collapsible panes – the Section Definition and Section Views panes. The former hosts controls that allow specification of the section sources and layout, while the latter displays the actual sections. The marked regions in the UI are described below:

  1. The Section Sources group allows selection of surfaces and computed volume-results to be displayed in the profile and cross-section views.
  2. Section Path specifies the path across which the cross-sections are to be computed. It also forms the longitudinal section plane used for creating the profile-section. Different ways to specify the path are described below:


  • Select allows choosing the path from imported polyline or alignment entities.
  • The Pick button allows selecting the path from the Model View.
  • Pick from DWG allows picking a polyline or alignment from the active drawing.
  • The Refresh button is enabled only after a valid path has been specified, and refreshes the geometry of the path if it has been modified in the drawing (re-imports the path).
  1. The Cross Sections Placement settings govern the position and size of the cross-lines that define the plane of the computed cross-sections.
  2. The Create Sections button starts the computation of sections. Note that the button is enabled only when at least one section source and the section-path have been specified. Also, if any of the settings that govern the source, path or placement of the sections are modified, the button needs to be clicked again (and sections recomputed) for the changes to be reflected in the section views.
  3. The Profile Section View displays the selected surfaces and volume results in a longitudinal section (along the selected path) as a station-elevation graph.


  1. A station tracker shows the position of the current cross-section in the profile view. When volume results are included in the display, the tracker appears as a double line that has a thickness equal to the station increment and also indicates the bounds of the cross-section materials that are tabulated in the region marked (8). Note that the right edge of the tracker coincides with the current station, implying that the volumes reported pertain to the region between the previous and current station. The tracker appears as a single line when volume results are not selected to be displayed.
  2. A source-item tooltip identifies surfaces and volume results that are displayed.
  3. A point cursor displays the position of the cursor as a (station, elevation) pair for profile view. For cross-section views, an (offset, elevation) pair is displayed.
  4. “Fit View to Extents” is a right-click context menu command that can be used to fit all graphics displayed inside the view-bounds (zoom-to-extents).
  5. A horizontal resizer bar allows resizing the view in the vertical direction.
  6. The collapsible Settings panel provides controls to change the view’s vertical scale (exaggeration) and also to turn on/off the display of the grid and point cursor.

Note: Like the model-view, zoom and pan operations can be performed using the mouse scroll and middle button, respectively, inside the view region.

  1. The Station Tracking group has controls to move backward and forward through the computed cross-sections, and to select a particular station’s cross-sections for display. The check-box options are explained below:
    • Show in model view : turns the model-view tracking display on or off
    • Show in profile section view: turns the profile-view tracking display on or off
    • Use fixed zoom level for sections: is used to control the zoom scale of cross sections as they are tracked. When off (the default option), cross-section display is fit-to-extents as it moves through the list of computed sections. Turning the option on allows the same zoom-scale to be used for all sections at the current setting.
  2. The Cross Section View displays cross-sections of the selected surfaces and volume results at the current station as an offset-elevation graph. Except for the station tracking line(s) and point cursor display, the controls and behavior are identical to the Profile Section View.
  3. Materials from selected volume results are reported here for each cross-section. As mentioned previously, the volumes pertain to the region between the previous and current stations. Average-end-area volumes are also reported for comparison purposes.


A right-click context menu allows the entire tabulation (for all cross-sections) to be copied to the clipboard or inserted to the active drawing.

The following shows the model-view display of the current cross-section tracker when only surfaces are specified as the section source:


Shown below is the case when volume results are included as well:


Tip: When viewing cross-section materials in Model View for a specific volume result, it is best to turn off the Model View display of the same volume result in the Entity Explorer, since otherwise the latter will overlap the cross-section tracker content in the Model View

Create Surfaces Command Group

Commands in this group allow creation of new surfaces from existing ones by using various operations on the existing surfaces. Each command brings up a modal interface which allows setting of required/optional parameters. Clicking on the ‘OK’ button executes the command, creating one or more surfaces following the intended operation of the command. The name(s) of the created surface(s) are initially chosen to reflect the command used to create them, for example, “TOP_Surf1_Surf2” for the topmost surface of “Surf1” and “Surf2”, and can later be changed through the Entity Explorer.

The Create Level Surfaces command creates same-elevation surfaces at even intervals within a range, and/or at specific elevations:


The Create Vertical-Offset Surfaces command creates surfaces at one or more specified vertical-offset values from a given surface, such that elevation at any point on the offset surface is equal to the elevation of the target surface at that point +/- the offset distance:


The Create Split Surfaces command uses a splitting surface to create sub-regions of the target surface that are above, below, or outside (the 2D bounds of) the splitting surface:


The Create Clipped Surface command creates a new surface that represents the resultant surface after removing a region of a given surface that lies inside or outside a specified boundary entity:


The Create Topmost Surface command combines selected surfaces such that the elevation of the resulting surface at any point is the highest of all the combined surfaces. Similarly, the Create Bottommost Surface command produces a surface that has the lowest elevation of the combined surfaces:



Notes re Data Organization/Workflow

Model data is initially brought into Terra Power Tools as imported entities. Subsequently, using appropriate commands, other entities deriving from the imported ones can be created. For example, the Create Topmost Surface command is used to create a new surface that represents the combined topmost surface of selected (previously imported or created) surfaces. During the course of a typical session, other data will be created that represents the results of volumetric analyses or section-views of model data. All such data that logically belongs to one user-site or project is organized into one Entity Set.

An entity set, while loosely related to an AutoCAD Civil 3D (or AutoCAD) drawing, is not limited to modeling entities imported from that drawing alone. A single entity set is allowed to host data from multiple drawings (or any other valid source) as long as all entities are sensibly coordinate compatible. Also, at any given time, multiple entity sets can be used to host data from different (or the same) project/site and/or drawing.

The entity set also forms the unit for saving and restoring data, allowing information about the currently imported or created data to be saved into a file. Information saved to a file can later be restored to the point where it was last saved. It should be noted that Terra Power Tools does not save geometric data belonging to the entities, and the restore operation actually re-imports the saved entities from the same drawing that was initially used to import the entities. The restored entities thus reflect the state of entities as they currently exist in the drawing. Consequently, any derived entities or results will also reflect the current state of their base entities.


The web store has been temporarily placed in demo/test mode while we update and test some new features. If you see this message and wish to make a purchase please contact Thank you.