GIS算法:可视化工具JTS TestBuilder

java、python、js都有可以引用的第三方包,实现GIS的空间算法。

java是jts,python是shapely,js是turf。

其中jts值得首先拥有,因为jts提供了一个界面工具JTS TestBuilder,可以在上面绘制图形,验证各种算法。

img

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输入框,在图板上绘制图形,双击结束绘制。

img

2.点击input的B输入框,切换到绘制图形B,绘制完成后,双击结束。

img

3.在Scalar Functions中,选择Intersects,点击compute,下面控制台中输出结果,Value of: Intersects 耗时18ms,结果为true,两个图形相交。

img

工具中Valid/Mark用于判断几何图形是否合法简单;Predicates获取DE-9IM模型结果;Scalar Function查验几何图形的空间关系;Geometry Functions对几何对象进行仿射、缓冲等操作,并获取结果。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/555179.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

php aes 3des区别,AES和3DES之间的区别

Post Views:283AES与3DESAES(高级加密标准)和3DES(也称为Triple DES(数据加密标准))是当前数据加密中的两个标准。AES是使用替代置换网络的全新加密,而3DES只是对依靠平衡Feistel网络的旧DES加密的一种改编。基本上,3DES只是将DES应用于加密信息的 3次。…

wkt区域围栏

API文档 http://shengshifeiyang.gitee.io/geotools-learning/ /** * 判断以x,y为坐标的点point(x,y)是否在geometry表示的Polygon中 * param x * param y * param geometry wkt格式 POLYGON((0 0, 10 0, 10 10, 0 10,0 0)) * return */ public static boolean withinGeo(doub…

oracle监听生成trace,监听器控制程序lsnrctl跟踪trace file

Oracle监听器是一个独立的数据库组件,在整个体系中扮演非常重要的作用。即使在windows平台上,监听器listener也被实现成为一个独立的进程程序。在一些与网络相关的故障中,监听器相关故障占了很大部分。了解监听器的工作过程,分析每…

Math.sin() 与 Math.cos() 用法

Math.sin() 与 Math.cos() 用法 Math.sin(x) x 的正玄值。返回值在 -1.0 到 1.0 之间;Math.cos(x) x 的余弦值。返回的是 -1.0 到 1.0 之间的数; 这两个函数中的X 都是指的“弧度”而非“角度”,弧度的计算公式为: 2PI/360…

oracle关联字段和序列,oracle(9) 序列和约束

序列 SEQUENCE也是数据库对象之一,作用:根据指定的规则生成一些列数字。序列通常是为某张表的主键提供值使用。主键:通常每张表都会有主键字段,该字段的值要求非空且唯一,使用该字段来确定表中的每一条记录。CREATE SE…

lambda表达式处理异常_lambda表达式内出现异常无法throw抛出

