MULTILINESTRING ((1 1, 2 1, 2 2, 1 2, 1 1), (1.2 1.2, 1.8 1.2, 1.8 1.8, 1.2 1.8, 1.2 1.2))
MULTIPOINT ((1.5 1), (1.5 1.2))
使用QGIS对上述结果可视化:
本文仅简单介绍了一种计算平面内线与面交点的方法,在此记录下,方便以后查阅。函数只做了简单的测试,只能满足当前项目的小需求,如果您遇到类似的问题,希望能给予您一点点的提示。
文章目录前言一、maven引入GeoTools依赖二、方法实现1.实现思路2.面转换为线3.计算交点坐标4.wkt转Geometry5.完整代码6.测试结果总结前言最近在做一个项目,涉及到求线与面的交点问题,查阅了API,没有发现符合需求的函数,于是就动手实现了求线与面交点的功能。注意:这里的线与面的交点仅指二维平面的交点,而非三维的参考链接:GeoTools官方文档提示:以下是本篇文章正文内容,下面案例可供参考一、maven引入GeoTools依赖项目中用到的Geotools中的依赖都在
一:代数方式
我们假设它们的交点为P,既然我们有一个平面,那么平面上面的一个点P0和平面的normal(垂直于平面的向量)我们是肯定知道的。
根据3D数学知识,(P-P0) · normal = 0(公式一);(既然垂直,那么它们点乘肯定为0)。
对于这条直线,我们肯定知道直线上面的某一点L0和直线的方向L,那么 P = L0 + dL(公式二),d是距离。
把公式二代入公式一,我们可以得
空间数据模型
(1)、JTS Geometry model
(2)、ISO Geometry model (Geometry Plugin and JTS Wrapper Plugin)
GeoTools has two implementations of these interfaces:
Geometry Plugin a port of JTS 1.7 to the ISO Geometry interfaces
JTS Wrapper Plugin an implementation that.
这两天在做一个系统的后台,需要用到GeoTools做后端空间分析,记录一下自己遇到的问题。
项目通过Maven进行构建,参照文档Maven Quickstart添加GeoTools依赖和远程仓库地址。
<dependencies>
<dependency>
<groupId>org.geotools</groupId>
<artifactId>gt-shapefile</