从 WorldWind Java 中删除默认 WMS 层

Posted

技术标签:

【中文标题】从 WorldWind Java 中删除默认 WMS 层【英文标题】:Remove Default WMS Layer From WorldWind Java 【发布时间】:2018-01-04 22:52:10 【问题描述】:

如何从基本 WorldWind Java 应用程序中删除默认 WMS 层?如果我这样删除它,我的应用程序仍在尝试访问公共 WorldWind WMS 服务器:

import gov.nasa.worldwind.Model;

Model testModel = new BasicModel();
testModel.getLayers().clear(); // Makes default geo invisible, but still queries server in background.

// Add my own layers, here

【问题讨论】:

现在,我使用的是 .getLayers().clear()。我不确定 Javadoc(对此保持沉默),但我认为 clearList() 清除了 AVList 中的属性,并且层列表完全不同。 【参考方案1】:

哇哦-谢谢你提醒我旧爱!

但是,关于您的问题: 如果您想完全离线工作,请使用属性 gov.nasa.worldwind.avkey.OfflineMode (找到答案here)

如果您想删除单个图层,请查看配置文件夹。 config/worlwind.layers.xml 包含图层配置,只需将您不想使用的图层注释掉即可。 使用标准构建时,该文件夹位于 worldwind.jar 中,但您可以指定不同的位置 - 请查看 Configuration 类以了解如何执行此操作。

那里还有另一个有趣的文件,DataFileStore.xml,它允许您定义缓存位置。如果您在在线时用您感兴趣的区域填充缓存,则在离线模式下也将使用此数据。曾经也有可用的缓存包,但似乎这些不再可用了。

我认为还有一个工具可以选择区域并将数据下载到缓存中以进行离线模式。

玩得开心!

【讨论】:

以上是关于从 WorldWind Java 中删除默认 WMS 层的主要内容,如果未能解决你的问题,请参考以下文章

WorldWind Java Google Earth Like Zoom

我想从我自己的服务器而不是 java worldwind 中的 nasa 服务器获取数据

worldwind java 文档和设置说明

Worldwind 服务器不显示在 OpenLayers 3 中

WORLDWIND:如何使用度分和米从一个坐标到另一个坐标画线

Java NASA Worldwind 多边形与内部边界