创建转向表数据集。
命名空间:
SuperMap.Analyst.NetworkAnalyst程序集: SuperMap.Analyst.NetworkAnalyst (in SuperMap.Analyst.NetworkAnalyst)
版本: dll
语法
C# |
---|
public static DatasetVector CreateTurnTable( DatasetVector networkDataset, QueryParameter queryParameter, Datasource outputDatasource, string outputDatasetName ) |
参数
- networkDataset
- Type: SuperMap.Data..::.DatasetVector
指定的网络数据集。
- queryParameter
- Type: SuperMap.Data..::.QueryParameter
指定的查询参数。
- outputDatasource
- Type: SuperMap.Data..::.Datasource
指定的用于存储结果数据集的数据源。
- outputDatasetName
- Type: System..::.String
指定的结果数据集的名称。
返回值
返回转向表数据集。备注
在交通网络分析中,可以使用转向表存储完成转弯需要的花费。转弯是指从一个弧段经过中间结点抵达另外一个邻接弧段的过程。转弯耗费即完成转弯所需要的花费。
转向表是一个纯属性表数据集,每一条记录代表一个转弯,一般有起始弧段字段(FromEdgeID)、终止弧段字段(ToEdgeID)、结点标识字段(NodeID)和转弯耗费字段(TurnCost)四个字段,这些字段与弧段、结点中的字段相关联,表中的每条记录表示一种通过路口的方式以及所需要的耗费。转弯耗费通常是有方向性的,转弯的负耗费值一般为禁止转弯(不通行)。
例如,在对道路进行网络分析的时候,我们经常会遇到十字路口、三岔口等情况,可以通过转向耗费为转弯方式赋予权值,为如何转向提供一定的参考。如某些道路车多或道路状况差,或转向该路段的红灯等待时间较长,花费就应较高一些,而某些道路不通行禁止转入等,可将花费设置为负值。如下图所示,左面为一个十字路口的示意图,右面的表格为该十字路口所对应的转向表,转向表中记录了402结点所在的十字口处车辆的所有转向方式(共16种)和转弯所需的耗费等信息。
注意,使用该方法为网络数据集创建的转向表,其转弯花费(TurnCost 字段)均为 0。用户可根据应用的实际情况对转向表的权值进行修改。对于禁止通行的转弯需要设置权值为负数。