该枚举定义了对路由对象 M 值进行校正的方式类型常量。

命名空间:  SuperMap.Data
程序集:  SuperMap.Data (in SuperMap.Data)
版本: dll

语法

C#
public enum CalibrateMode

成员

成员名称描述
ByDistance
按距离校准。

按距离校准是基于两点间的沿路由的距离来计算 M 值的。这里的距离是指实际距离(欧式距离)。使用按距离校准的方式可以得到单调的校准结果,即校准后路由的 M 值是递增或递减的。下图(上)的路由为校准前的路由和参考点,该方式校准的过程为:

  1. 校准前路由各节点的坐标和参考点坐标如下表所示:

  2. 对于节点 a1,首先计算 c1 与 c2 之间的距离 d1,然后计算出校准率 R1 = d1/(200-100)。注意这里提到的距离都是指沿线距离。
  3. 然后计算 a1 和 c1 间的距离 d2,,那么有 d2/(100-Ma1)= R1,则 a1 校准后的 M 值为 100 - d2/R1;
  4. 同理,使用 c1 和 c2 来校准 a2。先计算 c1 与 a2 间的距离 d3,然后计算校准率 R2 = d1/(200-100),那么有 d3/(Ma2-100)=R1,则 a2 校准后的 M 值为:100 + d3/R1;
  5. 依次类推,使用 c2 和 c3 来校准 a3,使用 c3 和 c4 来校准 a4 和 a5。注意,校准率总是采样离被校准点最近的两个参考点来计算;
  6. 完成校准后路由各节点的 M 值上图(下)所示。
ByMeasure
按刻度值校准。

按刻度值校准利用参考点对应路由上位置的刻度值来进行校准。使用该方式对路由进行校准的特点是,能够保持原始路由数据刻度值的变化规律(如不均匀的增加或减少)。当被校准的路由的长度与刻度值的比值不同时,这种方法非常适用于对路由的刻度值进行微调。请结合图和下面的文字来了解该模式如何对路由进行校准。

  1. 校准前路由节点和参考点的坐标,及参考点在路由上对应的点的原 M 值如下表所示:

  2. 使用参考点 c1 和 c2 来校准节点 a1。首先计算M值校准率 R1=(37.5-10)/(200-100),其中(37.5-10)称为 c1 和 c2 所在点在原来线上的线标差;
  3. a1 和 c1 之间准确的线标差为(10-0),那么有(10-0)/(100-Ma1)= R1,则 a1 点校准后的 M 值为 100 - (10-0)/R1;
  4. 同理,使用 c1和 c2 来校准 a2。首先计算校准率 R2 =(37.5-10)/(200-100),a2 与 c1 之间准确的线标差为(20-10),那么有(20-10)/( Ma2-100) = R2,则 a2 点校准后的 M 值为 100 +(20-10)/R2;
  5. 以此类推,依次校准其余节点:使用 c1 和 c2 校准 a2,使用 c2 和 c3 校准 a3,使用 c3 和 c4 校准 a4 和 a5。注意,校准率总是取离被校准最近的两个参考点来计算;
  6. 完成校准后路由各节点的 M 值如上图(下)所示。

备注

校准路由的两种校准都要求用于校准路由的参考点至少为2个,并且校准时,都采用离待校准节点最近的两个参考点来校准。

版本信息

SuperMap iObjects .NET


请参见