c# - 墨卡托投影和缩放

标签 c# mapping geolocation gis projection

http://wiki.openstreetmap.org/wiki/Mercator

通过上面链接中的 C# 示例,我能够将纬度/经度投影到 x/y 坐标。但是,我在缩放方面遇到了问题。我想知道投影后每个像素有多少长度(以英里为单位?)。我想在渲染为每英里 500 像素或类似值之前缩放 map 。

伙计们,真的没人回答这个问题吗?已经很久没有回答了。

最佳答案

像素的长度不会相同,这取决于您投影的地球区域。墨卡托保留角度,而不是长度。

http://en.wikipedia.org/wiki/Mercator_projection

查看 map - 与赤道相比,两极周围的区域按比例放大了。根据你想做什么,你最好使用标准化投影,比如 UTM。您应该检查您的 map 所来自的世界部分使用的是哪种投影。

另一种方法是对两个像素应用逆投影以获得地理坐标并测量它们之间的大圆距离。维基百科对此有更多信息,但通常涉及一些数学知识。

关于c# - 墨卡托投影和缩放,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3074693/

相关文章:

c# - 将 IAsyncResult 模式转换为任务

python - Pandas:通过将二维字典映射到另一个系列来创建系列

java - 正确映射 JPA 实体

java - 将 servlet 重定向到另一个 html 页面

android - 如何使用 ActivityRecognition API 检测转换中的变化?

javascript - Angular JS - 使用地理位置对集合进行排序

c# - 如何从文本中拆分电子邮件地址?

c# - 在 Entity Framework 中动态选择数据库

c# - 将 SQL Server Express 表迁移到 SQL Server 数据库

android - 将经纬度位置发送到谷歌地图