public IwxxmUpdater(/*InputSource source,*/ Model model, Environment env) throws JAXBException { this.iwxxmUnmarshaller = new IwxxmUnmarshaller(); // TODO: repair IwxxmUnmarshaller and others to include ALL object factories! this.unmarshaller = JAXBContext.newInstance( icao.iwxxm.ObjectFactory.class, net.opengis.sampling.ObjectFactory.class).createUnmarshaller(); //this.source = source; this.env = env; List<Layer> renderableLayers = model.getLayers().getLayersByClass(RenderableLayer.class); this.renderableLayer = ((RenderableLayer) renderableLayers.get(0)); }
private JPanel makeControlPanel() { final JPanel controlPanel = new JPanel(new GridLayout(2, 1, 5, 5)); controlPanel.setBorder(new EmptyBorder(15, 15, 15, 15)); final LayerList layerList = getWwd().getModel().getLayers(); for (Layer layer : layerList) { if (layer instanceof WWLayer) { final WWLayer wwLayer = (WWLayer) layer; final JPanel layerControlPanel = wwLayer.getControlPanel(getWwd()); controlPanel.add(layerControlPanel); } } return controlPanel; }
private void fill(WorldWindow wwd) { // Fill the layers panel with the titles of all layers in the world window's current model. for (Layer layer : wwd.getModel().getLayers()) { if (layer.getName().equalsIgnoreCase("Atmosphere") || layer.getName().equalsIgnoreCase("World Map") || layer.getName().equalsIgnoreCase("Scale bar") || layer.getName().equalsIgnoreCase("Compass")) continue; final LayerAction action = new LayerAction(layer, wwd, layer.isEnabled()); final JCheckBox jcb = new JCheckBox(action); jcb.setSelected(action.selected); this.layersPanel.add(jcb); if (defaultFont == null) { this.defaultFont = jcb.getFont(); } } }
public Product getSelectedProduct() { final LayerList layerList = getWwd().getModel().getLayers(); for (Layer layer : layerList) { if (layer instanceof WWLayer) { final WWLayer wwLayer = (WWLayer) layer; return wwLayer.getSelectedProduct(); } } return null; }
private static void insertTiledLayer(final WorldWindow wwd, final Layer layer) { int position = 0; final LayerList layers = wwd.getModel().getLayers(); for (Layer l : layers) { if (l instanceof PlaceNameLayer) { position = layers.indexOf(l); break; } } layers.add(position, layer); }
private LayerList getValidLayers() { final LayerList validLayers = new LayerList(); final LayerList allLayers = wwd.getModel().getLayers(); for (Layer l : allLayers) { if (l.getName().equalsIgnoreCase("Atmosphere") || l.getName().equalsIgnoreCase("World Map") || l.getName().equalsIgnoreCase("Scale bar") || l.getName().equalsIgnoreCase("Compass") || l.getName().equalsIgnoreCase("NASA Blue Marble Image")) continue; if (l.getName().equalsIgnoreCase("MS Bing Aerial")) virtualEarthAerialLayer = l; else if (l.getName().equalsIgnoreCase("MS Bing Roads")) virtualEarthRoadsLayer = l; else if (l.getName().equalsIgnoreCase("MS Bing Hybrid")) virtualEarthHybridLayer = l; validLayers.add(l); } return validLayers; }
/** * Updates the time of all timed renderables of a world window. */ @Override public Boolean call(LocalDateTime localDateTime) { if (null != localDateTime) { List<Layer> renderableLayers = this.picker.worldWindow.getModel().getLayers().getLayersByClass(RenderableLayer.class); for (Layer layer : renderableLayers) { for (Renderable renderable : ((RenderableLayer) layer).getRenderables()) { if (renderable instanceof TimedRenderable) { ((TimedRenderable) renderable).setTime(ZonedDateTime.of(localDateTime, ZoneId.of("UTC"))); } } } this.picker.worldWindow.redrawNow(); } return true; }
public void addLayerPanelLayer() { wwd.getModel().getLayers().add(new LayerPanelLayer(getWwd())); }
public void setProducts(final Product[] products) { WorldWindowGLCanvas wwd = getWwd(); final LayerList layerList = getWwd().getModel().getLayers(); layerList.stream().filter(layer -> layer instanceof WWLayer).forEach(layer -> { final WWLayer wwLayer = (WWLayer) layer; for (Product prod : products) { try { wwLayer.addProduct(prod, wwd); } catch (Exception e) { SnapApp.getDefault().handleError("WorldWind unable to add product " + prod.getName(), e); } } }); }
public void removeProduct(final Product product) { if (getSelectedProduct() == product) setSelectedProduct(null); final LayerList layerList = getWwd().getModel().getLayers(); layerList.stream().filter(layer -> layer instanceof WWLayer).forEach(layer -> { final WWLayer wwLayer = (WWLayer) layer; wwLayer.removeProduct(product); }); if (isVisible()) { getWwd().redrawNow(); } }
/** * Handles the input events to change the current threshold cost of * threshold renderables of a world window. */ @Override public void handle(InputEvent event) { List<Layer> renderableLayers = this.slider.worldWindow.getModel().getLayers().getLayersByClass(RenderableLayer.class); for (Layer layer : renderableLayers) { for (Renderable renderable : ((RenderableLayer) layer).getRenderables()) { if (renderable instanceof ThresholdRenderable) { ((ThresholdRenderable) renderable).setThreshold((int) this.slider.getValue()); } } } this.slider.worldWindow.redrawNow(); }
public void setSelectedProduct(final Product product) { if (product == getSelectedProduct() && eyePosition == getWwd().getView().getEyePosition()) return; final LayerList layerList = getWwd().getModel().getLayers(); layerList.stream().filter(layer -> layer instanceof WWLayer).forEach(layer -> { final WWLayer wwLayer = (WWLayer) layer; wwLayer.setSelectedProduct(product); }); if (isVisible()) { gotoProduct(product); getWwd().redrawNow(); eyePosition = getWwd().getView().getEyePosition(); } }
final LayerList layerList = m.getLayers(); for (Layer layer : layerList) { if (layer instanceof CompassLayer || layer instanceof WorldMapLayer || layer instanceof StarsLayer ||
final LayerList layerList = getWwd().getModel().getLayers();
final LayerList layerList = getWwd().getModel().getLayers(); Layer layer = layerList.getLayerByName("Products");