private static ICurvePolygon FlattenCurvePolygon(ICurvePolygon curvePolygon, FgfGeometryFactory factory) { IRing extRing = FlattenRing(curvePolygon.ExteriorRing, factory); RingCollection intRings = new RingCollection(); for (int i = 0; i < curvePolygon.InteriorRingCount; i++) { intRings.Add(FlattenRing(curvePolygon.get_InteriorRing(i), factory)); } return(factory.CreateCurvePolygon(extRing, intRings)); }
void ExportCurvePolygon(Polygon pol) { // Get the exterior ring IRing xr = GetRing(pol); // Pick up any islands RingCollection irs = new RingCollection(); if (pol.HasAnyIslands) { foreach (Island i in pol.Islands) { IRing ir = GetRing(i); irs.Add(ir); } } IGeometry g = m_Factory.CreateCurvePolygon(xr, irs); ExportGeometry(g); }
private static ICurvePolygon FlattenCurvePolygon(ICurvePolygon curvePolygon, FgfGeometryFactory factory) { IRing extRing = FlattenRing(curvePolygon.ExteriorRing, factory); RingCollection intRings = new RingCollection(); for (int i = 0; i < curvePolygon.InteriorRingCount; i++) { intRings.Add(FlattenRing(curvePolygon.get_InteriorRing(i), factory)); } return factory.CreateCurvePolygon(extRing, intRings); }