Turf.js中文网
几何计算:
1. 前端js就用这个 Turfjs的类库。参考网站: 计算两线段相交点 | Turf.js中文网
2. 后端java语言就可以用 JTS这个类库,参考网站:https://locationtech.github.io/jts/
https://github.com/locationtech/jts
最近工作上遇到一些几何相关的工作,比如经纬度计算,物理空间几何相关的工作。
在前端js框架中有个 Turfjs的库,他是 JavaScript 空间分析库,由Mapbox 提供,Turf 实现了常用的空间分析操作,例如生成缓冲区、计算等高线,建立 TIN 等等。以往只属于桌面 GIS 的分析功能,已经可以在浏览器中使用。 Turf 使用 JavaScript 编写,通过 npm 进行包管理。良好的模块化设计使得 Turf 不仅可用于浏览器端,还可以通过 Node.js 在服务器端使用。 Turf 原生支持 GeoJSON
可以参考他的官网,功能还是很强大的 。
Turf.js中文网
计算两线段相交点 | Turf.js中文网地理空间分析库,处理各种地图算法https://turfjs.fenxianglu.cn/category/misc/lineIntersect.html
Turf.js中文网
https://turfjs.fenxianglu.cn/category/misc/lineIntersect.html
GET START
MEASUREMENT
>> 计算沿长点
>> 计算区域面积
>> 计算边界
>> 计算边界多边形
>> 计算两点间角度
>> 计算中心点
>> 计算多点中心
>> 计算多边形中心
>> 根据点、距离和角度计算目标点
>> 计算两点间距离
>> 计算多点范围
>> 计算多段线长度
>> 计算两点中心点
>> 计算位于多边形表面的点
>> 计算多边形切线点
>> 计算点到多段线的最短距离
>> 计算两点恒向线夹角
>> 根据点、距离和角度计算目标点
>> 计算两点间的距离
>> 根据边界计算最小正方形边界
>> 计算两点间的弧线
COORDINATE MUTATION
>> 清除重复坐标点
>> 翻转经纬度
>> Rewind
>> 四舍五入
>> 坐标小数点处理
TRANSFORMATION
>> 边界裁切
>> 多段线平滑
>> 计算缓冲区(辐射区)
>> 生成多边形圆
>> 克隆
>> 生成凹多边形
>> 生成凸多边形
>> 计算差异
>> 分解多边形
>> 计算交集
>> 多段线偏移
>> 简化多边形
>> 多边形划分三角形
>> 旋转
>> 平移
>> 缩放
>> 联合
FEATURE CONVERSION
>> 结合
>> 拆分多边形为点
>> 减少嵌套层级
>> 多段线转换多边形
>> 多边形化
>> 多边形转换多段线
MISC
>> 返回相交点
>> 创建圆弧
>> 分割多线段
>> 计算两线段相交点
>> 计算两多线段重叠段
>> 多边形顶点连线
>> 根据点截取多线段
>> 根据距离截取多线段
>> 根据Feature分割线段
>> 返回非遮罩多边形
>> 计算点到多线段最短间距的点
>> 计算扇形多边形
>> 计算最短路径
>> 计算非弯曲多边形
HELPER
>> feature集合
>> feature
>> 几何对象集合
>> 线
>> 多条线
>> 多个点
>> 多个多边形
>> 点
>> 多边形
RANDOM
>> 随机位置
>> 随机点
>> 随机线段
>> 随机多边形
>> DATA
>> 返回指定数量的点
INTERPOLATION
>> 插入网格点
>> 等压线
>> 等值线
>> 平面点
>> tin多边形
JOINS
>> 返回在多边形内的点
>> 空间连接
GRIDS
>> 六边形网格
>> 点网格
>> 正方形网格
>> 三角形网格
CLASSIFICATION
>> 计算最近的点
AGGREGATION
>> 收集
>> Dbscan聚类算法
>> K-Means聚类算法
META
>> 获取所有坐标
>> 坐标遍历
>> 坐标累加
>> feature遍历
>> feature累加
>> flatten遍历
>> flatten累加
>> 获取单个坐标
>> 获取多个坐标
>> 获取几何对象
>> 获取类型
>> 几何对象遍历
>> 几何对象累加
>> 属性遍历
>> 属性累加
>> 线段遍历
>> 线段累加
>> 获取聚类
>> 聚类遍历
>> 聚类累加
ASSERTIONS
>> 集合类型
>> 坐标是否包含数字
>> geojson类型
>> feature类型
BOOLEANS
>> 判断是否是顺时针
>> 判断是否包含
>> 判断是否交叉
>> 判断是否不相交
>> 判断是否相等
>> 判断是否重叠
>> 判断是否平行
>> 判断点是否在多边形内
>> 判断点是否在线上
>> 判断是否在线内
UNIT CONVERSION
>> 转换方位角
>> 转换区域
>> 转换长度
>> 角度转弧度
>> 长度转弧度
>> 长度转角度
>> 弧度转长度
>> 弧度转角度
>> WGS84转墨卡托
>> 墨卡托转WGS84