JTS空间分析工具包(GIS开源)学习 JAVA

来源:互联网 发布:软件著作权登记公告 编辑:程序博客网 时间:2024/06/12 00:39

JST空间分析工具包是一套JAVA API,提供一系列的空间数据分析操作。最近开发项目刚好需要用到,上网搜资料也少,就自己写下来记录一下。C++版本的拓扑分析开源工具叫:geos;.NET版本的拓扑分析开源工具叫:NTS。

1.下载

工具包下载地址:点击打开链接

2.学习资料

  • 工具包里的官方入门文档:doc文件夹里的JTS Developer Guide.pdf。下载地址
  • 官方API:jts-1.14\doc\javadoc\index.html

3.示例

(开发之前先引入lib文件夹内的所有JAR)

以两个多边形判断是否相交为例:

package com.jts;import com.vividsolutions.jts.JTSVersion;import com.vividsolutions.jts.geom.Coordinate;import com.vividsolutions.jts.geom.Geometry;import com.vividsolutions.jts.geom.GeometryFactory;public class 四边形求交1 {public static void main(String[] args) {// TODO Auto-generated method stub        Coordinate[] coordinates1 = new Coordinate[]{        new Coordinate(117.2,34.8),new Coordinate(122.2,34.8),        new Coordinate(122.2,31.5),new Coordinate(117.2,31.5),new Coordinate(117.2,34.8)        };        Coordinate[] coordinates2 = new Coordinate[]{        new Coordinate(118.9,33.8),new Coordinate(120.8,33.8),        new Coordinate(120.8,32.6),new Coordinate(118.9,32.6),new Coordinate(118.9,33.8)        };//        Coordinate[] coordinates2 = new Coordinate[]{//        new Coordinate(1,1),new Coordinate(2,2),//        new Coordinate(3,3),new Coordinate(4,4),new Coordinate(1,1)//        };        Geometry g1 = new GeometryFactory().createPolygon(coordinates1);        Geometry g2 = new GeometryFactory().createPolygon(coordinates2);                boolean isIter = g1.intersects(g2);        if(isIter)System.out.println("相交");        else System.out.println("不相交");                }}

结果如图:



原创粉丝点击