Example #1
0
        /// <summary>
        /// Returns intersection points between the two polylines.
        /// </summary>
        /// <param name="polyline1"></param>
        /// <param name="polyline2"></param>
        /// <returns></returns>
        public static Point[] Intersect(this Polyline polyline1, Polyline polyline2)
        {
            if (Null(polyline1, polyline2))
                return new Point[] { };

            return !polyline1.Extent().Intersects(polyline2.Extent())
                ? new Point[] { }
                : Intersect(polyline1.paths, polyline2.paths);
        }
Example #2
0
        /// <summary>
        /// Determines if the multipoint is within the specified distance from the polyline.
        /// </summary>
        /// <param name="multipoint"></param>
        /// <param name="polyline"></param>
        /// <param name="distance"></param>
        /// <returns></returns>
        public static bool WithinDistance(this Multipoint multipoint, Polyline polyline, double distance)
        {
            if (Null(multipoint, polyline))
                return false;

            return multipoint.Extent().Buffer(distance).Intersects(polyline.Extent()) && multipoint.Distance(polyline) < distance;
        }
Example #3
0
        /// <summary>
        /// Determines if the polyline is within the specified distance from the other polyline.
        /// </summary>
        /// <param name="polyline1"></param>
        /// <param name="polyline2"></param>
        /// <param name="distance"></param>
        /// <returns></returns>
        public static bool WithinDistance(this Polyline polyline1, Polyline polyline2, double distance)
        {
            if (Null(polyline1, polyline2))
                return false;

            return polyline1.Extent().Buffer(distance).Intersects(polyline2.Extent()) && polyline1.Distance(polyline2) < distance;
        }