/// <summary>
 /// Takes an array of simple polygons and combines them into one multi-part shape.
 /// </summary>
 /// <param name="parts">The array of polygons.</param>
 /// <param name="resultShp">The resulting multi-part shape.</param>
 public static void CombineParts(ref IFeature[] parts, ref IFeature resultShp)
 {
     int numParts = parts.Length;
     Polygon po = new Polygon(parts[0].Coordinates);
     Polygon poly;
     for (int i = 0; i <= numParts - 1; i++)
     {
         poly = new Polygon(parts[i].Coordinates);
         po = poly.Union(po) as Polygon;
     }
     resultShp = new Feature(po);
 }