RenderableObject是WorldWind中所有需要渲染的对象的父类,继承了接口IRenderable和Icomparable。其派生类体系如下所示。RenderableObject的成员如下所示。

RenderableObjectList也继承自RenderableObject。

接口Irenderable内部仅仅定义下面三个接口,分别用来初始化、更新和渲染:

void Initialize(DrawArgs drawArgs);

void Update(DrawArgs drawArgs);

void Render(DrawArgs drawArgs);

枚举类型RenderPriority指定各种可渲染元素的优先级,优先级高的元素优先被渲染。

public enum RenderPriority

{

SurfaceImages = 0,

TerrainMappedImages = 100,

AtmosphericImages = 200,

LinePaths = 300,

Icons = 400,

Placenames = 500,

Custom = 600

}

可渲染对象类RenderableObject包含的主要的字段、属性和方法如下:

public bool isInitialized;//该可渲染对象是否已经初始化,如果是接下来可以渲染了

public bool isSelectable;//是否可被用户选择

public RenderableObjectList ParentList;//该对象所从属的可渲染对象列表父节点

public string dbfPath = "";//Shapefile的DBF信息路径

public bool dbfIsInZip = false;//Shapefile的DBF信息是否在压缩包中

protected string name;//该可渲染对象的名字

protected string m_description = null;//该可渲染对象的描述字符串

protected Hashtable _metaData = new Hashtable();//存储该对象元数据的哈希表

protected Vector3 position;//该可渲染对象的位置

protected Quaternion orientation;//该可渲染对象的方向

protected bool isOn = true;//是否显示或隐藏该可渲染对象

protected byte m_opacity = 255; //该可渲染对象的不透明度

protected RenderPriority m_renderPriority = RenderPriority.SurfaceImages;//该可渲染对象默认的渲染优先级

protected Form m_propertyBrowser;//该可渲染对象的属性浏览窗体

string m_thumbnail;//该可渲染对象的指纹影像路径

protected Image m_thumbnailImage;//该可渲染对象的指纹影像

protected string m_iconImagePath;//该可渲染对象的icon影像路径

protected Image m_iconImage;//该可渲染对象的icon影像

protected World m_world;//该可渲染对象所从属的星球对象

该类所包含的方法都比较简单,就不再赘述。

