支持光栅图像的免费 G​​IS 库的建议

发布于 2024-10-08 19:38:11 字数 1153 浏览 5 评论 0原文

我对整个 GIS 领域还很陌生,我即将制作一个小程序,该程序基本上将 GPS 轨迹与一些其他注释一起叠加在地图上。我主要需要允许扫描(因此光栅)地图(尽管从长远来看支持正确的地图格式和 OpenStreetmap 之类的东西会很好)。

我的第一个探索性程序使用 Qt 的图形视图框架,并通过简单地将 GPS 点投影到上面来覆盖它们校准点处 WGS84 椭球体的切平面。这提供了一半的准确性,而且实际上看起来不错。但后来我开始想知道。为了获得我需要的精度(即删除“一半”中的“一半”),我必须纠正地图投影。虽然数学本身不是问题,但支持许多地图投影感觉像是不必要的工作。尽管一些预测可能就足够了,但我开始考虑使用类似 PROJ.4 的东西图书馆来做我的预测。但既然如此,为什么不一路走下去呢?也许我也可以使用成熟的地图库,例如 Mapnik (编辑:Quantum GIS 看起来也非常好),当我开始想要更多奇特的注释或其他一些特征性症状时,这可能会得到回报。

最后,回答这个问题:会做什么?您会使用成熟的地图库吗?如果有,是哪一个?同样,重要的是它支持使用(以及放大和缩小)栅格地图并具有漂亮的叠加功能。或者您会保持简单,并使用 Qt 自己的图形视图框架以及 PROJ.4 之类的东西来处理地图投影?我很感激任何反馈!

一些技术细节:我正在使用基于 Qt 的 GUI 用 C++ 编写,所以我更喜欢与这些 GUI 配合得相对较好的东西。此外,该库必须是自由软件(如 FOSS),并且至少具有良好的跨平台性(至少是 GNU/Linux、Windows 和 Mac)。

编辑:好吧,看来我在问这个问题之前没有做足够的研究。 量子 GISMapnik 似乎非常适合我的目的。前者尤其如此,因为它基于 Qt。

I'm quite new to the whole field of GIS, and I'm about to make a small program that essentially overlays GPS tracks on a map together with some other annotations. I primarily need to allow scanned (thus raster) maps (although it would be nice to support proper map formats and something like OpenStreetmap in the long run).

My first exploratory program uses Qt's graphics view framework and overlays the GPS points by simply projecting them onto the tangent plane to the WGS84 ellipsoid at a calibration point. This gives half-decent accuracy, and actually looks good. But then I started wondering. To get the accuracy I need (i.e. remove the "half" in "half-decent"), I have to correct for the map projection. While the math is not a problem in itself, supporting many map projection feels like needless work. Even though a few projections would probably be enough, I started thinking about just using something like the PROJ.4 library to do my projections. But then, why not take it all the way? Perhaps I might aswell use a full-blown map library such as Mapnik (edit: Quantum GIS also looks very nice), which will probably pay off when I start to want even more fancy annotations or some other symptom of featuritis.

So, finally, to the question: What would you do? Would you use a full-blown map library? If so, which one? Again, it's important that it supports using (and zooming in and out with) raster maps and has pretty overlay features. Or would you just keep it simple, and go with Qt's own graphics view framework together with something like PROJ.4 to handle the map projections? I appreciate any feedback!

Some technicalities: I'm writing in C++ with a Qt-based GUI, so I'd prefer something that plays relatively nicely with those. Also, the library must be free software (as in FOSS), and at least decently cross-platform (GNU/Linux, Windows and Mac, at least).

Edit: OK, it seems I didn't do quite enough research before asking this question. Both Quantum GIS and Mapnik seem very well suited for my purpose. The former especially so since it's based on Qt.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

笑脸一如从前 2024-10-15 19:38:11

请参阅 GDAL www.gdal.org,了解用于栅格格式和操作的可靠背景库,并且它包含用于转换的 PROJ.4。

QGIS 依赖 GDAL 进行一些数据导入等。

See GDAL www.gdal.org for a solid background library for raster formats and manipulation, and it incorporates PROJ.4 for transformations.

QGIS relies on GDAL for some data import, amongst other things.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文