有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

OpenLayers的api Java等价物

我正在寻找一个Java库来显示来自各种来源的地图数据,包括shapefile、WMS、WFS、Google Maps,可能还有ArcIMS等等。看起来OpenLayers是最接近我想要的东西,除了它是一个JavaScript库,我正在编写一个Swing应用程序

GDAL看起来很有希望,但据我所知,在未来的“某个时候”之前不会有Java绑定

为了清楚起见,我正在寻找一个Java API,可以用来显示来自多个地图服务器/源的地图

有人知道这样的事情是否存在吗?如果不存在,我们该怎么办?我应该在GeoTools之上构建这个API吗?或者


共 (6) 个答案

  1. # 1 楼答案

    GeoTools是一个很好的选择。GoogleMapsTerms of Service禁止访问GoogleMaps互动程序,除非通过(JavaScript)GoogleMaps API,因此您不太可能在Java应用程序中找到免费可用的代码库来访问它们。类似的限制可能适用于其他商业层

  2. # 2 楼答案

    请尝试使用mapscript for java www.mapserver。组织机构

    特写

  3. # 3 楼答案

    OpenMap应该相当不错

    警告:他们使用的“开放”许可证由Fedora和GNU提供

  4. # 4 楼答案

    在这种情况下,你有很多选择。 GeoTools确实是一个低级库,对于一些实际工作来说是一个很好的选择。为了制作教程more visual,我们最近开始在示例代码中使用Swing。也就是说,它们只是教程代码,并不代表uDig这样的多线程系统

    如果您正在寻找Swing应用程序从表单开始,那么就有Jump系列(遗憾的是,它分散在一个封闭的开发过程中,OpenJump代表了各种分支的集合)、gvSig,它在Span中具有出色的财务支持,等等

    您可能还希望查看deegree项目的库端(我似乎还记得它还生成了一个桌面应用程序?)

    我还建议查看Nasa世界风和开放街道地图数据集周围制作的一些平铺地图查看器。这些将更类似于OpenLayers的体验

    免责声明我是GeoTools和uDig指导委员会成员

  5. # 5 楼答案

    如果您可以在RCP框架内工作,uDig可能会很好地满足您的需求。我没有uDig或NASA World Wind的任何经验,但如果您需要在现有应用程序中添加地图功能,NASA's World Wind Java SDK是另一种选择。它是可扩展的,支持地理空间数据的行业标准。他们有一个信息丰富的维基。我第一次看到NASA World Wind是在2007年的JavaOne上,它看起来不像Java SDK真的起飞了,也不像。Net版本有很多新版本,但如果它们是基本的,它可以满足您的需要

  6. # 6 楼答案

    我使用了MapXtreme for Java,它非常好,支持多种格式。它不便宜,但却能交货

    它面向呈现矢量数据格式

    您可以在服务器端或客户端使用它