校准路由数据集。
命名空间:
SuperMap.Analyst.SpatialAnalyst程序集: SuperMap.Analyst.SpatialAnalyst (in SuperMap.Analyst.SpatialAnalyst)
版本: dll
语法
C# |
---|
public static DatasetVector CalibrateRoutes( DatasetVector referenceLineM, string routeIDField, DatasetVector calibratePointDataset, string calibrateRouteID, string measureField, CalibrateOptions options, Datasource outputDatasource, string outputDatasetName ) |
参数
- referenceLineM
- Type: SuperMap.Data..::.DatasetVector
指定的需要被校准的路由数据集。要求数据集类型为路由数据集,输入其他类型的数据集将导致校准路由失败并返回 null。
- routeIDField
- Type: System..::.String
指定的路由数据集中的路由标识字段。该字段对字段类型有要求,请参见 LinearReferencing 类的备注部分。如果设置的类型不被支持,会导致校准失败。
- calibratePointDataset
- Type: SuperMap.Data..::.DatasetVector
指定的用于校准路由的参考点数据集,该数据集中有表示刻度的字段。要求数据集类型为点数据集,输入其他类型的数据集将导致校准路由失败并返回 null。
- calibrateRouteID
- Type: System..::.String
指定的参考点数据集中的路由标识字段。该字段对字段类型有要求,请参见 LinearReferencing 类的备注部分。如果设置的类型不被支持,会导致校准失败。
- measureField
- Type: System..::.String
指定的参考点数据集中用于表示刻度值的字段。该字段对字段类型有要求,请参见 LinearReferencing 类的备注部分。如果设置的类型不被支持,会导致校准失败。
- options
- Type: SuperMap.Analyst.SpatialAnalyst..::.CalibrateOptions
指定的校准选项。
- outputDatasource
- Type: SuperMap.Data..::.Datasource
指定的结果路由数据集所在的数据源。如果为 null,系统会自动将结果数据集保存到被校准的路由数据集所在的数据源中。
- outputDatasetName
- Type: System..::.String
指定的结果路由数据集的名称。
返回值
校准之后的路由数据集,如果失败则返回 null。备注
- 为什么要校准路由?
- 如何校准?
- 首先通过路由标识字段值将参考点与路由对应起来(参考点数据和路由数据各有一个路由标识字段,与路由数据路由 ID 相同的参考点,视为与路由对应的参考点);
- 然后,当对应参考点落在路由上并与某一节点重合时,该节点的 M 值使用该参考点的 M 值;
- 路由上未与对应参考点重叠的节点的 M,使用位于校准容限(请参见 Tolerance 属性的介绍)范围内的参考点的 M 值插值获得。并且,这些位于校准容限内的参考点,在对应路由上的垂足位置生成新的节点,并将对应参考点的 M 值赋予该节点。如下图中的参考点 c1、c2,其到路由的最短距离小于校准容限,因此会在路由上对应位置添加对应节点;
- 位于校准容限范围之外的参考点将不参与校准。下图中的参考点 c3在校准容限范围外,因此它不会参与校准,也不会在路由上生成新的节点。
- 校准路由应用实例
精确的度量值,才能够保证事件被正确定位,因此精确的路由数据对动态分段是至关重要的。如果路由数据的刻度值可能不准确,或者需要更新路由数据的刻度值,我们可以通过使用可靠的参考点数据对路由数据的刻度值进行校准。尤其是在用这些刻度值连接大量的事件数据时,校准路由数据集更是必不可少的一项工作。
校准路由是读取参考点的刻度值信息来调整路由刻度值的过程。
SuperMap 提供了两种校准模式:按距离校准(ByDistance)和按刻度值校准(ByMeasure),关于两种模式如何对路由进行校准请参见 CalibrateMode 枚举类型。
使用该方法校准路由时,除指定路由数据集及其路由标识字段、参考点数据及其路由标识字段和刻度字段外,还需要通过一个校准选项(CalibrateOptions)对象来设置校准路由的其他参数,如校准模式、校准容限及单位等。
现有一份高速公路的路由数据,其刻度值为高速公路的里程信息,但刻度值可能不够准确。因此,派出测量人员沿高速公路每隔200米采集一个采样点,并通过仪器测量和记录相应的里程值。然后使用这批数据作为参考点数据,对已有的高速公路路由数据进行校准来获得最新的、准确的里程信息。