将在追踪中使用障碍来定义追踪应停止的位置。
追踪网络中有两种类型的障碍:
- 要素障碍 - 可使用追踪位置窗格在地图上创建要素障碍或指定另一个要素类作为障碍。
- 动态障碍 - 满足由条件或函数障碍定义的条件的网络要素。
通过指定在配置追踪时用作障碍的网络要素来创建要素障碍。 可通过动态障碍使用网络要素相关信息来创建障碍。
要素障碍
可在追踪位置窗格的障碍选项卡中创建障碍,也可以通过在追踪工具的障碍参数中指定一个用户定义要素类的方式创建障碍。
在追踪事件过程中,要素(或物理)障碍为可选项。 要将其包括在内,可使用工具将网络中的区域设置为追踪的障碍。
仅网络要素可用于通过追踪位置窗格放置障碍。 从选择集中选择网络要素或将其添加到该窗格时,以下表述为真:
- 将创建一个重叠点以表示追踪的障碍。
- 使用线时,障碍可以沿边放置在任何位置。
在追踪位置窗格中创建障碍时,将在工程的默认地理数据库中创建名为 TN_Temp_Barriers 的要素类。 在此类中会追加连续的要素障碍。 要从地图上移除所有障碍,请使用全部清除按钮 。
当使用用户定义的要素类或表为追踪工具提供障碍时,应考虑以下因素:
- TN_Temp_Barriers 要素类未与此方法搭配使用。
- 不支持输入要素类上的选择集。
- 对于面要素,将沿着网络要素与面几何相交的边界放置障碍。
- 使用企业级地理数据库时,需要满足以下要求:
- 用户定义要素类的方案必须包含 guid 类型的 FEATUREGLOBALID 字段。
- FEATUREGLOBALID 字段必须包含来自相应网络要素的全局 ID,才能用作障碍。
- 将不会使用没有相应值的要素来放置障碍。 此选项可用于提供要素在要素类中作为障碍时超出的粒度。
- 用户定义要素类的方案必须包含一个类型为双精度型的 PERCENTALONG 字段,以便沿边要素放置障碍。
- PERCENTALONG 字段必须包含一个 0.0 与 1.0 之间的值,以指示障碍沿线的位置。
- 如果 PERCENTALONG 字段不存在或不包含合适的值,则追踪假定障碍放置在交汇点要素上,并将忽略沿边放置。
- 用户定义要素类的方案必须包含 guid 类型的 FEATUREGLOBALID 字段。
- 使用单用户地理数据库时,需要满足以下要求:
- FEATUREGLOBALID 字段不是必填字段。 缺乏时,输入要素类的几何将用于与网络要素几何相交并放置障碍。
- FEATUREGLOBALID 字段存在时,必须包含来自相应网络要素的全局 ID,才能用作障碍。
- PERCENTALONG 字段不是必填字段。 缺少此字段时,输入要素类的几何将用于与网络要素几何相交并放置障碍。
- PERCENTALONG 字段存在时,必须包含一个 0.0 与 1.0 之间的值,以指示障碍沿线的位置。 如果字段存在且不包含合适的值,则追踪假定障碍放置在交汇点要素上,并将忽略沿边放置。
- FEATUREGLOBALID 字段不是必填字段。 缺乏时,输入要素类的几何将用于与网络要素几何相交并放置障碍。
注:
默认情况下,追踪结果将作为选择返回,并包含整个边要素。 当障碍位于边的中跨时,PERCENTALONG 字段用于表示其沿边的位置。 要返回输出多部分几何要素类中的部分要素结果,可以指定结果类型聚合几何选项。
动态障碍
除了要素障碍外,还可以在网络属性或函数条件上设置动态(或可配置)障碍。 在追踪事件过程中,动态障碍为可选项
追踪期间将使用两种类型的动态障碍:条件障碍和函数障碍。 追踪期间会同时考虑这两种类型。
注:
针对沿边放置的障碍使用包括障碍要素配置选项时,追踪结果将包括整个要素。 要返回部分要素结果,可以使用结果类型聚合几何选项。 当障碍放置在边的中跨上时,追踪结果将在障碍处停止,并返回边要素的部分要素几何。
条件障碍
条件障碍是基于网络属性的表达式,例如,将在水文网络中流量不确定的所有水体处停止。 当要素满足表达式中设置的条件时,追踪操作将无法继续下一个要素。
使用组合使用参数(AND 或 OR),可以执行不止一个条件障碍。
函数障碍
函数障碍可根据是否满足函数条件来定义追踪范围。 函数障碍可用于执行以下操作:限制追踪距离起点的行程或设置停止追踪的最大值。 例如,所经过的每条线的长度和为所经过的总距离。 添加函数可以用来设置最大值,并且当行驶的总长度达到指定的值时,追踪将停止。
网络通常具有分支为多个岔路的路径。 有时,您可能会希望将所有分叉路径(全局)和其他时间视为彼此分离的路径(局部)。 以沿步道网络中路径的距离为例,如果将起点放置在具有三条路径的岔路口上,并且使用全局值将追踪设置为沿步道追踪 3 公里,则追踪将沿三条分叉路径中的每一条向下追踪 1 公里。 当您启用使用局部值选项时,追踪将沿着三条分叉路径分别行驶 3 英里。
一次可使用多个障碍类型。 多个障碍组合使用可用于控制一组多样的、精确的障碍类型。 假设您想运行追踪并使其在任何已禁用的线段处停止,但同时您不希望追踪的行程超出距起始点 500 米以上的距离。 要做到这一点,您可以使用条件障碍来控制表示用于停止追踪的已禁用线的网络属性值,并且可以使用函数障碍来计算行进线的长度并将限值设置为 500 米。
注:
在选择了使用局部值选项的情况下,如果使用函数障碍来执行追踪,则仅允许一个起点。
有关设置障碍的详细信息,请参阅配置追踪。