# spatial4j-learning **Repository Path**: shengshifeiyang/spatial4j-learning ## Basic Information - **Project Name**: spatial4j-learning - **Description**: Spatial4j类库使用说明,Spatial4j是一个通用的空间/地理空间(spatial/geospatial) ASL 授权的开源Java库。它的核心能力有三个方面:提供常见的形状,可以在欧几里得和测地线(球体)表面世界模型,提供距离计算和其他数学、读和写等格式的形状 WKT 和GeoJSON - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 6 - **Forks**: 5 - **Created**: 2022-05-01 - **Last Updated**: 2024-07-12 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # spatial4j-learning ## 介绍 Spatial4j是一款java编写的空间计算开源库,支持ASL开源协议,支持地理空间计算。
Spatial4j主要有三个主要功能:
1)支持基于平面几何或地理空间的若干图形;
2)支持距离计算和形状的计算:计算边界框、面积、图形间的关系等
3)解析WKT、GeoJSON等空间描述标准格式
Spatial4j利用了部分JTS的能力(JTS是最流行的java空间计算库),例如多边形是基于JTS实现的。相比与JTS,spatial4j还支持了圆以及地理空间计算。用JTS,通常用多边形近似替代了圆的计算,对结果会造成一定误差,而Spatial4j支持了圆;另外,地理空间计算的应用现在十分广泛,用spatial4j会更加方便。 ## 项目结构 1)context 几何工厂,负责创建相关几何对象
2)distance 相关计算包
3)exception
4)io 输入输出:geoJson WKT WKB 等
5)shape 几何形状,处理对象实体
## 使用说明 [shape几何结构说明](docs/shape/shape.md)
[shape几何创建](docs/shape/shape-create.md)
[平面坐标系与空间坐标系下面的几何关系](docs/shape/shape-relate.md)
[Spatial距离计算](docs/shape/spatial4j-distance.md)
[Spatial WKT格式解析](docs/shape/wktreadwrite.md)
[Spatial GeoJSON格式解析](docs/shape/geojson.md)
## 安装教程 ```xml org.locationtech.spatial4j spatial4j 0.8 org.noggit noggit 0.8 true com.fasterxml.jackson.core jackson-databind 2.9.10.8 true org.locationtech.jts jts-core 1.18.1 true ``` ## 代码类库地址 [spatial4j GitHub](https://github.com/locationtech/spatial4j)