WorldWind源码剖析系列:可渲染对象类RenderableObject的更多相关文章

  1. WorldWind源码剖析系列:表面影像类SurfaceImage

    表面影像类SurfaceImage描述星球类(如地球)表面纹理影像.该类的类图如下. 表面影像类SurfaceImage包含的主要的字段.属性和方法如下: string m_ImageFilePath ...

  2. WorldWind源码剖析系列:影像存储类ImageStore、Nlt影像存储类NltImageStore和WMS影像存储类WmsImageStore

    影像存储类ImageStore 影像存储类ImageStore提供了计算本地影像路径和远程影像影像URL访问的各种接口,是WmsImageStore类和NltImageStore类的基类.当划分完层次 ...

  3. WorldWind源码剖析系列:表面瓦片类SurfaceTile

    表面瓦片类SurfaceTile描述星球类(如地球)表面纹理影像的瓦片模型.其类图如下. 表面瓦片类SurfaceTile包含的主要的字段.属性和方法如下: int m_Level;//该瓦片所属金字 ...

  4. WorldWind源码剖析系列:绘制参数类DrawArgs

    绘制参数类DrawArgs主要对绘制时需要的对象如:设备对象Microsoft.DirectX.Direct3D.Device.Microsoft.DirectX.Direct3D.Font字体对象. ...

  5. WorldWind源码剖析系列:影像图层类ImageLayer

    影像图层类ImageLayer 影像图层类ImageLayer将单张影像作为纹理映射到星球表面上去.源影像必须是平面笛卡尔坐标系.该类的类图如下. 影像图层类ImageLayer提供的主要字段.属性和 ...

  6. WorldWind源码剖析系列:下载请求类DownloadRequest

    下载请求类DownloadRequest是各种下载请求的抽象基类,先派生出网络下载请求类WebDownloadRequest,再派生出地理空间下载请求类GeoSpatialDownloadReques ...

  7. WorldWind源码剖析系列:数学引擎类MathEngine

    PluginSDK中的MathEngine类是密封类.不可继承,主要完成通用的数学计算功能.由于按平面展开层层划分,所以在WW里用到一个row,col的概念,类MathEngine封装了从行/列到经/ ...

  8. WorldWind源码剖析系列:四叉树瓦片类QuadTile

    四叉树瓦片类QuadTile提供了对影像和地形数据的四叉树访问模型.该类的类图如下. 四叉树瓦片类QuadTile提供的主要字段.属性和方法简要描述如下: public QuadTileSet Qua ...

  9. WorldWind源码剖析系列:网络下载类WebDownload

    网络下载类WebDownload封装了对请求的瓦片进行网络下载的相关操作.该类使用了两个委托类型和一个枚举类型. 该类的类图如下. 网络下载类WebDownload各个字段和属性的含义说明如下: st ...

  10. WorldWind源码剖析系列:地形瓦片类TerrainTile和地形瓦片服务类TerrainTileService

    地形瓦片类TerrainTile 用来抽象封装用户漫游中所请求的地形瓦片数据类型. 地形瓦片服务类TerrainTileService提供了从BIL(Binary Interleaved by Lin ...

随机推荐

  1. 深入浅出Mybatis技术原理与实战(杨开振)(带详细书签) PDF 下载 高清 完整版+源码

    (杨开振) 源码 IDE eclipse 建表语句也在里面 电子书+源码地址

  2. SPOJ7001(SummerTrainingDay04-N 莫比乌斯反演)

    Visible Lattice Points Consider a N*N*N lattice. One corner is at (0,0,0) and the opposite one is at ...

  3. 洛谷P3313 [SDOI2014]旅行(树链剖分 动态开节点线段树)

    题意 题目链接 Sol 树链剖分板子 + 动态开节点线段树板子 #include<bits/stdc++.h> #define Pair pair<int, int> #def ...

  4. 高德地图 JS API - 根据经纬度获取周边建筑地标

    像我们经常用的微信或微博,发表动态时都有选择位置的功能,根据当前的定位获取附近的地标.利用高德地图我们就可以实现这样的功能. 1. 具体代码: // 高德地图查询周边 function aMapSea ...

  5. Android 投射工具和录屏工具

    前言 写博客,难免需要上传手机截图或者是Gif文件,分享两个常用的工具 GifCam GifCam,一个简单的 屏幕录制工具,可以实现Gif的录制编辑和保存 Total Control Total C ...

  6. DrawerLayout建立侧滑时,显示侧滑页面,底层页面仍可以有点击响应,解决办法。

    第一感觉是下层仍有焦点,解决办法应该是侧方页面出现后,下层页面的焦点改为false,应该是动态去改变焦点的状态,但是不知道如何去实现. 然后再网上找到实现方法,感谢:http://blog.csdn. ...

  7. Adobe Flash Builder 4.6 打开时提示Failed to create the Java Virtual Machine

    最近使用actionscript来编程,用到Adobe Flash Builder 工具,之前一直用着都没事的,今天打开突然就报了这个错误,然后就打不开了 好了,不多说,直接来吧. 首先在你的Adob ...

  8. 【jdk源码3】HashMap源码学习

    可以毫不夸张的说,HashMap是容器类中用的最频繁的一个,而Java也对它进行优化,在jdk1.7及以前,当将相同Hash值的对象以key的身份放到HashMap中,HashMap的性能将由O(1) ...

  9. Java 装饰器模式详解

    转载请注明出处:http://blog.csdn.net/zhaoyanjun6/article/details/56488020 前言 在上面的几篇文章中,着重介绍了Java 中常见的 IO 相关知 ...

  10. 团队项目个人进展——Day10

    一.昨天工作总结 冲刺第十天,与小组成员任务合并,并解决结合后的一些问题. 二.遇到的问题 界面还是不太和谐 三.今日工作规划 对页面的布局.wxss做了一些修改