lambda体中有受检异常,为什么不能在lambda表达式外层try catch,只能在lambda里面try catch xxx.getUpdateList().forEach((map) ->{xxxVO vo new xxxVO();BeanUtils.populate(vo,map); // populate方法往外抛了异常list.add(vo);});因为lambda表达式本身没有处理异常的机制…

lambda处理异常四种方式

最近对接第三方呼叫系统,第三方SDK的所有方法里都有异常抛出,因为用到了lambda,所以异常处理还是很必要的。 本文主要用到了四种解决方案: 直接代码块处理自定义函数式接口,warp静态方法通过Either 类型包装通过Pair…

linux 历史命令快捷键,Linux历史命令及bash快捷键

本文环境 Centos71.历史命令1.1 在使用linux中熟练的使用历史命令,能给我很多便捷,下面我来总结一些常用的一些历史命令。a) 执行上一条命令,这个很重要 ,执行上一条命令有四种方法,如下:[rootCentOS-7-64data]#[rootCentOS-7-64 …

linux解压rar文件权限,linux下使用unrar命令解压*.rar格式文件

使用帮助[userlocalhost ~]$ unrarUNRAR 5.40 freeware Copyright (c) 1993-2016 Alexander RoshalUsage: unrar - -e Extract files without archived pathsl[t[a],b] List archive contents [technical[all], bare]p Print file to std…

lambda表达式无法抛出异常_Lambda 异常处理

lambda表达式无法抛出异常 背景&#xff1a;在一个方法中使用了lambda表达式&#xff0c;表达式中需要捕获异常&#xff0c;使用throws关键字发现并不起作用&#xff0c;必须使用trycatch才行 public class BeanUtil {public static <T,R> List<R> copyList(List…

linux的shell命令 a,linux shell命令大全(都是随堂笔记)

1. Tftp服务器(上传下载文件)注意&#xff1a;上传和下载文件时不能用目录表示 。因此&#xff0c;需要先cd到当前目录。注意目录权限&#xff1a;chmod 0777目录文件 8进制表示&#xff1a;Chmod的文件、目录的权限U自己 g 所属组 o其它 可加减步骤&#xff1a;安装服务器&…

异常 —— throws

1.1 异常概念 1.2 异常体系 java.lang.Throwable:类是 Java 语言中所有错误或异常的超类。 Exception:编译期异常,进行编译(写代码)java程序出现的问题 RuntimeException:运行期异常,java程序运行过程中出现的问题 异常就相当于程序得了一个小毛病(感冒,发烧),把异常处理掉,程序…

制作 小 linux 教程,【NanoPi NEO Plus2开发板试用体验】编译uboot和linux制作最小根文件系统制作刷机包---详细教程...

二、Linux命令基础1、查找文件查找a.c的文件 find -name "a.c"在当前目录搜索a字样的文件 grep "a" *-nR2、解压解压tar.gz文件 tar zxvf xxxxx.tar.gz解压tar.xz文件 先 xz -d xxx.tar.xz 将 xxx.tar.xz解压成 xxx.tar 然后&#xff0c;再用 tar xvf xx…

执行throw后 后面代码还会执行吗?

1.当我们对throw的对象进行try catch之后 public void re(int i) {if (i > 5){this.i i;}else {try {throw new Exception("数据非法&#xff01;");} catch (Exception e) {e.printStackTrace();}System.out.println("123");}结果显示&#xff1a;12…

linux怎么查看sklearn版本,Sklearn——Sklearn的介绍与安装

文章目录1.Sklearn简介2.Sklean安装2.1.pip安装2.2.conda安装1.Sklearn简介Scikit learn 也简称 sklearn, 是机器学习领域当中最知名的 python 模块之一.Sklearn 包含了很多种机器学习的方式:Classification 分类Regression 回归Clustering 非监督分类Dimensionality reduction…

一些防止 Java 代码被反编译的方法

由于Java字节码的抽象级别较高&#xff0c;因此它们较容易被反编译。本节介绍了几种常用的方法&#xff0c;用于保护Java字节码不被反编译。通常&#xff0c;这些方法不能够绝对防止程序被反编译&#xff0c;而是加大反编译的难度而已&#xff0c;因为这些方法都有自己的使用环…

linux 离线安装中文,linux离线安装及配置redis-Go语言中文社区

本文以centos7系统为例&#xff0c;介绍离线安装redis步骤一、环境准备检查服务器上是否存在gcc-c的环境&#xff0c;使用命令&#xff1a;rpm -qa | grep gcc-c如果没有该环境&#xff0c;则需要安装该环境&#xff0c;离线安装步骤为&#xff1a;1、获取相关rpm包&#xff0c…

Java学习记录 AWT绘图篇

绘制图形 Canvas画布类 Class Canvas java.lang.Object java.awt.Component java.awt.Canvas 用来 绘制图形 或 捕获用户输入的事件。绘制图形需要绘图方法实现绘制图形 方法说明paint(Graphics g)绘图repaint(Graphics g)重新绘图&#xff08;刷新 Graphics绘图类 Class Gra…

linux pmap 内存泄露,一个驱动导致的内存泄漏问题的分析过程(meminfo-pmap-slabtop-alloc_calls)...

关键词&#xff1a;sqllite、meminfo、slabinfo、alloc_calls、nand、SUnreclaim等等。下面记录一个由于驱动导致的内存泄漏问题分析过程。首先介绍问题背景&#xff0c;在一款嵌入式设备上&#xff0c;新使用sqllite库进行数据库操作&#xff0c;在操作数据(大量读写操作)一段…

Java基础--awt详解以及简单应用

GUI 图形用户界面 CLI 命令行用户接口 Java为GUI提供的对象存在java.Awt和Javax.Swing两个包中. Java当中如何完成图形化界面的制作呢? AWT:abstract Window ToolKit.需要调用本地系统实现功能.属于重量级控件.依赖于平台.跨平台性不是特别好. Javax.Swing:在AWT基础上.建立一…