python 对不同坐标系之间坐标点转换

不同坐标系下,点的转换函数。以备查阅

python 复制代码
# -*- coding:utf-8 -*-
# 定义坐标转换函数
import pandas as pd
import pyproj

WGS84= r"GEOGCS[\"WGS 84\",DATUM[\"WGS_1984\",SPHEROID[\"WGS 84\",6378137,298.257223563,AUTHORITY[\"EPSG\",\"7030\"]],AUTHORITY[\"EPSG\",\"6326\"]],PRIMEM[\"Greenwich\",0],UNIT[\"degree\",0.0174532925199433],AUTHORITY[\"EPSG\",\"4326\"]]"


EPSG4549 = r'PROJCS["CGCS2000_3_Degree_GK_CM_120E",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",120.0],PARAMETER["Scale_Factor",1.0],PARAMETER["Latitude_Of_Origin",0.0],UNIT["Meter",1.0]]'


Test = 'PROJCS["CGCS2000_3_Degree_GK_CM_120E",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",120.0],PARAMETER["Scale_Factor",1.0],PARAMETER["Latitude_Of_Origin",0.0],UNIT["Meter",1.0],AUTHORITY["EPSG",4549]]'
# def convert_to_cgcs2000(lat, lon):
def convert_to_cgcs2000(lon,lat):
    # transformer = pyproj.Transformer.from_crs("epsg:4326", "epsg:4521", always_xy=True)
    # transformer = pyproj.Transformer.from_crs("epsg:4326", "epsg:4543", always_xy=True)
    # transformer = pyproj.Transformer.from_crs(WGS84, CGCS2000_3_120, always_xy=True)
    transformer = pyproj.Transformer.from_crs(WGS84, Test, always_xy=True)
    cgcs2000_lon, cgcs2000_lat = transformer.transform(lon, lat)
    return cgcs2000_lat, cgcs2000_lon


if __name__ == '__main__':
    Lng = 120.557994
    Lat = 24.292394
    cgcs2000_lat, cgcs2000_lon = convert_to_cgcs2000(Lng,Lat)
    print("Lng:{},Lat:{},cgcs2000_lat:{}, cgcs2000_lon:{}".format(Lng,Lat,cgcs2000_lat, cgcs2000_lon))
相关推荐
赢乐40 分钟前
大模型学习笔记:检索增强生成(RAG)架构
人工智能·python·深度学习·机器学习·智能体·幻觉·检索增强生成(rag)
浪里行舟3 小时前
你的品牌正在被AI“遗忘”?用BuildSOM找回搜索的下一个风口
人工智能·python·程序员
码界筑梦坊3 小时前
120-基于Python的食品营养特征数据可视化分析系统
开发语言·python·信息可视化·数据分析·毕业设计·echarts·fastapi
logo_284 小时前
Xpath语法规则的学习和使用
javascript·python·xpath·xpath语法
快乐江湖4 小时前
「层层包装」—— 装饰器模式
开发语言·python·装饰器模式
m0_702036535 小时前
mysql如何通过索引减少行锁范围_mysql索引与加锁逻辑
jvm·数据库·python
用户0332126663675 小时前
使用 Python 设置 Word 文档文本的颜色
python
qxwlcsdn5 小时前
如何用 IndexedDB 存储从 API 获取的超大列表并实现二级索引
jvm·数据库·python
小新同学^O^5 小时前
简单学习 --> 模型微调
开发语言·人工智能·python·模型微淘
2301_809244535 小时前
C#怎么使用协变和逆变 C#泛型中的in和out关键字协变逆变是什么意思怎么用【语法】
jvm·数据库·python