⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 geographicsurfacetilerenderer.java

📁 world wind java sdk 源码
💻 JAVA
字号:
/*Copyright (C) 2001, 2006 United States Governmentas represented by the Administrator of theNational Aeronautics and Space Administration.All Rights Reserved.*/package gov.nasa.worldwind.render;import gov.nasa.worldwind.geom.*;import gov.nasa.worldwind.terrain.SectorGeometry;import java.util.*;/** * @author tag * @version $Id: GeographicSurfaceTileRenderer.java 8686 2009-01-31 04:16:25Z tgaskins $ */public class GeographicSurfaceTileRenderer extends SurfaceTileRenderer{    private double sgWidth;    private double sgHeight;    private double sgMinWE;    private double sgMinSN;    protected void preComputeTextureTransform(DrawContext dc, SectorGeometry sg, Transform t)    {        Sector st = sg.getSector();        this.sgWidth = st.getDeltaLonRadians();        this.sgHeight = st.getDeltaLatRadians();        this.sgMinWE = st.getMinLongitude().radians;        this.sgMinSN = st.getMinLatitude().radians;    }    protected void computeTextureTransform(DrawContext dc, SurfaceTile tile, Transform t)    {        Sector st = tile.getSector();        double tileWidth = st.getDeltaLonRadians();        double tileHeight = st.getDeltaLatRadians();        double minLon = st.getMinLongitude().radians;        double minLat = st.getMinLatitude().radians;        t.VScale = tileHeight > 0 ? this.sgHeight / tileHeight : 1;        t.HScale = tileWidth > 0 ? this.sgWidth / tileWidth : 1;        t.VShift = -(minLat - this.sgMinSN) / this.sgHeight;        t.HShift = -(minLon - this.sgMinWE) / this.sgWidth;    }    protected Iterable<SurfaceTile> getIntersectingTiles(DrawContext dc, SectorGeometry sg,        Iterable<? extends SurfaceTile> tiles)    {        ArrayList<SurfaceTile> intersectingTiles = null;        for (SurfaceTile tile : tiles)        {            if (!tile.getSector().intersects(sg.getSector()))                continue;            if (intersectingTiles == null) // lazy creation because most common case is no intersecting tiles                intersectingTiles = new ArrayList<SurfaceTile>();            intersectingTiles.add(tile);        }        return intersectingTiles; // will be null if no intersecting tiles    }}

⌨️ 快捷键说明

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