当前位置: 首页 > news >正文

台州网站设计外包商业网页设计培训

台州网站设计外包,商业网页设计培训,网站设计制作什么时候好,wordpress page post最近在处理矢量样本的时候,遇到一些shp文件的坐标系为2000坐标,需要统一地把非WGS84坐标系的矢量转换为WGS84坐标系。 本文记录一下如何进行2000坐标系转化为wgs84坐标系的过程。 在处理矢量数据转换的过程中,有几个关键步骤确保了数据的有效…

最近在处理矢量样本的时候,遇到一些shp文件的坐标系为2000坐标,需要统一地把非WGS84坐标系的矢量转换为WGS84坐标系。

本文记录一下如何进行2000坐标系转化为wgs84坐标系的过程。

在处理矢量数据转换的过程中,有几个关键步骤确保了数据的有效性和可用性。

首先,在转换之前,通过检查并创建目标保存目录,保证了正确的目录结构,这对于避免转换失败或产生错误输出至关重要。

接着,通过osr.SpatialReference对象定义目标坐标系,并使用ImportFromEPSG()方法设置EPSG代码,确保了转换后的数据能够在地理信息系统中正确显示。

此外,通过selectFields参数可以选择性地保留某些字段,而geometryType参数则定义了输出文件中的几何类型,这些选项使用户可以根据具体需求定制输出文件。

重投影选项reproject=True指示GDAL/OGR进行坐标系转换,这对于整合不同坐标系下的数据至关重要。

最后,通过dim参数可以控制输出数据的维度,例如仅保留X和Y坐标,这对于某些特定应用场景是必要的。这些步骤共同构成了一个完整的矢量数据转换流程,确保了数据的准确性和实用性。

具体代码如下:

from osgeo import ogr, gdal
from osgeo import osr
import os
def VectorTranslate(shapeFilePath,saveFolderPath,format="GeoJSON",accessMode=None,dstSrsESPG=4326,selectFields=None,geometryType="POLYGON",dim="XY",
):"""转换矢量文件,包括坐标系,名称,格式,字段,类型,纬度等。:param shapeFilePath: 要转换的矢量文件:param saveFolderPath: 生成矢量文件保存目录:param format: 矢量文件格式:param accessMode:None代表creation,'update','append','overwrite':param dstSrsESPG: 目标坐标系EPSG代码,4326是wgs84地理坐标系:param selectFields: 需要保留的字段列表如果都保留,则为None:param geometryType: 几何类型,"POLYGON","POINT"。。。:param dim: 新矢量文件坐标纬度,建议查阅官方API。:return:"""if os.path.exists(saveFolderPath) ==0:os.makedirs(saveFolderPath)ogr.RegisterAll()gdal.SetConfigOption("GDAL_FILENAME_IS_UTF8", "YES")data = ogr.Open(shapeFilePath)layer = data.GetLayer()spatial = layer.GetSpatialRef()layerName = layer.GetName()data.Destroy()dstSRS = osr.SpatialReference()dstSRS.ImportFromEPSG(int(dstSrsESPG))if format == "GeoJSON":destDataName = layerName + ".geojson"destDataPath = os.path.join(saveFolderPath, destDataName)elif format == "ESRI Shapefile":destDataName = os.path.join(saveFolderPath, layerName)flag = os.path.exists(destDataName)os.makedirs(destDataName) if not flag else NonedestDataPath = os.path.join(destDataName, layerName + ".shp")else:print("不支持该格式!")returnoptions = gdal.VectorTranslateOptions(format=format,accessMode=accessMode,srcSRS=spatial,dstSRS=dstSRS,reproject=True,selectFields=selectFields,layerName=layerName,geometryType=geometryType,dim=dim)gdal.VectorTranslate(destDataPath,srcDS=shapeFilePath,options=options)return destDataPath
if __name__ == '__main__':shapeFilePath = r'G:\\vector.shp'saveFolderPath = r'G:\\84'VectorTranslate(shapeFilePath,saveFolderPath,format="ESRI Shapefile",accessMode=None,dstSrsESPG=4326,selectFields=None,geometryType="POLYGON",dim="XY",)

在上述代码的主程序部分,我们指定了一个Shapefile文件路径和保存目录,并调用了 VectorTranslate 函数将其转换为ESRI Shapefile格式,并重新投影到WGS84坐标系。

在实际应用中,这段代码可以被用来批量处理大量的矢量数据文件,从而简化数据准备过程。例如,当需要将来自不同来源的Shapefile文件统一到一个标准坐标系中时,这样的脚本可以极大地提高工作效率。

http://www.yayakq.cn/news/381981/

相关文章:

  • 企业网站建设推广含义世界十大网站排名出炉
  • 限时抢购网站源码自己怎么建设手机网站首页
  • 公司让我做网站负责人织梦仿站
  • 公司免费网站建设山东君天建设工程有限公司网站
  • 品牌红酒的网站建设公司注册费用大概多少钱
  • 怎么做足球网站中国百强城市榜单
  • 旅游网站建设的市场分析wordpress手机版地址
  • 潍坊网站建设500住房和城乡建设部网站中国建造师网
  • 动态电商网站怎么做网站开发 制作
  • 上传网站模板建站网络科技有限公司属于什么行业
  • 永久免费网站虚拟主机建筑360网
  • 找个人制作网页的网站湛江海田网站建设招聘
  • 中国工程建设造价信息网站网站子域名
  • 安徽金开建设集团网站wordpress图片轮播插件下载
  • 做微博这样的网站吗公司网站建设的方案
  • 网站建设服务商城潮州网站搭建找谁
  • 优化手机网站池州有哪些做网站的
  • 呼市做引产z首大网站电子商务平台的自然人经营者
  • 多网合一网站wordpress怎么编辑网页
  • 网站开发 8g和16g怎么把自己的网站发布到网上
  • 1元购网站建设参考文献 教学网站建设
  • 商务网站建设设计结构内容做私人小网站赚钱吗
  • 网站维护学习网站建设的好处论文
  • seo 网站关键词wordpress 关闭伪静态
  • 企业网站内容是什么沈阳网站建设活动方案
  • 专门做高仿的网站赤峰市建设网站
  • 六安seo网站推广报价头条搜索
  • 网站上面的logo怎么做重庆专业seo
  • 网站建设要实现的目标做鞋子网站的域名
  • 北京做网站哪家公司好网站开发必用代码