public override MultiLinestring Clone() { var result = new RingGroup(ExteriorRing.Clone(), InteriorRings.Select(i => i.Clone())) { Id = Id }; return(result); }
/// <summary> /// Return a copy of this geometry /// </summary> /// <returns>Copy of Geometry</returns> public new Polygon Clone() { var polygon = new Polygon { ExteriorRing = ExteriorRing.Clone() }; foreach (var interiorRing in InteriorRings) { polygon.InteriorRings.Add(interiorRing.Clone()); } return(polygon); }
/// <summary> /// Creates a deep copy of the Polygon. /// </summary> /// <returns>A copy of the Polygon instance.</returns> public override Geometry Clone() { Polygon p = new Polygon(); p.ExteriorRing = ExteriorRing.Clone() as LinearRing; foreach (LinearRing ring in InteriorRings) { p.InteriorRings.Add(ring.Clone() as LinearRing); } return(p); }