/// <summary>
        /// Gets the position that is a specific distance from the start of this line.
        /// </summary>
        /// <param name="dist">The distance from the start of the line.</param>
        /// <param name="result">The position found</param>
        /// <returns>True if the distance is somewhere ON the line. False if the distance
        /// was less than zero, or more than the line length (in that case, the position
        /// found corresponds to the corresponding terminal point).</returns>
        internal override bool GetPosition(ILength distance, out IPosition result)
        {
            IPosition[] data = m_Data;

            if (data.Length == 2)
            {
                return(LineSegmentGeometry.GetPosition(data[0], data[1], distance.Meters, out result));
            }
            else
            {
                return(GetPosition(data, distance.Meters, out result));
            }
        }
 internal override bool GetPosition(ILength dist, out IPosition pos)
 {
     return(LineSegmentGeometry.GetPosition(this, dist.Meters, out pos));
 }