摘要: PluginSDK中的星球设置类WorldSettings 和WorldWind。程序设置类WorldWindSettings均继承自父类SettingsBase。类图如下所示。其中父类SettingsBase内嵌了枚举型LocationType,子类WorldSettings的定义文件中附带了定义... 阅读全文
posted @ 2015-06-04 00:18 rainbow70626 阅读(309) 评论(0) 推荐(0) 编辑
摘要: 经纬度格网类LatLongGrid继承自可渲染对象类RenderableObject,是WorldWind中用来在星球外表绘制经纬度格网的封装类。其类图如下所示。绘制经纬网格的主体函数为Render(),其内部主要调用以下函数完成绘制:ComputeGridValues()//计算格网值Render... 阅读全文
posted @ 2015-06-02 22:56 rainbow70626 阅读(918) 评论(0) 推荐(0) 编辑
摘要: 相机基类CameraBase PluginSDK中的相机类CameraBase是三维计算机图形学中的概念。观察者在三维场景中漫游时,通过眼睛看到的场景和相机拍摄过程非常一致。实际上,Direct3D和OpenGL都是先通过对现实世界中的场景先进行世界变换,再通过设置观察矩阵以在场景中安置一个虚拟相... 阅读全文
posted @ 2015-05-31 22:19 rainbow70626 阅读(1163) 评论(0) 推荐(0) 编辑
摘要: PluginSDK中的Quaternion4d类可能是感觉Microsoft.DirectX. Quaternion类不太实用或不够用,自己有重新写的。四元数是英国数学家哈密顿(W.R.Hamilton)在1843年发现的,由于矩阵论的不断丰富和不断完善,人们更乐意采用矩阵来解决实际工程中的问题,这... 阅读全文
posted @ 2015-05-31 22:15 rainbow70626 阅读(682) 评论(0) 推荐(0) 编辑
摘要: PluginSDK中的视景体类Frustum是三维计算机图形学中的概念,主要用来描述透视投影的过程。三维计算机图形学中关于三维物体的渲染,Direct3D和OpenGL都是先通过对现实世界中的场景先进行世界变换,再通过设置观察矩阵以在场景中安置一个虚拟相机,构建一个视景体来裁剪场景的可见区域,然后在... 阅读全文
posted @ 2015-05-31 22:13 rainbow70626 阅读(856) 评论(0) 推荐(0) 编辑
摘要: PluginSDK中的外包围盒、外包围球分别用类 BoundingBox和BoundingSphere描述,其类图如下所示。外包围盒BoundingBox类的corners字段用来存储外包围盒的8个顶点向量。其构造函数有两种形式。第一种构造函数用8个顶点向量来实例化一个外包围盒。第二种构造函数用给定... 阅读全文
posted @ 2015-05-31 22:11 rainbow70626 阅读(476) 评论(0) 推荐(0) 编辑
摘要: PluginSDK中的角度结构体Angle类图如下所示。角度结构体主要定义了一个弧度表示角度值的字段:double Radians。还有几个表示角度最大值、最小值、非数值和零角度等字段。定义了一个Degrees属性,分别用数学引擎类的弧度和角度相互转换函数完成Radians字段值的设置与获取。pub... 阅读全文
posted @ 2015-05-31 22:10 rainbow70626 阅读(475) 评论(0) 推荐(0) 编辑
摘要: PluginSDK中的MathEngine类是密封类。不可继承,主要完成通用的数学计算功能。由于按平面展开层层划分,所以在WW里用到一个row,col的概念,类MathEngine封装了从行/列到经/纬度值的转换,这也是WW进行纹理贴图的依据。划分后的每个方格对应一块512X512的,对应Level 阅读全文
posted @ 2015-05-31 22:09 rainbow70626 阅读(623) 评论(0) 推荐(0) 编辑
摘要: PluginSDK中的点主要有二维和三维两种类型,分别用来描述平面和立体点。其类图如下。这两个类比较简单。其字段成员主要用来描述点对象在各坐标轴上的分量。属性Length用来返回二维和三维点的距离坐标原点的长度。二维点定义了点积运算dot,三维点同时定义了点积dot/dotProduct和叉积运算c... 阅读全文
posted @ 2015-05-31 22:08 rainbow70626 阅读(540) 评论(0) 推荐(0) 编辑
摘要: PluginSDK中的枚举型主要有以下这些: public enum AltitudeMode//高度模式枚举 { ClampedToGround,//强制到地面模式 RelativeToGround, //相对到地面模式 Absolute//绝对高度模式 } public enum Units//... 阅读全文
posted @ 2015-05-31 22:06 rainbow70626 阅读(241) 评论(0) 推荐(0) 编辑