如何从WorldWind的图层面板中隐藏(或删除)预先配置的图层

问题描述 投票:0回答:2

我想在层面板中隐藏“标准”层之一(例如,星星,大气层,美国航空航天局蓝色大理石等),并可视化并使我仅通过我添加的层进行勾选。自然,隐藏层必须始终处于活动状态。有可能吗?

java layer jogl worldwind
2个回答
0
投票

如果要以编程方式删除图层,请使用@sayyedbagher解决方案。另一个解决方案是通过提供一个包含初始设置(包括初始层)的xml文件来更改WorldWind的初始设置。根据此处gov.nasa.worldwind.Configurationhttps://worldwind.arc.nasa.gov/java/latest/javadoc/index.html?gov/nasa/worldwind/Configuration.html类文档以及此处worldwind.xml的文件https://github.com/nasa/World-Wind-Java/blob/master/WorldWind/src/config/worldwind.xml中的注释,您可以将自己的初始图层确定为应用程序中WorldWind的永久初始设置。


0
投票

您可以添加此方法。

private void removeLayerWithName(String str) {
    wwd.getModel().getLayers().forEach(layer -> {
        if (layer.getName().equals(str)) {
            wwd.getModel().getLayers().remove(layer);
            return;
        }
    });
}

并且在您的代码中,将其称为removeLayerWithName("Stars");

可能对您有用的其他层名称:

  • 星星
  • 大气
  • NASA蓝色大理石图像
  • 蓝色大理石2004年5月
  • i-cubed Landsat
© www.soinside.com 2019 - 2024. All rights reserved.