这是可能的,你只需要两点的位置。如果面积足够小,您不必担心平面倾斜或地球是圆的。
假设您在地图坐标中有两个点 X1,Y1 和 X2,Y2(如果您有扫描的地图,像素就可以。或毫米。或其他)。
在这两个点中,您还知道 UTM 中的坐标,并将它们设为 x1,y1 和 x2,y2。
从这些信息中,您可以得出从 UTM 更改为地图所需的旋转和缩放,反之亦然。
此时,如果您知道地图坐标 X3、Y3 的任何其他点,则可以计算其 UTM 坐标。
假设 X 和 Y 轴具有相同的 UTM 参考方向(为此,您需要管理旋转,这更复杂 - 涉及一点三角函数),
x2-x1 = Zx * (X2-X1)
x3-x1 = Zx * (X3-X1)
因此
Zx = (X2-X1)/(x2-x1)
x3 = x1 + Zx * (X3-X1)
最后
x3 = x1 + (X3-X1)*[ (X2-X1)/(x2-x1) ]
(在您确定两个点的位置后,方括号中的部分不会改变 - 这将是一种校准常数)。
y3 和 Y3 也是如此。请注意,Y 轴可能与 y 具有相反的符号。
对于非常小的区域,您可以将纬度和经度转换为任意单位,考虑 1 度等于 60 分钟,1 分钟等于 60 秒,1 秒等于 1000 毫秒。然后从纬度(或经度)转换为毫秒。你得到的数字意义不大——你不知道“毫秒”是什么——但是一旦你计算出,比如以毫秒为单位的 x3,你就可以把它恢复为经度而忘记毫秒;并且该经度将是可用的并且大致正确。如果你离你的两点不远;如果你不把它们拉得太远。一个大商场还可以,一个城市……不太好。
该算法非常基本,我预计很快就会被一群愤怒的制图师和数学家私刑处死(这是我应得的),但对于允许将地球视为局部平坦的小区域,它可能会起作用。