Geometry 使用世界文件和地图图像从纬度/经度转换为笛卡尔坐标

Geometry 使用世界文件和地图图像从纬度/经度转换为笛卡尔坐标,geometry,gis,geospatial,Geometry,Gis,Geospatial,我有一个java小程序,允许用户从本地系统导入jpeg和world文件。然后,用户可以在导入的图像上单击“绘制线”。每条线的每个端点都包含一组X/Y和Lat/Long值。XY是标准java坐标空间,小程序使用仿射变换计算世界文件来确定画布上每个点的纬度/长度 我有一个要求,允许用户在文本字段中键入距离,并使用箭头键从屏幕上的单个选定点向上、下、左、右的特定方向绘制一条线。我知道如何确定给定源lat/long、距离和方位的点的lat/long 因此,用户在文本字段中键入100并按向右箭头键,应在距

我有一个java小程序,允许用户从本地系统导入jpeg和world文件。然后,用户可以在导入的图像上单击“绘制线”。每条线的每个端点都包含一组X/Y和Lat/Long值。XY是标准java坐标空间,小程序使用仿射变换计算世界文件来确定画布上每个点的纬度/长度

我有一个要求,允许用户在文本字段中键入距离,并使用箭头键从屏幕上的单个选定点向上、下、左、右的特定方向绘制一条线。我知道如何确定给定源lat/long、距离和方位的点的lat/long

因此,用户在文本字段中键入100并按向右箭头键,应在距离当前选定点100英尺的右侧绘制一条线

我的问题是我不知道如何将以英尺为单位的距离转换为以像素为单位的距离。这将告诉我在哪里绘制点。

tCarbruce, 你说得对。我需要的是逆变换算法。因为我使用java,所以我能够用java.awt.AffineTransform对象替换我自己制作的转换算法,该对象具有逆变换函数

这似乎解决了我的问题


谢谢

我想您肯定您的用户总是上传lat/lon wgs84投影中的光栅图像?因为在这种情况下,可以设置固定的坐标变换


如果你考虑过用其他投影对其他来源的图像进行数字化,你可能想看看开源GooTooLoo::/P>因为你知道目的地的LAT/Load,听起来你需要应用你的仿射变换的逆来从那个地理点转换成像素空间中的点。是吗?是的,这是一个公司环境,我们有一个特定的过程,让用户上传世界文件和匹配的jpg文件。感谢这个链接,我已经看到了这个API,虽然它看起来可能会有所帮助,但我正在处理一些可能与它不完全兼容的遗留库,我希望避免大规模的重新设计。