///<summary>
        /// Computes the intersection between a <see cref="PreparedLineString"/> and a <see cref="IGeometry"/>.
        ///</summary>
        /// <param name="prep">The prepared linestring</param>
        /// <param name="geom">A geometry</param>
        /// <returns>The intersection geometry</returns>
        public static IGeometry Intersection(PreparedPolygon prep, IGeometry geom)
        {
            PreparedPolygonLineIntersection op = new PreparedPolygonLineIntersection(prep);

            return(op.Intersection(geom));
        }
 ///<summary>
 /// Computes the intersection between a <see cref="PreparedLineString"/> and a <see cref="IGeometry"/>.
 ///</summary>
 /// <param name="prep">The prepared linestring</param>
 /// <param name="geom">A geometry</param>
 /// <returns>The intersection geometry</returns>
 public static IGeometry Intersection(PreparedPolygon prep, IGeometry geom)
 {
     PreparedPolygonLineIntersection op = new PreparedPolygonLineIntersection(prep);
     return op.Intersection(geom);
 }