public void GeometryMultiPolygonRoundtripAtomTest() { var values = new GeometryMultiPolygon[] { GeometryFactory.MultiPolygon().Polygon().Ring(10.2, 11.2).LineTo(11.9, 11.6).LineTo(11.45, 87.75).Ring(16.2, 17.2).LineTo(18.9, 19.6).LineTo(11.45, 87.75).Build() }; this.VerifyPrimitiveValuesRoundtrip(values, "GeometryMultiPolygon"); }
public void BuildMultiPolygon() { GeometryMultiPolygon mp = GeometryFactory.MultiPolygon(NonDefaultGeometricCoords) .Polygon().Ring(10, 20).LineTo(20, 30).LineTo(30, 40) .Polygon().Ring(20, 30).LineTo(30, 40).LineTo(40, 50); Assert.AreEqual(NonDefaultGeometricCoords, mp.CoordinateSystem); mp.VerifyAsMultiPolygon(new PositionData[][] { new PositionData[] { new PositionData(10, 20), new PositionData(20, 30), new PositionData(30, 40), new PositionData(10, 20), } }, new PositionData[][] { new PositionData[] { new PositionData(20, 30), new PositionData(30, 40), new PositionData(40, 50), new PositionData(20, 30), } }); mp = GeometryFactory.MultiPolygon() .Polygon().Ring(10, 20).LineTo(20, 30).LineTo(30, 40); Assert.AreEqual(CoordinateSystem.DefaultGeometry, mp.CoordinateSystem); mp.VerifyAsMultiPolygon(new PositionData[][] { new PositionData[] { new PositionData(10, 20), new PositionData(20, 30), new PositionData(30, 40), new PositionData(10, 20), } }); mp = GeometryFactory.MultiPolygon(); mp.VerifyAsMultiPolygon(null); mp = GeometryFactory.MultiPolygon().Polygon().Polygon(); mp.VerifyAsMultiPolygon(null, null); }
static ODataSpatialTypeUtil() { // Geometry type values. GeometryValue = GeometryFactory.Point(32.0, -10.0).Build(); GeometryPointValue = GeometryFactory.Point(33.1, -11.0).Build(); GeometryLineStringValue = GeometryFactory.LineString(33.1, -11.5).LineTo(35.97, -11).Build(); GeometryPolygonValue = GeometryFactory.Polygon().Ring(33.1, -13.6).LineTo(35.97, -11.15).LineTo(11.45, 87.75).Ring(35.97, -11).LineTo(36.97, -11.15).LineTo(45.23, 23.18).Build(); GeometryCollectionValue = GeometryFactory.Collection().Point(-19.99, -12.0).Build(); GeometryMultiPointValue = GeometryFactory.MultiPoint().Point(10.2, 11.2).Point(11.9, 11.6).Build(); GeometryMultiLineStringValue = GeometryFactory.MultiLineString().LineString(10.2, 11.2).LineTo(11.9, 11.6).LineString(16.2, 17.2).LineTo(18.9, 19.6).Build(); GeometryMultiPolygonValue = GeometryFactory.MultiPolygon().Polygon().Ring(10.2, 11.2).LineTo(11.9, 11.6).LineTo(11.45, 87.75).Ring(16.2, 17.2).LineTo(18.9, 19.6).LineTo(11.45, 87.75).Build(); // Geography type values. GeographyValue = GeographyFactory.Point(32.0, -100.0).Build(); GeographyPointValue = GeographyFactory.Point(33.1, -110.0).Build(); GeographyLineStringValue = GeographyFactory.LineString(33.1, -110.0).LineTo(35.97, -110).Build(); GeographyPolygonValue = GeographyFactory.Polygon().Ring(33.1, -110.0).LineTo(35.97, -110.15).LineTo(11.45, 87.75).Ring(35.97, -110).LineTo(36.97, -110.15).LineTo(45.23, 23.18).Build(); GeographyCollectionValue = GeographyFactory.Collection().Point(-19.99, -12.0).Build(); GeographyMultiPointValue = GeographyFactory.MultiPoint().Point(10.2, 11.2).Point(11.9, 11.6).Build(); GeographyMultiLineStringValue = GeographyFactory.MultiLineString().LineString(10.2, 11.2).LineTo(11.9, 11.6).LineString(16.2, 17.2).LineTo(18.9, 19.6).Build(); GeographyMultiPolygonValue = GeographyFactory.MultiPolygon().Polygon().Ring(10.2, 11.2).LineTo(11.9, 11.6).LineTo(11.45, 87.75).Ring(16.2, 17.2).LineTo(18.9, 19.6).LineTo(11.45, 87.75).Build(); }