在 JavaFX 中绘制二维地图

Drawing 2D maps in JavaFX

我目前正在处理一个项目,该项目使用 json 包含点和多边形的文件。

所有输入数据都是 Lat/Lon 格式。我希望在地图上绘制这些(应该能够平移)。我能够在 JavaFx 窗格或 Canvas 上绘制这些对象。

问题是两个坐标之间的数据线是直线,但实际上应该遵循立体投影。

我查看了 ArcGis 和其他 GeoTools,但这些工具都建立在瓷砖地图上,而我的项目不需要这些东西。

您必须创建我们称之为 LineDrawer 的东西。首先,您必须确定要使用的线型。标准线型是 great-circle、斜线和直线。其次,您必须定义要使用的投影。所以如果你现在想在两点 A 和 B 之间画一条线,你必须把它分成足够小的部分,并根据你选择的线型的公式计算中间点,然后你必须将这些点投影到你的绘图窗格中. 但这基本上是每个 GIS 软件都可以为您做的,您不必 re-invent 这里的方向盘。