java、python、js都有可以引用的第三方包,实现GIS的空间算法。
java是jts,python是shapely,js是turf。
其中jts值得首先拥有,因为jts提供了一个界面工具JTS TestBuilder,可以在上面绘制图形,验证各种算法。
jts官网:https://www.tsusiatsoftware.net/jts/main.html
jts下载地址:https://sourceforge.net/projects/jts-topo-suite/
jts拓扑套件功能详览:https://www.tsusiatsoftware.net/jts/jtsfeatures.html
下载后,将压缩包解压,在jts-1.14文件夹下的bin文件夹中,双击testbuilder.bat,既可启动JTS TestBuilder。
举一个最简单的例子,看JTS TestBuilder的使用方法。
判断两个面是否相交。
1.首先点击工具条上的Draw Polygon,然后进入侧边栏,点击input,点击A输入框,在图板上绘制图形,双击结束绘制。
2.点击input的B输入框,切换到绘制图形B,绘制完成后,双击结束。
3.在Scalar Functions中,选择Intersects,点击compute,下面控制台中输出结果,Value of: Intersects 耗时18ms,结果为true,两个图形相交。
工具中Valid/Mark用于判断几何图形是否合法简单;Predicates获取DE-9IM模型结果;Scalar Function查验几何图形的空间关系;Geometry Functions对几何对象进行仿射、缓冲等操作,并获取结果。