surfaceimages.java

来自「world wind java sdk 源码」· Java 代码 · 共 88 行

JAVA
88
字号
/*Copyright (C) 2001, 2006 United States Governmentas represented by the Administrator of theNational Aeronautics and Space Administration.All Rights Reserved.*/package gov.nasa.worldwind.examples;import gov.nasa.worldwind.formats.tiff.GeotiffImageReaderSpi;import gov.nasa.worldwind.geom.*;import gov.nasa.worldwind.layers.RenderableLayer;import gov.nasa.worldwind.render.*;import javax.imageio.spi.IIORegistry;import java.awt.*;import java.util.*;/** * @author tag * @version $Id$ */public class SurfaceImages extends ApplicationTemplate{    static    {        IIORegistry reg = IIORegistry.getDefaultInstance();        reg.registerServiceProvider(GeotiffImageReaderSpi.inst());    }    private static final String WWJ_SPLASH_PATH = "images/400x230-splash-nww.png";    private static final String GEORSS_ICON_PATH = "images/georss.png";    public static class AppFrame extends ApplicationTemplate.AppFrame    {        public AppFrame()        {            super(true, true, false);            try            {                SurfaceImage si1 = new SurfaceImage(GEORSS_ICON_PATH, new ArrayList<LatLon>(Arrays.asList(                    LatLon.fromDegrees(20d, -115d),                    LatLon.fromDegrees(20d, -105d),                    LatLon.fromDegrees(32d, -102d),                    LatLon.fromDegrees(30d, -115d)                    )));                SurfaceImage si2 = new SurfaceImage(WWJ_SPLASH_PATH, new ArrayList<LatLon>(Arrays.asList(                    LatLon.fromDegrees(35.705, -124.1156),                    LatLon.fromDegrees(33.9839, -120.3151),                    LatLon.fromDegrees(40.1274, -115.6251),                    LatLon.fromDegrees(42.0063, -119.6474)                    )));                Polyline boundary = new Polyline(si1.getCorners(), 0);                boundary.setFollowTerrain(true);                boundary.setClosed(true);                boundary.setPathType(Polyline.RHUMB_LINE);                boundary.setColor(new Color(0, 255, 0));                Polyline boundary2 = new Polyline(si2.getCorners(), 0);                boundary2.setFollowTerrain(true);                boundary2.setClosed(true);                boundary2.setPathType(Polyline.RHUMB_LINE);                boundary2.setColor(new Color(0, 255, 0));                RenderableLayer layer = new RenderableLayer();                layer.setName("Surface Images");                layer.setPickEnabled(false);                layer.addRenderable(si1);                layer.addRenderable(si2);                layer.addRenderable(boundary);                layer.addRenderable(boundary2);                insertBeforeCompass(this.getWwd(), layer);                this.getLayerPanel().update(this.getWwd());            }            catch (Exception e)            {                e.printStackTrace();            }        }    }    public static void main(String[] args)    {        ApplicationTemplate.start("World Wind Surface Images", SurfaceImages.AppFrame.class);    }}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?