gma 2.0.0a3 (2023.07.17) 更新日志

安装 gma 2.0.0a3

pip install gma==2.0.0a3

新增

 1、为矢量要素(Feature)添加 【Difference】(差集)方法
  取第一个矢量要素与第二个矢量要素的几何差集。
 2、为矢量要素(Feature)添加几种几何形状测试方法
  包括 TestContains(包含关系测试),TestIntersection(相交测试),TestOverlaps(重叠测试),TestRing(环形测试),TestTouches(接触测试),TestValid(有效性测试)。

注意:其中,gma在处理Feature时会自动进行几何有效性检查和修复。但有些几何无法修复,测试可用TestValid进行测试。

 3、为矢量要素(Feature)添加 【Distance】(距离)方法
  计算两个矢量要素之间的距离。

修复

 1、【PWD概率加权距】
  优化最小有效值数量的确定方法,避免多维数据中N值为0(栅格数据中存在无效区域的情况)导致多维数据结果全nan的情况。

 2、【线性距离计算】
  SciPy引用错误导致计算报错。

 3、【多栅格输入相关函数】
  拉取输入数据时仅提取了第一个输入数据,引起功能异常的问题。受影响函数:BandSynthesis(波段合成)、Mosaic(栅格镶嵌)、Deformation(流程化处理)

优化

 1、【距离和面积计算】
  由于空间参考类已经完善,从本版本开始,在对地理坐标系点进行面积/距离运算时,自动引入对应椭球体半轴,而不再是一个固定值(虽然误差可能不大)。

简单示例

from gma import io
from gma.map import plot, inres

# 定义两个矩形的四个顶点
Points0 = [[0,0], [0, 2], [2, 2], [2, 0]]
Points1 = [[1,1], [1, 3], [3, 3], [3, 1]]

# 根据点生成两个多边形(矩形)Feature
FT0 = io.CreateFeatureFromPoints(Points0)
FT1 = io.CreateFeatureFromPoints(Points1)
## 在地图上绘制两个矩形
MapF = plot.MapFrame(Extent = [-1, -1, 4, 4])
# 1.添加要素
MapF1 = MapF.AddFeature(FT0, FaceColor = 'lightblue', EdgeColor = 'gray', LineWidth = 0.1)
MapF2 = MapF.AddFeature(FT1, FaceColor = 'lightyellow', EdgeColor = 'gray', LineWidth = 0.1)
# 2.设置地图框
Frame = MapF.SetFrame()

gma 2.0.0a3 (2023.07.17) 更新日志_第1张图片

## 取第一个矩形与第二个矩形的差集(用第一个矩形减去第二个矩形)
FT3 = FT0.Difference(FT1)

MapF = plot.MapFrame(Extent = [-1, -1, 4, 4])
# 1.添加要素
MapF1 = MapF.AddFeature(FT3, FaceColor = 'lightblue', EdgeColor = 'gray', LineWidth = 0.1)
# 2.设置地图框
Frame = MapF.SetFrame()

gma 2.0.0a3 (2023.07.17) 更新日志_第2张图片

gma 网站和矢量文件操作功能说明

gma 网站:gma.luosgeo.com(网站出点小问题暂时无法访问)

注意:网站针对 1.x 版本内容,2.x 版本中部分函数功能已经调整或变更,详见内置帮助。

  gma 2.x 矢量数据操作类主要包括数据资源(DataSource)、矢量图层(Layer)、矢量要素(Feature),三者的示意图如下:
gma 2.0.0a3 (2023.07.17) 更新日志_第3张图片
  gma 2.x 内矢量数据功能/属性的关系结构如下图所示:

gma 2.0.0a3 (2023.07.17) 更新日志_第4张图片

你可能感兴趣的:(gma,教程)