Package chunmap.data.io

Source Code of chunmap.data.io.WktReaderTest

/**
* Copyright (c) 2009-2011, chunquedong(YangJiandong)
*
* This file is part of ChunMap project
* Licensed under the GNU LESSER GENERAL PUBLIC LICENSE(Version >=3)
*
* History:
*     2010-05-05  Jed Young  Creation
*/
package chunmap.data.io;

import static org.junit.Assert.*;

import org.junit.Test;

import chunmap.model.geom.Geometry;
import chunmap.model.geom.WktReader;

/**
* @author chunquedong
*
*/
public class WktReaderTest {

  /**
   * {@link chunmap.model.geom.WktReader#read(java.lang.String)} 的测试方法。
   */
  @Test
  public void testReadPoint() {
    WktReader wkt = new WktReader();
    Geometry g = wkt.read("POINT(1230.09 234)");
    Geometry g2 = wkt.read(g.toString());
    assertTrue(g2.toString().equals("POINT(1230.09 234.0)"));
  }

  @Test
  public void testReadLineString() {
    WktReader wkt = new WktReader();
    Geometry g = wkt.read("LineString(1230.09 234,334 23)");
    Geometry g2 = wkt.read(g.toString());
    assertTrue(g2.toString().equals("LINESTRING(1230.09 234.0,334.0 23.0)"));
  }

  @Test
  public void testReadPolygon() {
    WktReader wkt = new WktReader();
    Geometry g = wkt.read("POLYGON((10 20,1230.09 234,334 23,10 20)"
        + ",(30 20,45 33,23 10,30 20))");
    Geometry g2 = wkt.read(g.toString());
    assertTrue(g2.toString().equals(
        "POLYGON((10.0 20.0,1230.09 234.0,334.0 23.0,10.0 20.0)"
            + ",(30.0 20.0,45.0 33.0,23.0 10.0,30.0 20.0))"));
  }

  @Test
  public void testReadMultiPoint() {
    WktReader wkt = new WktReader();
    Geometry g = wkt.read("MULTIPOINT(1230.09 234,334 23)");
    Geometry g2 = wkt.read(g.toString());
    assertTrue(g2.toString().equals("MULTIPOINT(1230.09 234.0,334.0 23.0)"));
  }

  @Test
  public void testReadMultiLineString() {
    WktReader wkt = new WktReader();
    Geometry g = wkt
        .read("MULTILINESTRING((10 20,1230.09 234,334 23,10 20)"
            + ",(30 20,45 33,23 10,30 20))");
    Geometry g2 = wkt.read(g.toString());
    assertTrue(g2.toString().equals(
        "MULTILINESTRING((10.0 20.0,1230.09 234.0,334.0 23.0,10.0 20.0)"
            + ",(30.0 20.0,45.0 33.0,23.0 10.0,30.0 20.0))"));
  }

  @Test
  public void testReadMultiPolygon() {
    WktReader wkt = new WktReader();
    Geometry g = wkt.read("MULTIPOLYGON(((10 20,40 50,60 70,10 20)),"
        + "((0 0,0 100,100 100,100 0,0 0)))");
    Geometry g2 = wkt.read(g.toString());
    assertTrue(g2
        .toString()
        .equals(
            "MULTIPOLYGON"
                + "(((10.0 20.0,40.0 50.0,60.0 70.0,10.0 20.0)),"
                + "((0.0 0.0,0.0 100.0,100.0 100.0,100.0 0.0,0.0 0.0)))"));
  }

  @Test
  public void testReadMultiGeometry() {
    WktReader wkt = new WktReader();
    Geometry g = wkt
        .read("GEOMETRYCOLLECTION(MULTIPOLYGON(((10 20,40 50,60 70,10 20)),"
            + "((0 0,0 100,100 100,100 0,0 0))),POINT(1230.09 234))");
    Geometry g2 = wkt.read(g.toString());
    String s = g2.toString();
    assertTrue(s.equals("GEOMETRYCOLLECTION(MULTIPOLYGON"
        + "(((10.0 20.0,40.0 50.0,60.0 70.0,10.0 20.0)),"
        + "((0.0 0.0,0.0 100.0,100.0 100.0,100.0 0.0,0.0 0.0))),POINT(1230.09 234.0))"));
  }
}
TOP

Related Classes of chunmap.data.io.WktReaderTest

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.