ArcGIS中的高斯(Gauss)与墨卡托(Mercator)投影
咱们国家使用的北京54或者西安80都是高斯克吕格投影(Gauss Kruger),但是ArcGIS用户使用栅格数据的时候可能会发现,每每给栅格定义北京54或者西安80坐标系统的时候,就会自动地变成User_Defined_Transverse_Mercator。
为什么会这样呢?
其实呢,UTM和高斯克吕格的投影方式特别像,并且欧美很多国家都是使用UTM,而不用高斯克吕格。所以很多国外的软件都没有高斯克吕格,只有UTM。ArcGIS的栅格数据起源很早,那时就是ArcGIS软件还不支持高斯克吕格的时代。后来可能是为了照顾像中国和俄罗斯这样使用高斯克吕格的国家,ArcGIS就添加了高斯克吕格投影方式。但是栅格本身早已经定型了,还是沿用老的套路,所以没法给栅格定义北京54或者西安80。
不过用户不要着急,栅格的User_Defined_Transverse_Mercator本质和北京54或西安80一样,只是名字不同而已!
首先,让我们来看看Gauss和Mercator到底有什么区别吧。
两者的投影方式基本相同,区别仅在于高斯克吕格是"等角横切圆柱投影",投影后中央经线保持长度不变,即比例系数为1;UTM投影是"等角横轴割圆柱投影",圆柱割地球于南纬80度、北纬84度两条等高圈,投影后两条割线上没有变形,中央经线上长度比0.9996。从计算结果看,两者主要差别在比例因子上,高斯-克吕格投影中央经线上的比例系数为1, 而UTM投影为0.9996。
所以呢,我们会发现,ArcGIS中矢量数据可以定义为以下西安80坐标系统:
但是对栅格数据定义同样的坐标系统就会自动地变成下面这样:
乍一看很怒啊,咋就定义不成西安80呢?息怒息怒。我们仔细看一下,其实两者是一样的,因为Scale_Factor都是1啊!高斯克吕格和UTM的差别就在于这个Scale_Factor,现在这个栅格,虽然坐标系统名称是User_Defined_Transverse_Mercator,但是Scale_Factor已经变成1了,也就是说,它的实质就是高斯克吕格投影!
尽管上述栅格和矢量的坐标系统实质是一样,但是由于其名称不同,在使用空间分析扩展模块进行一些操作的时候,还是会出现一些问题。比如,使用西安80的矢量作为掩膜来切割本质相同的User_Defined_Transverse_Mercator栅格时,就总会出错,问题就在于它们坐标系统的名称不同。晕哦~~~由于栅格的坐标系统没办法用Gauss Kruger的西安80的名字,所以解决方法只能是将矢量的坐标系统改得与栅格的坐标系统的名字一样。
PS:下面是一个UTM投影方式的坐标系统的说明,注意,Scale_Factor是0.9996。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理