需要一个客户端交互的2D世界地图:最好的地图包?或者最好的C ++图形/帆布库做一个?

StackOverflow https://stackoverflow.com/questions/331355

我需要,我会画四处移动的图标,文本和线条的世界的2D政治地图。用户将与地图互动,放置和移动所述图标,以及他们将在和缩小地图的放大。

在谷歌地图接口是不是从我所需要的很远,但是这不是网络有关;这是一个Windows MFC应用程序,我想谈一个C ++ API的地图,生活在该应用程序,而不是一个Web界面。理想情况下,我不希望有一个单独的服务器,或者说,任何服务器必须(在互联网上没有)本地运行。什么罐头地图包或图形库我应该用这样做呢?我没有图形编程经验。

这是严格的2D,所以我不认为像谷歌地球或世界风将是适当的。好矢量图形支持将降温,和位图的易拉丝是重要的。

所有罐头选择似乎卷筒纸定向。 SDL是所有我知道的灵活画布编程,但似乎使我自己的地图会是什么可能是一个常见的问题做了大量的工作。有什么更高的水平?也许有一种方法与Adobe Flash对象进行交互?我相当无能。

有帮助吗?

解决方案

也许: http://www.codeplex.com/SharpMap

ESRI MapObjects的 http://www.esri.com/software/mapobjects/index.html ESRI MapObjects的LT http://www.esri.com/software/mapobjectslt/index.html

请参阅 http://www.esri.com/software/mapobjectslt/about/mo_vs_lt。 HTML 用于两个MapObjects的的比较功能集。

ESRI可具有更换给MapObjects的库

其他提示

您可以通过使用术语GIS(地理信息系统)扩展您的搜索。我敢肯定,它会更容易些。有很多东西在那里关于这个问题的。

下面是一个页面,我发现: http://www.ucancode.net/Gis -source-Code.htm

或: http://opensourcegis.org/

您可能想尝试 Mapnik的C ++ / Python的GIS工具包

您可以看看在大理石的Widget ,这是KDE的大理石的一部分项目。有Windows二进制为此,太多,但他们可能会依赖于Qt的。

是,大理石还在于它提供了一种在单一控制一个现成的解决方案的优势(称为Qt的技术术语“小部件”)。

(这是唯一的依赖BTW)

Qt的依赖性也可能被视为一个优势:Qt的即将到来的版本是LGPL许可,所以即使你打算在一个专有的应用程序中使用这个话,应该不会是任何真正的忧虑。当然,Qt和大理石是跨plattform,并提供了一个API,非常直观,容易理解。不同于常见的GIS解决方案的大理石API和部件的用法比较注重的人谁不知道关于GIS。所以它的使用是很容易理解,即使你觉得在地理信息系统使用的技术术语害怕。

大理石提供几个接口编程:

可以创建自己的大理石插件和内线的或你也可以继承的MarbleWidget控制。对于一个简单的HelloWorld应用程序参见:

http://techbase.kde.org/Projects/Marble/MarbleCPlusPlus

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top