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))
相关推荐
杨杨杨大侠6 小时前
Jev、Kev、Laya:决策模型怎么选,什么时候需要微调?
人工智能·python·agent
LOVE️YOU7 小时前
Python 在定义函数时,究竟定义的是什么?
python
段一凡-华北理工大学7 小时前
大模型应用开发 100 天:Python + LLM 从入门到精通 day26~Prompt 调试与优化——A/B 测试与效果评估
windows·python·大模型·prompt·智能体·提示词工程·高炉智能化
Minecraft红客7 小时前
以撒的结合
python·游戏·电脑·娱乐
Circ.7 小时前
Python 调试 Litellm 本地大模型接口:模型列表与对话接口实操踩坑记录
开发语言·python
风早爽太8 小时前
用 ‌Render‌ 快速部署网站和常见问题解决
python·fastapi
李航19839 小时前
给自己的图形引擎,配上了AI渲染,做设计真是太方便了
人工智能·python·计算机视觉·ai·ai编程
L@ncor9 小时前
第六章 框架开发实践 · 学习笔记(AutoGen / AgentScope / CAMEL / LangGraph)
python·框架·autogen·langgraph·agentscope
Zhou1411369 小时前
SpringSecurity_02_授权与高级功能
开发语言·python
摇滚侠11 小时前
《On Java 中文版 基础卷》阅读笔记 对象无处不在 03
java·笔记·python