WorldWindow用户定制控件类中所包含的的挂件类Widgets控件主要有如下图所示的派生类。它们的类图如下所示。

鉴于挂件类Widgets及其派生类,相对简单,基本上都是些利用DirectX3D进行绘图和处理图标纹理影像等的操作,此处不再对各个类的主要的字段、属性和方法进行描述了。感兴趣的读者可以直接阅读源码。建议阅读源码之前读者应具备一定的DirectX3D开发基础。

挂件PictureBox类被WavingFlags、TimeController等插件引擎子类所引用。

挂件ButtonWidget、ControlWidget、 TextBox、CompassWidget和LabelWidget并未被任何其它类所引用。

挂件Scrollbar和TextLabel被WavingFlags插件引擎子类所引用。而枚举型Alignment被WavingFlags、TextLabel等类所引用。

挂件搜集类子类FormWidget被Compass3D、ScaleBarLegend、TimeController和WavingFlags等插件引擎子类所引用。而枚举类WidgetEnums被挂件搜集类子类FormWidget所引用。

挂件搜集类子类PanelWidget并未被任何其它类所引用。

挂件搜集类子类的根挂件类RootWidget被DrawArgs、WorldWindow等类所引用。

挂件搜集类子类SimpleTreeNodeWidget和TreeNodeWidget并未被任何其它类所引用。

PictureBox、RootWidget、TextBox、TextLabel、Form、Utilities.、WidgetCollection、LayerManager(已注释)等类在PluginSDK工程以及PluginSDK工程的Widgets文件夹下面两处都包含。

WorldWind源码剖析系列:挂件类Widgets的更多相关文章

  1. WorldWind源码剖析系列:星球类World

    星球类World代表通用的星球类,因为可能需要绘制除地球之外的其它星球,如月球.火星等.该类的类图如下. 需要说明的是,在WorldWind中星球球体的渲染和经纬网格的渲染时分别绘制的.经纬网格的渲染 ...

  2. WorldWind源码剖析系列:星球球体的加载与渲染

    WorldWind源码剖析系列:星球球体的加载与渲染 WorldWind中主函数Main()的分析 在文件WorldWind.cs中主函数Main()阐明了WorldWind的初始化运行机制(如图1所 ...

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

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

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

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

  5. WorldWind源码剖析系列:星球表面渲染类WorldSurfaceRenderer

    星球表面渲染类WorldSurfaceRenderer描述如何渲染星球类(如地球)表面影像纹理.该类的类图如下. 星球类World包含的主要的字段.属性和方法如下: public const int ...

  6. WorldWind源码剖析系列:设置类SettingsBase

    PluginSDK中的星球设置类WorldSettings 和WorldWind.程序设置类WorldWindSettings均继承自父类SettingsBase.类图如下所示.其中父类Setting ...

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

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

  8. WorldWind源码剖析系列:窗口定制控件类WorldWindow

    在WorldWindow定制控件是从Control类派生出来的,需要自己操纵GDI+绘制所需要的界面效果,这种自定义控件比较耗费精力,需要比较深厚的GDI+和DirectX 3D开发功底.(区别于用户 ...

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

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

随机推荐

  1. HDU5840(SummerTrainingDay08-B 树链剖分+分块)

    This world need more Zhu Time Limit: 12000/6000 MS (Java/Others)    Memory Limit: 65536/65536 K (Jav ...

  2. Code Signal_练习题_firstDigit

    Find the leftmost digit that occurs in a given string. Example For inputString = "var_1__Int&qu ...

  3. python-装饰器模式

    源码地址:https://github.com/weilanhanf/PythonDesignPatterns 说明: 有时为了给某个对象而不是给整个类添加一个功能,使用继承机制是添加功能的一个有效途 ...

  4. 【代码笔记】iOS-TableViewOfTwoSecton

    一,效果图. 二,工程图. 三,代码. RootViewController.h #import <UIKit/UIKit.h> @interface RootViewController ...

  5. css 给inline和inline-block元素设置margin和padding

    经过简单的测试,行内元素或者行内块元素的maring-left,margin-right,padding-left,padding-right都是可以正常表现的,下面来看一下剩下的margin-top ...

  6. C# 如何防止重放攻击

    重放攻击 重放攻击是指黑客通过抓包的方式,得到客户端的请求数据及请求连接,重复的向服务器发送请求的行为. 比如你有一个 “购买” 的操作,当你点击购买按钮时,向服务器发送购买的请求.而这时黑客对你的请 ...

  7. 自定义适用于手机和平板电脑的 Dynamics 365(二):窗体自定义项

    适用于手机的 Dynamics 365 和 适用于平板电脑的 Dynamics 365 使用窗体作为 Web 应用. 窗体在应用程序中的显示方式为移动体验进行了优化. 下图显示了从 Web 应用程序到 ...

  8. 安卓开发实用技巧:TextView预览

    背景: 使用TextView时,为了方便在开发工具中预览效果,需要在TextView中设置文字(如:android:text="Hello World"),但是等到后面提交时,为了 ...

  9. 对C#Chart控件使用整理

    转:https://blog.csdn.net/andrewniu/article/details/78770186 https://blog.csdn.net/andrewniu/article/d ...

  10. PHP的数据加密解密

    本文出至:新太潮流网络博客 /** * [对数据进行加密] * @E-mial wuliqiang_aa@163.com * @TIME 2017-04-07 * @WEB http://blog.i ...