public void testReadPoint() throws Exception { // arrange double[] coordinates = new double[] {10, 10}; CoordinateSequence seqPt2D = createSequence(Ordinate.createXY(), coordinates); CoordinateSequence seqPt2DE = createSequence(Ordinate.createXY(), new double[0]); CoordinateSequence seqPt3D = createSequence(Ordinate.createXYZ(), coordinates); CoordinateSequence seqPt2DM = createSequence(Ordinate.createXYM(), coordinates); CoordinateSequence seqPt3DM = createSequence(Ordinate.createXYZM(), coordinates); // act Point pt2D = (Point) reader2D.read("POINT (10 10)"); Point pt2DE = (Point) reader2D.read("POINT EMPTY"); Point pt3D = (Point) reader3D.read("POINT Z(10 10 10)"); Point pt2DM = (Point) reader2DM.read("POINT M(10 10 11)"); Point pt3DM = (Point) reader3DM.read("POINT ZM(10 10 10 11)"); // assert assertTrue(GeometryTestCase.checkEqual(seqPt2D, pt2D.getCoordinateSequence())); assertTrue(GeometryTestCase.checkEqual(seqPt2DE, pt2DE.getCoordinateSequence())); assertTrue(GeometryTestCase.checkEqual(seqPt3D, pt3D.getCoordinateSequence())); assertTrue(GeometryTestCase.checkEqual(seqPt2DM, pt2DM.getCoordinateSequence())); assertTrue(GeometryTestCase.checkEqual(seqPt3DM, pt3DM.getCoordinateSequence())); }
public void testReadLineString() throws Exception { // arrange double[] coordinates = new double[] {10, 10, 20, 20, 30, 40}; CoordinateSequence seqLs2D = createSequence(Ordinate.createXY(), coordinates); CoordinateSequence seqLs2DE = createSequence(Ordinate.createXY(), new double[0]); CoordinateSequence seqLs3D = createSequence(Ordinate.createXYZ(), coordinates); CoordinateSequence seqLs2DM = createSequence(Ordinate.createXYM(), coordinates); CoordinateSequence seqLs3DM = createSequence(Ordinate.createXYZM(), coordinates); // act LineString ls2D = (LineString) reader2D .read("LINESTRING (10 10, 20 20, 30 40)"); LineString ls2DE = (LineString) reader2D .read("LINESTRING EMPTY"); LineString ls3D = (LineString) reader3D .read("LINESTRING Z(10 10 10, 20 20 10, 30 40 10)"); LineString ls2DM = (LineString) reader2DM .read("LINESTRING M(10 10 11, 20 20 11, 30 40 11)"); LineString ls3DM = (LineString) reader3DM .read("LINESTRING ZM(10 10 10 11, 20 20 10 11, 30 40 10 11)"); // assert assertTrue(GeometryTestCase.checkEqual(seqLs2D, ls2D.getCoordinateSequence())); assertTrue(GeometryTestCase.checkEqual(seqLs2DE, ls2DE.getCoordinateSequence())); assertTrue(GeometryTestCase.checkEqual(seqLs3D, ls3D.getCoordinateSequence())); assertTrue(GeometryTestCase.checkEqual(seqLs2DM, ls2DM.getCoordinateSequence())); assertTrue(GeometryTestCase.checkEqual(seqLs3DM, ls3DM.getCoordinateSequence())); }
public void testReadLinearRing() throws Exception { CoordinateSequence seqLs2D = createSequence(Ordinate.createXY(), coordinates); CoordinateSequence seqLs2DE = createSequence(Ordinate.createXY(), new double[0]); CoordinateSequence seqLs3D = createSequence(Ordinate.createXYZ(), coordinates); CoordinateSequence seqLs2DM = createSequence(Ordinate.createXYM(), coordinates); CoordinateSequence seqLs3DM = createSequence(Ordinate.createXYZM(), coordinates);
createSequence(Ordinate.createXY(), coordinates[0]), createSequence(Ordinate.createXY(), coordinates[1])}; CoordinateSequence[] csMP3D = new CoordinateSequence[] { createSequence(Ordinate.createXYZ(), coordinates[0]), createSequence(Ordinate.createXYZ(), coordinates[1])}; CoordinateSequence[] csMP2DM = new CoordinateSequence[] { createSequence(Ordinate.createXYM(), coordinates[0]), createSequence(Ordinate.createXYM(), coordinates[1])}; CoordinateSequence[] csMP3DM = new CoordinateSequence[] { createSequence(Ordinate.createXYZM(), coordinates[0]), createSequence(Ordinate.createXYZM(), coordinates[1])};
createSequence(Ordinate.createXY(), coordinates[0]), createSequence(Ordinate.createXY(), coordinates[1])}; CoordinateSequence[] csMls3D = new CoordinateSequence[] { createSequence(Ordinate.createXYZ(), coordinates[0]), createSequence(Ordinate.createXYZ(), coordinates[1])}; CoordinateSequence[] csMls2DM = new CoordinateSequence[] { createSequence(Ordinate.createXYM(), coordinates[0]), createSequence(Ordinate.createXYM(), coordinates[1])}; CoordinateSequence[] csMls3DM = new CoordinateSequence[] { createSequence(Ordinate.createXYZM(), coordinates[0]), createSequence(Ordinate.createXYZM(), coordinates[1])};
createSequence(Ordinate.createXY(), shell), createSequence(Ordinate.createXY(), ring1), createSequence(Ordinate.createXY(), ring2)}; CoordinateSequence csPoly2DE = createSequence(Ordinate.createXY(), new double[0]); CoordinateSequence[] csPoly3D = new CoordinateSequence[] { createSequence(Ordinate.createXYZ(), shell), createSequence(Ordinate.createXYZ(), ring1), createSequence(Ordinate.createXYZ(), ring2)}; CoordinateSequence[] csPoly2DM = new CoordinateSequence[] { createSequence(Ordinate.createXYM(), shell), createSequence(Ordinate.createXYM(), ring1), createSequence(Ordinate.createXYM(), ring2)}; CoordinateSequence[] csPoly3DM = new CoordinateSequence[] { createSequence(Ordinate.createXYZM(), shell), createSequence(Ordinate.createXYZM(), ring1), createSequence(Ordinate.createXYZM(), ring2)};
createSequence(Ordinate.createXY(), shell1), createSequence(Ordinate.createXY(), ring1), createSequence(Ordinate.createXY(), shell2)}; CoordinateSequence[] csPoly3D = new CoordinateSequence[] { createSequence(Ordinate.createXYZ(), shell1), createSequence(Ordinate.createXYZ(), ring1), createSequence(Ordinate.createXYZ(), shell2)}; CoordinateSequence[] csPoly2DM = new CoordinateSequence[] { createSequence(Ordinate.createXYM(), shell1), createSequence(Ordinate.createXYM(), ring1), createSequence(Ordinate.createXYM(), shell2)}; CoordinateSequence[] csPoly3DM = new CoordinateSequence[] { createSequence(Ordinate.createXYZM(), shell1), createSequence(Ordinate.createXYZM(), ring1), createSequence(Ordinate.createXYZM(), shell2)};
public void testReadGeometryCollection() throws Exception { // arrange double[][] coordinates = new double[][] { new double[] {10, 10}, new double[] {30, 30}, new double[] {15, 15, 20, 20}, new double[0], new double[] {10, 10, 20, 20, 30, 40, 10, 10} }; CoordinateSequence[] css = new CoordinateSequence[] { createSequence(Ordinate.createXY(), coordinates[0]), createSequence(Ordinate.createXY(), coordinates[1]), createSequence(Ordinate.createXY(), coordinates[2]), createSequence(Ordinate.createXY(), coordinates[3]), createSequence(Ordinate.createXY(), coordinates[4]), }; // arrange WKTReader rdr = GeometryTestCase.getWKTReader(Ordinate.createXY(), 1); GeometryCollection gc0 = (GeometryCollection)rdr.read("GEOMETRYCOLLECTION (POINT (10 10), POINT (30 30), LINESTRING (15 15, 20 20))"); GeometryCollection gc1 = (GeometryCollection)rdr.read("GEOMETRYCOLLECTION (POINT (10 10), LINEARRING EMPTY, LINESTRING (15 15, 20 20))"); GeometryCollection gc2 = (GeometryCollection)rdr.read("GEOMETRYCOLLECTION (POINT (10 10), LINEARRING (10 10, 20 20, 30 40, 10 10), LINESTRING (15 15, 20 20))"); GeometryCollection gc3 = (GeometryCollection)rdr.read("GEOMETRYCOLLECTION EMPTY"); // assert assertTrue(GeometryTestCase.checkEqual(css[0], ((Point)gc0.getGeometryN(0)).getCoordinateSequence())); assertTrue(GeometryTestCase.checkEqual(css[1], ((Point)gc0.getGeometryN(1)).getCoordinateSequence())); assertTrue(GeometryTestCase.checkEqual(css[2], ((LineString)gc0.getGeometryN(2)).getCoordinateSequence())); assertTrue(GeometryTestCase.checkEqual(css[0], ((Point)gc1.getGeometryN(0)).getCoordinateSequence())); assertTrue(GeometryTestCase.checkEqual(css[3], ((LinearRing)gc1.getGeometryN(1)).getCoordinateSequence())); assertTrue(GeometryTestCase.checkEqual(css[2], ((LineString)gc1.getGeometryN(2)).getCoordinateSequence())); assertTrue(GeometryTestCase.checkEqual(css[0], ((Point)gc2.getGeometryN(0)).getCoordinateSequence())); assertTrue(GeometryTestCase.checkEqual(css[4], ((LinearRing)gc2.getGeometryN(1)).getCoordinateSequence())); assertTrue(GeometryTestCase.checkEqual(css[2], ((LineString)gc2.getGeometryN(2)).getCoordinateSequence())); assertTrue(gc3.isEmpty()); }
public void testReadNaN() throws Exception { // arrange CoordinateSequence seq = createSequence(Ordinate.createXYZ(), new double[] {10, 10}); seq.setOrdinate(0, CoordinateSequence.Z, Double.NaN); // act Point pt1 = (Point)reader2DOld.read("POINT (10 10 NaN)"); Point pt2 = (Point)reader2DOld.read("POINT (10 10 nan)"); Point pt3 = (Point)reader2DOld.read("POINT (10 10 NAN)"); // assert assertTrue(GeometryTestCase.checkEqual(seq, pt1.getCoordinateSequence())); assertTrue(GeometryTestCase.checkEqual(seq, pt2.getCoordinateSequence())); assertTrue(GeometryTestCase.checkEqual(seq, pt3.getCoordinateSequence())); }