python如何使用geotools_Python pygeotools包_程序模块 - PyPI - Python中文网

#Pygeotools公司

用于地理空间数据处理和分析的库和命令行工具

##特点

-将光栅重新采样/扭曲为公共分辨率/范围/投影

-使用[numpy屏蔽数组](https://docs.scipy.org/doc/numpy/reference/maskedarray.generic.html)处理具有nodata间隙的光栅的许多函数

-点数据坐标转换、采样和插值程序(例如,XYZ点阵列)

-常见的光栅过滤操作

###库[pygeotools/lib](/pygeotools/lib)

-geolib-坐标转换,光栅到矢量,矢量到光栅

-malib-numpy屏蔽数组操作,demstack类

-warplib-对任意数量的输入数据集执行动态gdal warp操作

-iolib-文件输入/输出,gdal i/o包装器,屏蔽数组写入磁盘

-timelib-时间转换,从文件名中提取时间戳,用于光栅时间序列分析

-filtlib-二维屏蔽阵列的滤波器集合(高斯、滚动中值、高通等)

###命令行实用程序(不带使用参数运行)

-warptool.py-将任意光栅扭曲到公共res/extent/proj

-make_stack.py-创建输入光栅(光栅时间序列对象)和计算统计数据的“堆栈”

-clip_raster_by_shp.py-使用多边形形状文件剪裁和遮罩输入光栅

-apply_mask.py-将遮罩从一个光栅应用到另一个光栅

-filter.py-应用filtelib中提供的各种过滤器

-trim_dv.py-从光栅页边距中删除仅包含节点数据的行/列

-replace_dv.py-替换nodata值

-

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
geotools中,可以使用TriangulationBuilder类来生成泰森多边形边界。具体步骤如下: 1. 创建Point集合 ```python List<Point> points = new ArrayList<>(); ``` 2. 将要生成泰森多边形的点添加到Point集合中 ```python points.add(new GeometryFactory().createPoint(new Coordinate(0, 0))); points.add(new GeometryFactory().createPoint(new Coordinate(10, 0))); points.add(new GeometryFactory().createPoint(new Coordinate(10, 10))); points.add(new GeometryFactory().createPoint(new Coordinate(0, 10))); ``` 3. 创建TriangulationBuilder对象并设置点集合 ```python TriangulationBuilder tb = new TriangulationBuilder(); tb.setSites(points); ``` 4. 生成Delaunay三角网 ```python Geometry triangulation = tb.getTriangles(new GeometryFactory()); ``` 5. 生成泰森多边形边界 ```python Geometry boundary = triangulation.convexHull(); ``` 完整示例代码如下: ```python import java.util.ArrayList; import java.util.List; import org.locationtech.jts.geom.Coordinate; import org.locationtech.jts.geom.Geometry; import org.locationtech.jts.geom.GeometryFactory; import org.locationtech.jts.triangulate.ConformingDelaunayTriangulationBuilder; import org.locationtech.jts.triangulate.TriangulationBuilder; public class Main { public static void main(String[] args) { List<Point> points = new ArrayList<>(); points.add(new GeometryFactory().createPoint(new Coordinate(0, 0))); points.add(new GeometryFactory().createPoint(new Coordinate(10, 0))); points.add(new GeometryFactory().createPoint(new Coordinate(10, 10))); points.add(new GeometryFactory().createPoint(new Coordinate(0, 10))); TriangulationBuilder tb = new ConformingDelaunayTriangulationBuilder(); tb.setSites(points); Geometry triangulation = tb.getTriangles(new GeometryFactory()); Geometry boundary = triangulation.convexHull(); System.out.println(boundary); } } ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值