public void TestMultiPolygonConstructors() { var multiPolygon = new MultiPolygon( new[] { new PolygonCoordinates( new[] { new LinearRing( new[] { new Position(20, 20), new Position(20, 21), new Position(21, 21), new Position(21, 20), new Position(22, 20) }) }) }, new GeometryParams { AdditionalProperties = new Dictionary <string, object> { { "a", "b" } }, BoundingBox = new BoundingBox(new Position(0, 0), new Position(40, 40)), Crs = Crs.Named("SomeCrs") }); Assert.AreEqual(new Position(20, 20), multiPolygon.Polygons[0].Rings[0].Positions[0]); Assert.AreEqual(new Position(0, 0), multiPolygon.BoundingBox.Min); Assert.AreEqual(new Position(40, 40), multiPolygon.BoundingBox.Max); Assert.AreEqual("b", multiPolygon.AdditionalProperties["a"]); Assert.AreEqual("SomeCrs", ((NamedCrs)multiPolygon.Crs).Name); }
private Polygon GetPolygon() { Polygon polygon = new Polygon( new[] { new LinearRing( new[] { new Position(20, 20), new Position(20, 21), new Position(21, 21), new Position(21, 20), new Position(22, 20) }) }, new GeometryParams { AdditionalProperties = new Dictionary <string, object> { { "b", "c" } }, BoundingBox = new BoundingBox(new Position(0, 0), new Position(40, 40)), Crs = Crs.Named("SomeCrs") }); return(polygon); }
public void NamedCrsEquals() { NamedCrs namedCrs1 = Crs.Named("AName"); NamedCrs namedCrs2 = Crs.Named("AName"); NamedCrs namedCrs3 = Crs.Named("AnotherName"); Assert.AreEqual(namedCrs1, namedCrs2); Assert.AreEqual(namedCrs1.GetHashCode(), namedCrs2.GetHashCode()); Assert.AreNotEqual(namedCrs1, namedCrs3); Assert.AreNotEqual(namedCrs1.GetHashCode(), namedCrs3.GetHashCode()); }
private Point GetPoint() { Point point = new Point( new Position(20, 30), new GeometryParams { AdditionalProperties = new Dictionary <string, object> { { "a", "b" } }, BoundingBox = new BoundingBox(new Position(0, 0), new Position(40, 40)), Crs = Crs.Named("SomeCrs") }); return(point); }
private LineString GetLineString() { LineString lineString = new LineString( new[] { new Position(20, 30), new Position(30, 40) }, new GeometryParams { AdditionalProperties = new Dictionary <string, object> { { "a", "b" } }, BoundingBox = new BoundingBox(new Position(0, 0), new Position(40, 40)), Crs = Crs.Named("SomeCrs") }); return(lineString); }
public void TestMultiPointConstructors() { var multiPoint = new MultiPoint( new[] { new Position(20, 30), new Position(30, 40) }, new GeometryParams { AdditionalProperties = new Dictionary <string, object> { { "a", "b" } }, BoundingBox = new BoundingBox(new Position(0, 0), new Position(40, 40)), Crs = Crs.Named("SomeCrs") }); Assert.AreEqual(new Position(20, 30), multiPoint.Points[0]); Assert.AreEqual(new Position(0, 0), multiPoint.BoundingBox.Min); Assert.AreEqual(new Position(40, 40), multiPoint.BoundingBox.Max); Assert.AreEqual("b", multiPoint.AdditionalProperties["a"]); Assert.AreEqual("SomeCrs", ((NamedCrs)multiPoint.Crs).Name); }
public void TestPointConstructors() { var point = new Point( new Position(20, 30), new GeometryParams { AdditionalProperties = new Dictionary <string, object> { { "a", "b" } }, BoundingBox = new BoundingBox(new Position(0, 0), new Position(40, 40)), Crs = Crs.Named("SomeCrs") }); Assert.AreEqual(20, point.Position.Longitude); Assert.AreEqual(30, point.Position.Latitude); Assert.AreEqual(new Position(0, 0), point.BoundingBox.Min); Assert.AreEqual(new Position(40, 40), point.BoundingBox.Max); Assert.AreEqual("b", point.AdditionalProperties["a"]); Assert.AreEqual("SomeCrs", ((NamedCrs)point.Crs).Name); }
public void TestLineStringConstructors() { var lineString = new LineString( new[] { new Position(20, 30), new Position(30, 40) }, new GeometryParams { AdditionalProperties = new Dictionary <string, object> { { "a", "b" } }, BoundingBox = new BoundingBox(new Position(0, 0), new Position(40, 40)), Crs = Crs.Named("SomeCrs") }); Assert.AreEqual(new Position(20, 30), lineString.Positions[0]); Assert.AreEqual(new Position(30, 40), lineString.Positions[1]); Assert.AreEqual(new Position(0, 0), lineString.BoundingBox.Min); Assert.AreEqual(new Position(40, 40), lineString.BoundingBox.Max); Assert.AreEqual("b", lineString.AdditionalProperties["a"]); Assert.AreEqual("SomeCrs", ((NamedCrs)lineString.Crs).Name); }
public void TestGeometryCollectionConstructors() { var geometryCollection = new GeometryCollection( new[] { new Point(20, 30), new Point(30, 40) }, new GeometryParams { AdditionalProperties = new Dictionary <string, object> { { "a", "b" } }, BoundingBox = new BoundingBox(new Position(0, 0), new Position(40, 40)), Crs = Crs.Named("SomeCrs") }); Assert.AreEqual(new Point(20, 30), geometryCollection.Geometries[0]); Assert.AreEqual(new Point(30, 40), geometryCollection.Geometries[1]); Assert.AreEqual(new Position(0, 0), geometryCollection.BoundingBox.Min); Assert.AreEqual(new Position(40, 40), geometryCollection.BoundingBox.Max); Assert.AreEqual("b", geometryCollection.AdditionalProperties["a"]); Assert.AreEqual("SomeCrs", ((NamedCrs)geometryCollection.Crs).Name); }
public void NamedCrsConstructorException() { Crs.Named(null); }
public void NamedCrsConstructor() { NamedCrs namedCrs = Crs.Named("NamedCrs"); Assert.AreEqual("NamedCrs", namedCrs.Name); }
public void TestMultiLineStringEqualsHashCode() { var multiLineString1 = new MultiLineString( new[] { new LineStringCoordinates(new[] { new Position(20, 30), new Position(30, 40) }), new LineStringCoordinates(new[] { new Position(40, 50), new Position(60, 60) }) }, new GeometryParams { AdditionalProperties = new Dictionary <string, object> { { "a", "b" } }, BoundingBox = new BoundingBox(new Position(0, 0), new Position(40, 40)), Crs = Crs.Named("SomeCrs") }); var multiLineString2 = new MultiLineString( new[] { new LineStringCoordinates(new[] { new Position(20, 30), new Position(30, 40) }), new LineStringCoordinates(new[] { new Position(40, 50), new Position(60, 60) }) }, new GeometryParams { AdditionalProperties = new Dictionary <string, object> { { "a", "b" } }, BoundingBox = new BoundingBox(new Position(0, 0), new Position(40, 40)), Crs = Crs.Named("SomeCrs") }); var multiLineString3 = new MultiLineString( new[] { new LineStringCoordinates(new[] { new Position(20, 30), new Position(30, 41) }), new LineStringCoordinates(new[] { new Position(40, 50), new Position(60, 60) }) }, new GeometryParams { AdditionalProperties = new Dictionary <string, object> { { "a", "b" } }, BoundingBox = new BoundingBox(new Position(0, 0), new Position(40, 40)), Crs = Crs.Named("SomeCrs") }); var multiLineString4 = new MultiLineString( new[] { new LineStringCoordinates(new[] { new Position(20, 30), new Position(30, 40) }), new LineStringCoordinates(new[] { new Position(40, 50), new Position(60, 60) }) }, new GeometryParams { AdditionalProperties = new Dictionary <string, object> { { "b", "c" } }, BoundingBox = new BoundingBox(new Position(0, 0), new Position(40, 40)), Crs = Crs.Named("SomeCrs") }); var multiLineString5 = new MultiLineString( new[] { new LineStringCoordinates(new[] { new Position(20, 30), new Position(30, 40) }), new LineStringCoordinates(new[] { new Position(40, 50), new Position(60, 60) }) }, new GeometryParams { AdditionalProperties = new Dictionary <string, object> { { "a", "b" } }, BoundingBox = new BoundingBox(new Position(0, 0), new Position(40, 41)), Crs = Crs.Named("SomeCrs") }); var multiLineString6 = new MultiLineString( new[] { new LineStringCoordinates(new[] { new Position(20, 30), new Position(30, 40) }), new LineStringCoordinates(new[] { new Position(40, 50), new Position(60, 60) }) }, new GeometryParams { AdditionalProperties = new Dictionary <string, object> { { "a", "b" } }, BoundingBox = new BoundingBox(new Position(0, 0), new Position(40, 40)), Crs = Crs.Named("SomeCrs1") }); Assert.AreEqual(multiLineString1, multiLineString2); Assert.AreEqual(multiLineString1.GetHashCode(), multiLineString2.GetHashCode()); Assert.AreNotEqual(multiLineString1, multiLineString3); Assert.AreNotEqual(multiLineString1.GetHashCode(), multiLineString3.GetHashCode()); Assert.AreNotEqual(multiLineString1, multiLineString4); Assert.AreNotEqual(multiLineString1.GetHashCode(), multiLineString4.GetHashCode()); Assert.AreNotEqual(multiLineString1, multiLineString5); Assert.AreNotEqual(multiLineString1.GetHashCode(), multiLineString5.GetHashCode()); Assert.AreNotEqual(multiLineString1, multiLineString6); Assert.AreNotEqual(multiLineString1.GetHashCode(), multiLineString6.GetHashCode()); }
public void TestMultiPointEqualsHashCode() { var multiPoint1 = new MultiPoint( new[] { new Position(20, 30), new Position(30, 40) }, new GeometryParams { AdditionalProperties = new Dictionary <string, object> { { "a", "b" } }, BoundingBox = new BoundingBox(new Position(0, 0), new Position(40, 40)), Crs = Crs.Named("SomeCrs") }); var multiPoint2 = new MultiPoint( new[] { new Position(20, 30), new Position(30, 40) }, new GeometryParams { AdditionalProperties = new Dictionary <string, object> { { "a", "b" } }, BoundingBox = new BoundingBox(new Position(0, 0), new Position(40, 40)), Crs = Crs.Named("SomeCrs") }); var multiPoint3 = new MultiPoint( new[] { new Position(20, 30), new Position(31, 40) }, new GeometryParams { AdditionalProperties = new Dictionary <string, object> { { "a", "b" } }, BoundingBox = new BoundingBox(new Position(0, 0), new Position(40, 40)), Crs = Crs.Named("SomeCrs") }); var multiPoint4 = new MultiPoint( new[] { new Position(20, 30), new Position(30, 40) }, new GeometryParams { AdditionalProperties = new Dictionary <string, object> { { "b", "c" } }, BoundingBox = new BoundingBox(new Position(0, 0), new Position(40, 40)), Crs = Crs.Named("SomeCrs") }); var multiPoint5 = new MultiPoint( new[] { new Position(20, 30), new Position(30, 40) }, new GeometryParams { AdditionalProperties = new Dictionary <string, object> { { "a", "b" } }, BoundingBox = new BoundingBox(new Position(0, 0), new Position(40, 41)), Crs = Crs.Named("SomeCrs") }); var multiPoint6 = new MultiPoint( new[] { new Position(20, 30), new Position(30, 40) }, new GeometryParams { AdditionalProperties = new Dictionary <string, object> { { "a", "b" } }, BoundingBox = new BoundingBox(new Position(0, 0), new Position(40, 40)), Crs = Crs.Named("SomeCrs1") }); Assert.AreEqual(multiPoint1, multiPoint2); Assert.AreEqual(multiPoint1.GetHashCode(), multiPoint2.GetHashCode()); Assert.AreNotEqual(multiPoint1, multiPoint3); Assert.AreNotEqual(multiPoint1.GetHashCode(), multiPoint3.GetHashCode()); Assert.AreNotEqual(multiPoint1, multiPoint4); Assert.AreNotEqual(multiPoint1.GetHashCode(), multiPoint4.GetHashCode()); Assert.AreNotEqual(multiPoint1, multiPoint5); Assert.AreNotEqual(multiPoint1.GetHashCode(), multiPoint5.GetHashCode()); Assert.AreNotEqual(multiPoint1, multiPoint6); Assert.AreNotEqual(multiPoint1.GetHashCode(), multiPoint6.GetHashCode()); }
public void TestMultiPolygonEqualsHashCode() { var multiPolygon1 = new MultiPolygon( new[] { new PolygonCoordinates( new[] { new LinearRing( new[] { new Position(20, 20), new Position(20, 21), new Position(21, 21), new Position(21, 20), new Position(22, 20) }) }) }, new GeometryParams { AdditionalProperties = new Dictionary <string, object> { { "a", "b" } }, BoundingBox = new BoundingBox(new Position(0, 0), new Position(40, 40)), Crs = Crs.Named("SomeCrs") }); var multiPolygon2 = new MultiPolygon( new[] { new PolygonCoordinates( new[] { new LinearRing( new[] { new Position(20, 20), new Position(20, 21), new Position(21, 21), new Position(21, 20), new Position(22, 20) }) }) }, new GeometryParams { AdditionalProperties = new Dictionary <string, object> { { "a", "b" } }, BoundingBox = new BoundingBox(new Position(0, 0), new Position(40, 40)), Crs = Crs.Named("SomeCrs") }); var polygon3 = new MultiPolygon( new[] { new PolygonCoordinates( new[] { new LinearRing( new[] { new Position(20, 21), new Position(20, 21), new Position(21, 21), new Position(21, 20), new Position(22, 20) }) }) }, new GeometryParams { AdditionalProperties = new Dictionary <string, object> { { "a", "b" } }, BoundingBox = new BoundingBox(new Position(0, 0), new Position(40, 40)), Crs = Crs.Named("SomeCrs") }); var polygon4 = new MultiPolygon( new[] { new PolygonCoordinates( new[] { new LinearRing( new[] { new Position(20, 20), new Position(20, 21), new Position(21, 21), new Position(21, 20), new Position(22, 20) }) }) }, new GeometryParams { AdditionalProperties = new Dictionary <string, object> { { "b", "c" } }, BoundingBox = new BoundingBox(new Position(0, 0), new Position(40, 40)), Crs = Crs.Named("SomeCrs") }); var polygon5 = new MultiPolygon( new[] { new PolygonCoordinates( new[] { new LinearRing( new[] { new Position(20, 20), new Position(20, 21), new Position(21, 21), new Position(21, 20), new Position(22, 20) }) }) }, new GeometryParams { AdditionalProperties = new Dictionary <string, object> { { "a", "b" } }, BoundingBox = new BoundingBox(new Position(0, 0), new Position(40, 41)), Crs = Crs.Named("SomeCrs") }); var polygon6 = new MultiPolygon( new[] { new PolygonCoordinates( new[] { new LinearRing( new[] { new Position(20, 20), new Position(20, 21), new Position(21, 21), new Position(21, 20), new Position(22, 20) }) }) }, new GeometryParams { AdditionalProperties = new Dictionary <string, object> { { "a", "b" } }, BoundingBox = new BoundingBox(new Position(0, 0), new Position(40, 40)), Crs = Crs.Named("SomeCrs1") }); Assert.AreEqual(multiPolygon1, multiPolygon2); Assert.AreEqual(multiPolygon1.GetHashCode(), multiPolygon2.GetHashCode()); Assert.AreNotEqual(multiPolygon1, polygon3); Assert.AreNotEqual(multiPolygon1.GetHashCode(), polygon3.GetHashCode()); Assert.AreNotEqual(multiPolygon1, polygon4); Assert.AreNotEqual(multiPolygon1.GetHashCode(), polygon4.GetHashCode()); Assert.AreNotEqual(multiPolygon1, polygon5); Assert.AreNotEqual(multiPolygon1.GetHashCode(), polygon5.GetHashCode()); Assert.AreNotEqual(multiPolygon1, polygon6); Assert.AreNotEqual(multiPolygon1.GetHashCode(), polygon6.GetHashCode()); }
public void TestGeometryCollectionEqualsHashCode() { var geometryCollection1 = new GeometryCollection( new[] { new Point(20, 30), new Point(30, 40) }, new GeometryParams { AdditionalProperties = new Dictionary <string, object> { { "a", "b" } }, BoundingBox = new BoundingBox(new Position(0, 0), new Position(40, 40)), Crs = Crs.Named("SomeCrs") }); var geometryCollection2 = new GeometryCollection( new[] { new Point(20, 30), new Point(30, 40) }, new GeometryParams { AdditionalProperties = new Dictionary <string, object> { { "a", "b" } }, BoundingBox = new BoundingBox(new Position(0, 0), new Position(40, 40)), Crs = Crs.Named("SomeCrs") }); var geometryCollection3 = new GeometryCollection( new[] { new Point(20, 30), new Point(30, 41) }, new GeometryParams { AdditionalProperties = new Dictionary <string, object> { { "a", "b" } }, BoundingBox = new BoundingBox(new Position(0, 0), new Position(40, 40)), Crs = Crs.Named("SomeCrs") }); var geometryCollection4 = new GeometryCollection( new[] { new Point(20, 30), new Point(30, 40) }, new GeometryParams { AdditionalProperties = new Dictionary <string, object> { { "b", "c" } }, BoundingBox = new BoundingBox(new Position(0, 0), new Position(40, 40)), Crs = Crs.Named("SomeCrs") }); var geometryCollection5 = new GeometryCollection( new[] { new Point(20, 30), new Point(30, 40) }, new GeometryParams { AdditionalProperties = new Dictionary <string, object> { { "a", "b" } }, BoundingBox = new BoundingBox(new Position(0, 0), new Position(40, 41)), Crs = Crs.Named("SomeCrs") }); var geometryCollection6 = new GeometryCollection( new[] { new Point(20, 30), new Point(30, 40) }, new GeometryParams { AdditionalProperties = new Dictionary <string, object> { { "a", "b" } }, BoundingBox = new BoundingBox(new Position(0, 0), new Position(40, 40)), Crs = Crs.Named("SomeCrs1") }); Assert.AreEqual(geometryCollection1, geometryCollection2); Assert.AreEqual(geometryCollection1.GetHashCode(), geometryCollection2.GetHashCode()); Assert.AreNotEqual(geometryCollection1, geometryCollection3); Assert.AreNotEqual(geometryCollection1.GetHashCode(), geometryCollection3.GetHashCode()); Assert.AreNotEqual(geometryCollection1, geometryCollection4); Assert.AreNotEqual(geometryCollection1.GetHashCode(), geometryCollection4.GetHashCode()); Assert.AreNotEqual(geometryCollection1, geometryCollection5); Assert.AreNotEqual(geometryCollection1.GetHashCode(), geometryCollection5.GetHashCode()); Assert.AreNotEqual(geometryCollection1, geometryCollection6); Assert.AreNotEqual(geometryCollection1.GetHashCode(), geometryCollection6.GetHashCode()); }