使用python实现渔网创建
使用python实现渔网创建,根据边界裁剪掉多余的渔网点,并找到渔网中心center
·
使用python实现渔网创建
from shapely.geometry import Polygon
import geopandas as gpd
def Fishnet(boundary,cell_height,cell_width) -> None:
# 渔网多边形
# boundary = gpd.read_file("boundary.shp")
xmin, ymin, xmax, ymax = boundary.total_bounds
rows = int((ymax - ymin) / cell_height)
cols = int((xmax - xmin) / cell_width)
polygons = []
for x in range(cols):
for y in range(rows):
polygons.append(Polygon([(xmin + x * cell_width, ymin + y * cell_height),
(xmin + (x + 1) * cell_width, ymin + y * cell_height),
(xmin + (x + 1) * cell_width, ymin + (y + 1) * cell_height),
(xmin + x * cell_width, ymin + (y + 1) * cell_height)]))
fishnet = gpd.GeoDataFrame(geometry=polygons, crs=boundary.crs)
# 计算渔网中心点
fishnet["center"] = fishnet.centroid
fishnet = fishnet.set_geometry("center")
# 设置新的crs为4326
fishnet = fishnet.to_crs(epsg=4326)
fishnet = fishnet.drop('geometry',axis =1)
return fishnet
注意: boundary需要投影。

GitCode 天启AI是一款由 GitCode 团队打造的智能助手,基于先进的LLM(大语言模型)与多智能体 Agent 技术构建,致力于为用户提供高效、智能、多模态的创作与开发支持。它不仅支持自然语言对话,还具备处理文件、生成 PPT、撰写分析报告、开发 Web 应用等多项能力,真正做到“一句话,让 Al帮你完成复杂任务”。
更多推荐
所有评论(0)