1、地球模型Earth(Globle):这个球并不会画出来,它的作用就是提供椭球体模型的参数,然后计算出变换矩阵,这样以来,顶点数据通过这样的变换就能以球体的模式加以显示了!

2、图层:

常用的图层类包括TiledImageLayer,MercatorTiledImageLayer,还有RenderableLayer。前两个图层主要用来加载地图服务,WMS,WMTS等,RenderableLayer的作用主要是绘制图形,物体!

所以,我们的任务分为两大部分:加载地图服务和绘制图形要素!

一、加载地图服务

加载服务的关键在于生成正确的url,然后发出相应的请求,因为是切片服务,需要设置层级(makeLevels),然后生成url(URLBuilder),解决问题的重点在于查看实际发出的请求,对于WMS服务,会先发出getCapabilities的请求,然后再发出getMap的请求。

二、绘制图形要素

关键部分为layer,render,symbol。

render中包含了要绘制的基本要素,点(Point),线(Polyline),面(Polygon)等!

测试用例

import java.util.Arrays;
import gov.nasa.worldwind.geom.Position;
import gov.nasa.worldwind.layers.RenderableLayer;
import gov.nasa.worldwind.render.BasicShapeAttributes;
import gov.nasa.worldwind.render.Material;
import gov.nasa.worldwind.render.Polygon;
import gov.nasa.worldwind.render.ShapeAttributes;
import gov.nasa.worldwind.util.BasicDragger;
import gov.nasa.worldwindx.examples.ApplicationTemplate;public class MyPolygon extends ApplicationTemplate
{protected static class AppFrame extends ApplicationTemplate.AppFrame{protected static final String SURFACE_POLYGON_IMAGE_PATH = "gov/nasa/worldwindx/examples/images/georss.png";public AppFrame(){// Add a basic dragger to the World Window's select listeners to enable shape dragging.this.getWwd().addSelectListener(new BasicDragger((this.getWwd())));// Create a layer of shapes to drag.   this.makeShapes();}protected void makeShapes(){RenderableLayer layer = new RenderableLayer();layer.setName("Polygon");//  polygon over china.ShapeAttributes attrs = new BasicShapeAttributes();attrs.setOutlineMaterial(Material.RED);attrs.setInteriorOpacity(0.5);attrs.setOutlineOpacity(0.8);attrs.setOutlineWidth(3);attrs.setImageSource(SURFACE_POLYGON_IMAGE_PATH);attrs.setImageScale(0.5);attrs.setInteriorMaterial(Material.YELLOW);double originLat = 38;double originLon = 120;Iterable<Position> positions = Arrays.asList(Position.fromDegrees(originLat + 5.0, originLon + 2.5, 100),Position.fromDegrees(originLat + 5.0, originLon - 2.5,100),Position.fromDegrees(originLat + 2.5, originLon - 5.0,100),Position.fromDegrees(originLat - 2.5, originLon - 5.0,100),Position.fromDegrees(originLat - 5.0, originLon - 2.5,100),Position.fromDegrees(originLat - 5.0, originLon + 2.5,100),Position.fromDegrees(originLat - 2.5, originLon + 5.0,100),Position.fromDegrees(originLat + 2.5, originLon + 5.0,100),Position.fromDegrees(originLat + 5.0, originLon + 2.5,100));Polygon polygon = new Polygon(positions);polygon.setAttributes(attrs);layer.addRenderable(polygon);insertBeforeCompass(this.getWwd(), layer);}}public static void main(String[] args){ApplicationTemplate.start("World Wind Dragging Shapes", AppFrame.class);}
}

3.8关于向WorldWind地球模型添加图层相关推荐

  1. 部分样式在360和ie上不能显示_Adobe Photoshop添加图层样式全方面介绍

    PS基础学习第六期 图层样式详解 图层样式是指图形图像处理软件Photoshop中的一项图层处理功能,是后期制作图片以期达到预定效果的重要手段之一. 图层样式的功能强大,能够简单快捷地制作出各种立体投 ...

  2. arcgis-“一个或多个已经添加图层的范围与关联空间参考不一致”“Arcmap不能绘制一个或者多个图层”

    arcgis添加图层时,显示"一个或多个已经添加图层的范围与关联空间参考不一致",或者将数据导出shp文件,然后将该shp文件添加至图层时提示"Arcmap不能绘制一个或 ...

  3. Mapwingis添加图层,实现label

    //********************************************************************************** //有机会下载安装了mapwi ...

  4. 使用openlayer添加图层

    需求 项目开发使用openlayer  给map对象添加图层示例 代码示例 1.引入 import ol from "openlayers" 2.创建地图对象 this.mapOn ...

  5. VB.net 调用添加图层实现AutoCad增加图层的代码效果

    ''调用添加图层的指令<CommandMethod("AddLayer")>Public Sub AddLayer()Dim db As Database = Host ...

  6. rhinopython批量添加图层

    表格数据 如图,在excel表格里有如下的文件,五列分别为图层序号.R.G.B.颜色,现在我们要建立十个图层,每个图层的名称从1到10,颜色对应序号,分别为黄色.绿色.青色- 最终效果 主要方法 让我 ...

  7. ArcGIS教程:如何向地图中添加图层

    每个图层都会引用存储在地理数据库.coverage.shapefile 和栅格等中的数据集.向地图中添加图层很简单,只需选择某个数据集并将其从目录 或搜索 窗口拖到地图中,或者使用添加数据按钮即可添加 ...

  8. arcgis vue 添加图层优化_行业 | ArcGIS制图技巧(超全)

    ↑ 点击上方「中国测绘学会」 可快速关注我们 地理信息系统(Geographic Information System或 Geo-Information system,GIS)有时又称为"地 ...

  9. GIS添加图层、查询详细

    GIS图层查询详细信息 撰写时间:2019年1月16日星期三 作者:邓李庆 下面我来展示一下简单的查询图层详细信息 首先我们要创建一个地图的对象,添加LayerSwitcher控件map : 获取图层 ...

最新文章

  1. 保证同一个账号同时只能在一个设备上登录
  2. 【大数据】如何用形象的比喻描述大数据的技术生态?Hadoop、Hive、Spark 之间是什么关系?
  3. android dialog 结构,Android 原生Dialog实现
  4. 【dfs】【拓扑排序】组合树
  5. Python—“helloworld”
  6. C#异或运算符的使用【C#】
  7. 企业办公自动化系统_OA系统的核心功能有哪些?分析当下OA系统的缺陷以及相关解决方案...
  8. Linux服务器之间传输文件 scp命令
  9. 作为 Web 开发人员我踩过哪些技术的坑?
  10. SLAM学习笔记 - ORB_SLAM2源码运行及分析
  11. Hibernate的缓存机制
  12. 腾讯云,体验万象优图鉴黄服务
  13. 问题解决:pdf打不开,出现Acrobat failed to connect to a DDE server问题
  14. Java电商平台-电商订单系统全解析
  15. 如何在Oracle数据库中使用dbms_output输出内容
  16. 天池大赛:街景字符编码识别——Part2:数据读取与数据扩增
  17. Hyperopt的使用
  18. linux系统认证中级是什么,目前国内常见的几种Linux认证及其所需价格
  19. 深度揭秘腾讯云新一代企业级HTAP数据库TBase核心概念
  20. Win11WSA无法启动的解决办法

热门文章

  1. 数字电路46( 倒T型电阻网络的数模转换器)
  2. 一次百度0.1元年费VIP的购买体验
  3. c语言入门经典第五版自学,C语言入门经典(第5版) PDF扫描[103MB]
  4. 【TSCH概述/CONTIKI】
  5. SpringBoot集成Swagger2、Swagger2和Swagger3的区别Swagger的注解学习
  6. ajax文件上传重置,通过ajax上传文件时的ERR_CONNECTION_RESET
  7. 驾照换证需要哪些手续呢
  8. OpenLayers之 OverLay问题汇总
  9. SAS|where keep rename
  10. python基础-猜数游戏