【ord c#】DistanceOnExtension

老师好,我想问下LinearPoint类中的DistanceAlong表示桩号,DistanceOnExtension表示什么意思呢?

Parents
  • 我在ORD SDK的examples下能找到如下使用:

    private static string GetStationFromPoint(Alignment al, LinearPoint point)
                {
                // Get numerical station
                string stationStr = "";
                double stationNum = point.DistanceOnExtension + point.DistanceAlong;
    
                // Format it
                StationingFormatter sformatter = new StationingFormatter(al);
                StationFormatSettings settings = StationFormatSettings.GetStationFormatSettingsForModel(m_activeModel);
                sformatter.FormatStation(ref stationStr, stationNum, settings);
    
                return stationStr;
                }



  • 符工,double stationNum = point.DistanceOnExtension + point.DistanceAlong;这段函数不是很清楚,因为一般情况下double stationNum = point.DistanceAlong;都表示桩号了,但是上面一段函数什么意思不清楚?

  • Li Liu您好!如下是我们ORD工程师的专业回答。

    LinearPoint类中的DistanceAlong表示桩号,DistanceOnExtension表示什么意思呢?

    DistanceAlong 表示在曲线上的距离,DistanceOnExtension 表示曲线延长线上的距离,负数为在起点方向延长,正为在终点方向延长。

     例如,一条曲线的距离参数区间为[0,100]

     1、如果点在曲线上,比如在距离 10 处,则,DistanceAlong = 10,DistanceOnExtension = 0,(在曲线上DistanceOnExtension 恒等于0);

     2、如果点在曲线起点延长线上,比如在起点方向延长10 处,则,DistanceAlong = 0,DistanceOnExtension = -10 ,(在曲线起点延长线上DistanceAlong 恒等于0);

     3、如果点在曲线终点延长线上,比如在终点方向延长10 处,则,DistanceAlong =100,DistanceOnExtension = -10,(在曲线终点延长线上DistanceAlong 恒等于100);

     基于以上,所以曲线上的绝对距离为 DistanceAlong + DistanceOnExtension ;

    double stationNum = point.DistanceOnExtension + point.DistanceAlong;这段函数不是很清楚,因为一般情况下double stationNum = point.DistanceAlong;都表示桩号了,但是上面一段函数什么意思不清楚?

    1、DistanceAlong (距离也叫绝对桩号) 和 Station(相对桩号)是有差异的。

    2、DistanceAlong 一般对应为曲线的几何距离,这个是一个几何概念。

    3、Station 是一个工程概念,表示为路线的起点桩号+路线距离。

    4、DistanceAlong一定是从0开始的,但是Station不一定从0开始。

    5、如果没有修改过路线的起点桩号 或 路线上没有断链,那么DistanceAlong和Station是一样的,也就是基于此,这两个概念很容易混淆。

    6、如果路线上存在桩号系统,那么需要通过桩号系统来对二者进行转化。详见 Bentley.CifNET.LinearGeometry.Stationing 或 Bentley.CifNET.GeometryModel.SDK.Stationing.



    Answer Verified By: Duo Duo 

Reply
  • Li Liu您好!如下是我们ORD工程师的专业回答。

    LinearPoint类中的DistanceAlong表示桩号,DistanceOnExtension表示什么意思呢?

    DistanceAlong 表示在曲线上的距离,DistanceOnExtension 表示曲线延长线上的距离,负数为在起点方向延长,正为在终点方向延长。

     例如,一条曲线的距离参数区间为[0,100]

     1、如果点在曲线上,比如在距离 10 处,则,DistanceAlong = 10,DistanceOnExtension = 0,(在曲线上DistanceOnExtension 恒等于0);

     2、如果点在曲线起点延长线上,比如在起点方向延长10 处,则,DistanceAlong = 0,DistanceOnExtension = -10 ,(在曲线起点延长线上DistanceAlong 恒等于0);

     3、如果点在曲线终点延长线上,比如在终点方向延长10 处,则,DistanceAlong =100,DistanceOnExtension = -10,(在曲线终点延长线上DistanceAlong 恒等于100);

     基于以上,所以曲线上的绝对距离为 DistanceAlong + DistanceOnExtension ;

    double stationNum = point.DistanceOnExtension + point.DistanceAlong;这段函数不是很清楚,因为一般情况下double stationNum = point.DistanceAlong;都表示桩号了,但是上面一段函数什么意思不清楚?

    1、DistanceAlong (距离也叫绝对桩号) 和 Station(相对桩号)是有差异的。

    2、DistanceAlong 一般对应为曲线的几何距离,这个是一个几何概念。

    3、Station 是一个工程概念,表示为路线的起点桩号+路线距离。

    4、DistanceAlong一定是从0开始的,但是Station不一定从0开始。

    5、如果没有修改过路线的起点桩号 或 路线上没有断链,那么DistanceAlong和Station是一样的,也就是基于此,这两个概念很容易混淆。

    6、如果路线上存在桩号系统,那么需要通过桩号系统来对二者进行转化。详见 Bentley.CifNET.LinearGeometry.Stationing 或 Bentley.CifNET.GeometryModel.SDK.Stationing.



    Answer Verified By: Duo Duo 

Children
No Data