Skip to main content

Trace by Attributes

Description

Traces upstream or downstream based on Arc Hydro standard attributes. Two possible sets of Arc Hydro attributes are used in tracing and must exist in the input trace feature class.

  • "From_Node" and "To_Node". This will normally be associated with line features. The "From_Node" indicates upstream of the trace feature, "To_Node" indicated downstream of the trace feature. This pair will allow tracing through systems with flow splits (braided and non-dendritic systems).
  • "HydroID" and "NextDownID". This can be associated with any type of features (points, lines, polygons). This tool does not use flow split table if one exists, so using these attributes will produce trace results that pick only one branch at flow splits (the one indicated by NextDownID). This can be used to return only the main flow path in a braided system. Note that NextDownID has to point to the HydroID of the main path downstream feature.

Only one of the sets must be present in the feature class, but it is valid to have both. The tool will first look for from-to node set and if not present, will use HydroID-NextDownID set. If parameter "Propagation Count" is set to 1, HydroID-NextDownID will be used if present.

For systems that are non-dendritic to trace through all downstream paths use from-to node attribute pair and set "Trace Propagation Count" parameter to 0. To trace only through main flow path set "Trace Propagation Count" parameter to 1. That will default to use of HydroID-NextDownID set for tracing. You have to ensure that NextDownID stored in the input trace feature class is HydroID of the downstream main path.

The start and barrier points can be either entered interactively or be in a point feature class. One or many points can be used to initiate the trace (barrier points are optional). If entered interactively, they are stored in a temporary feature class that will be overwritten each time the tool is run. If you want to keep points from the previous run and just add to them, or change direction of trace, rerun the tool using "Results" instead of running the tool through toolbox - this will maintain existing interactive points. Or persist the points by exporting them into a permanent feature class before running the tool and then use that as the input.

Selection of start and barrier trace features is based on spatial selection from start and barrier input points using "Search Distance" parameter. Any trace features found within search distance from input points will be used as start or barrier features. To precisely control the trace features to use, best practice is to snap the point onto the trace feature and set the "Search Distance" to 0.

The trace result is stored as a feature layer called "ts_result". After each run, this layer is refreshed, so only the last trace results are maintained. To make that permanent, you have to save the layer into a feature class."

Trace Propagation Count" parameter can be used to limit the upstream or downstream trace through each trace feature. It indicates how many upstream or downstream features will be maintained at each feature when tracing. The value set to 0 will use ALL found upstream/downstream features, so there will be no limit on the trace propagation. Value of 1 will keep only one feature (randomly selected from the set if more than one is found). 2 will keep 2 (if available), and so on. For example, if "Trace Propagation Count" is set to 1 and you do:

  • Downstream trace. If there is a flow split (divergence) at a feature, only one of the downstream diverging features will be selected and trace will continue only through it.
  • Upstream trace. In a typical dendritic system, every feature will have more than one upstream feature (unless they are head features or there are pseudonodes in the system). In this case only one (random) upstream branch will be used to continue trace upstream.

Usage

Parameters

Parameter NameTypeDirectionData TypeDialog Reference
Input Start PointsRequiredInputFeature SetInput points to be used as starting points for the trace. They are used to select the trace features that will originate the trace. One or many can be defined. They should be placed on or near the trace feature to make sure correct selection is made. The point needs to be within "Search Distance" from a trace feature to be used in tracing.

Points can be defined either interactively or as a feature class. If defined interactively, they will be stored in temporary feature class "ts_start_points" in scratch geodatabase. Interactive points are transient in nature. Next run of the tool will overwrite them.

Outputs:

Tracing results line layer
Tracing layer with resulting line selected
", " separated list of ArcIDs of the trace resulting lines
"," separated list of ArcIDs of start elements/lines (lines that starting flags hit)
Input BarriersOptionalInputFeature SetBarrier Points

Input points to be used as barriers for the trace. They are used to select the trace features that will prevent propagation of the trace. One or many can be defined. They should be placed on or near the trace feature to make sure correct selection is made. The point needs to be within "Search Distance" from a trace feature to be barrier for tracing.

Points can be defined either interactively or as a feature class. If defined interactively, they will be stored in temporary feature class "ts_barriers" in scratch geodatabase. Interactive points are transient in nature. Next run of the tool will overwrite them.
Input Trace LayerRequiredInputFeature LayerFeature class to be used for tracing. Any type of feature class can be used to trace through as long as it has appropriate fields identifying downstream elements, typically, [HYDROID, NextDownID] or [From_Node, To_Node].
KeyID FieldRequiredInputStringKeyID identifiess the element in a trace (trace downstream=From_Node, or HydroID, upstream=To_Node, or NextDownID)
NextID FieldRequiredInputStringNextID identifies next element in a trace. (trace: downstream=To_Node or NextID, upstream=From_Node, or HydroID)
ArcID FieldOptionalInputStringUniqudID of a to be traced on feature (Line [arc], Polygon, or Point), Default=OBJECTID.
Search DistanceOptionalInputLinear UnitSelection of start and barrier trace elements is based on spatial selection from start and barrier input points. Spatial search is hardcoded to 50m.
Trace Propagation CountOptionalInputLongNumber of downstream/upstream features at each feature used to propagate the trace:
  • 0 - all encountered downstream/upstream features will be used to propagate the trace.
  • 1 - only 1 feature will be used to propagate the trace. If trace feature class has fields HydroID and NextDownID, these will be used for tracing, otherwise from-node and to-node attributes will be used.
  • Feature class to be used for tracing. Any type of feature class can be used to trace through as long as it has appropriate fields identifying downstream elements, typically, [HYDROID, NextDownID] or [From_Node, To_Node]. will be used to propagate the trace.
  • Exclude Start ElementsOptionalInputBooleanExclude_Start_Elements = True: the start elements/lines that start flags are located will be excluded from the results. False: the start elements/line sthat start flags are located will be included in trace results
    Trace on selectsetOptionalInputBooleanTrace on selectset