#python 坐标转换 以CGCS2000转WGS84为例

这里写自定义目录标题

项目场景:

cesium加载WGS84坐标系,而计算软件中使用的是CGCS2000坐标,在python中实现坐标转换,后生成geojson用于web端展示


解决:

python中引入:

from pyproj import Transformer
from pyproj import CRS

代码:
其中:
EPSG:4326 -->WGS84
EPSG:4479 -->CGCS2000 meter
EPSG:4490 -->CGCS2000 degree
from_wkt后是.prj格式文件中的坐标信息内容,可以查找相应文件

# crs_CGCS2000 =CRS.from_epsg(4479)    #meter#这两个都不行
# crs_CGCS2000=CRS.from_epsg(4490)    #degree#这两个都不行
crs_CGCS2000=CRS.from_wkt('PROJCS["CGCS_2000_3_Degree_GK_CM_114E",GEOGCS["GCS_China_Geodetic_Coordinate_System_2000",DATUM["D_China_2000",SPHEROID["CGCS2000",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Gauss_Kruger"],PARAMETER["False_Easting",500000.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",114.0],PARAMETER["Scale_Factor",1.0],PARAMETER["Latitude_Of_Origin",0.0],UNIT["Meter",1.0]]')    #degree
crs_WGS84=CRS.from_epsg(4326)
from_crs = crs_CGCS2000
to_crs = crs_WGS84
transformer = Transformer.from_crs(from_crs, to_crs)
new_x,new_y = transformer.transform(x,y)	#new_x,new_y即为转换后的坐标,也可以分别使用数组

x,y也可以用以下形式

x = (1,2,3,4)
x = [1,2,3,4]
y = (1,2,3,4)
y = [1,2,3,4]

评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值