1、主要内容主要内容三维可视化基础三维可视化基础1三维地形可视化三维地形可视化2地形可视化应用地形可视化应用3三维坐标系三维坐标系三维坐标系三维坐标系世界坐标系世界坐标系物体坐标系物体坐标系投影变换投影变换把三维物体变为二维图形表示的过程称为投影变换。正平行变换正平行变换 投影方向垂直于投影平面的投影称为正平行投影,我们通常所说的三视图均属于正平行投影。透视投影透视投影 透视投影的视线(投影线)是从视点(观察点)出发,视线是不平行的。不平行于投影平面的视线汇聚的一点称为灭点,在坐标轴上的灭点叫做主灭点。主灭点数和投影平面切割坐标轴的数量相对应。按照主灭点的个数,透视投影可分为一点透视、二点透视和三
2、点透视。坐标变换坐标变换 实际上,从三实际上,从三维空间到二维平面,就维空间到二维平面,就如同用相机拍照一样,如同用相机拍照一样,通常都要经历以下几个通常都要经历以下几个步骤步骤 (括号内表示的(括号内表示的是相应的图形学概念):是相应的图形学概念):第一步,将相机置第一步,将相机置于三角架上,让它对准于三角架上,让它对准三维景物(视点变换,三维景物(视点变换,Viewing Viewing TransformationTransformation)。)。第二步,将三维物第二步,将三维物体放在适当的位置(模体放在适当的位置(模型变换,型变换,Modeling Modeling Transfor
3、mationTransformation)。)。坐标变换坐标变换 第三步,选择相第三步,选择相机镜头并调焦,使三维物机镜头并调焦,使三维物体投影在二维胶片上(投体投影在二维胶片上(投影变换,影变换,Projection Projection TransformationTransformation)。)。第四步,决定二维像第四步,决定二维像片的大小(视口变换,片的大小(视口变换,Viewport Viewport TransformationTransformation)。)。这样,一个三维空间这样,一个三维空间里的物体就可以用相应的里的物体就可以用相应的二维平面物体表示了,也二维平面物体表示
4、了,也就能在二维的电脑屏幕上就能在二维的电脑屏幕上正确显示了。正确显示了。三维渲染图元三维渲染图元顶点法向量顶点法向量 3D中使用顶点法向量顶点法向量计算光源和表面间的夹角,对多边形进行着色。平面正方向平面正方向 3D中每个面有一个垂直的法向量。该向量的方向由定义面顶点的顺序及坐标系统是左手系还是右手系决定。表面法向量从表面上指向正向面那一侧,如果把表面水平放置,正向面朝上,背向面朝下,那么表面法向量为垂直于表面从下方指向上方,这个就是平面正方向平面正方向光照光照 一般三维引擎光照模型将光归纳为两类:环境光和直射光。一般三维引擎光照模型将光归纳为两类:环境光和直射光。 环境光,和自然界中的一样
5、,没有实际的方向和光源,只有颜环境光,和自然界中的一样,没有实际的方向和光源,只有颜色和光强色和光强 。它给各处提供一个较低级别的光强。它给各处提供一个较低级别的光强 。 直射光是场景中的光源产生的光,它总是具有颜色和强度,并直射光是场景中的光源产生的光,它总是具有颜色和强度,并沿特定的方向传播。沿特定的方向传播。 直射光类型:点光源、聚光灯和平行光直射光类型:点光源、聚光灯和平行光材质材质 材质表现了物体表面对灯光的反射属性。在材质表现了物体表面对灯光的反射属性。在D3DD3D和和OpenGLOpenGL中材质还有一个自发光属性中材质还有一个自发光属性Emissive Emissive ,它
6、用,它用来描述物体自身发出的光的颜色和透明度的。来描述物体自身发出的光的颜色和透明度的。纹理纹理 计算机图形学中,纹理指的是一张表示物体表面细计算机图形学中,纹理指的是一张表示物体表面细节的位图。节的位图。拾取拾取 三维应用程序中,拾取算法的思想很简单:得到鼠标点击三维应用程序中,拾取算法的思想很简单:得到鼠标点击处的屏幕坐标,通过投影矩阵和观察矩阵把该坐标转换为通过处的屏幕坐标,通过投影矩阵和观察矩阵把该坐标转换为通过视点和鼠标点击处的一条射入场景的光线,该光线如果与场景视点和鼠标点击处的一条射入场景的光线,该光线如果与场景模型的三角形相交,则获取该相交三角形的信息。模型的三角形相交,则获取
7、该相交三角形的信息。渲染缓冲区渲染缓冲区 一个设备对象至少包含两个显示缓存区:当前缓存区(一个设备对象至少包含两个显示缓存区:当前缓存区(Front BufferFront Buffer)和后备缓存区(和后备缓存区(Back BufferBack Buffer),前者可以看成),前者可以看成Direct3DDirect3D窗口的映射。窗口的映射。 当我们渲染图形时,实际上并不是直接在窗口上输出,而是在后备缓当我们渲染图形时,实际上并不是直接在窗口上输出,而是在后备缓存区上绘图。渲染完毕后,交换两个缓存区,使原来的后备缓存区变成当存区上绘图。渲染完毕后,交换两个缓存区,使原来的后备缓存区变成当前
8、缓存区,从而实现窗口刷新,如上图所示。快速重复此过程,就会在屏前缓存区,从而实现窗口刷新,如上图所示。快速重复此过程,就会在屏幕上形成连续的动画。幕上形成连续的动画。地形可视化地形可视化 传统的地学分析图形中,三维地形立体图通常传统的地学分析图形中,三维地形立体图通常是用一组经投影变换的剖面线或网线构造的,图形是用一组经投影变换的剖面线或网线构造的,图形简单,内容单一,缺乏实体感,实用价值受到限制。简单,内容单一,缺乏实体感,实用价值受到限制。而三维地形模型的动态显示是区域地形等多种要素而三维地形模型的动态显示是区域地形等多种要素三维景观的综合体现,具有信息丰富、层次分明、三维景观的综合体现,
9、具有信息丰富、层次分明、真实感强的特点。真实感强的特点。 我们可通过获取地形等高线及地表属性多边形我们可通过获取地形等高线及地表属性多边形等信息,采用适当的内插拟合方法,生成真实描述等信息,采用适当的内插拟合方法,生成真实描述实际地表特征的数字高程模型,并用栅格化技术建实际地表特征的数字高程模型,并用栅格化技术建立相应的描述区域地表类型的属性栅格,经透视投立相应的描述区域地表类型的属性栅格,经透视投影变换和属性叠加后,采用恰当的消隐处理和光照影变换和属性叠加后,采用恰当的消隐处理和光照模型进行显示,再现区域的三维地形形态,取得真模型进行显示,再现区域的三维地形形态,取得真实、鲜明、直观的图像效
10、果。实、鲜明、直观的图像效果。Dem数据组织数据组织 DEMDEM库采用金字塔结构存放多种空间分辨率的地形数据,同一分辨率库采用金字塔结构存放多种空间分辨率的地形数据,同一分辨率的栅格数据被组织在一个层面内,而不同分辨率的地形数据具有上下的垂的栅格数据被组织在一个层面内,而不同分辨率的地形数据具有上下的垂直组织关系:越靠近顶层,数据的分辨率越小,数据量也越小,只能反映直组织关系:越靠近顶层,数据的分辨率越小,数据量也越小,只能反映原始地形的概貌;越靠近底层,数据的分辨率越大,数据量也越大,更能原始地形的概貌;越靠近底层,数据的分辨率越大,数据量也越大,更能反映原始地形详情反映原始地形详情。数据
11、分块调度数据分块调度 在内存中用一块存储区作为数据缓冲区,由于数据缓冲区的大小有一定限制,在进行数据存取时只能将部分数据读入,操作过程中需要进行数据的“部分装入”和“部分对换”,这种数据交换技术称为缓冲管理。 由于受到目前操作系统处理数据量的限制由于受到目前操作系统处理数据量的限制, ,存在存在于于DEMDEM库中的海量地形数据不可能全部常驻内存。鉴库中的海量地形数据不可能全部常驻内存。鉴于内外存的数据交换非常耗时,为了尽量减少数据库于内外存的数据交换非常耗时,为了尽量减少数据库中的数据存取,需要针对三维地形可视化的特点对空中的数据存取,需要针对三维地形可视化的特点对空间对象进行缓冲管理。间对
12、象进行缓冲管理。视域范围计算视域范围计算层次细节模型层次细节模型工作原理工作原理 视点离物体近时,能观察到的模型细节丰富;视点远离模型时,观视点离物体近时,能观察到的模型细节丰富;视点远离模型时,观察到的细节逐渐模糊。系统绘图程序根据一定的判断条件,选择相应的察到的细节逐渐模糊。系统绘图程序根据一定的判断条件,选择相应的细节进行显示,从而避免了因绘制那些意义相对不大的细节而造成的时细节进行显示,从而避免了因绘制那些意义相对不大的细节而造成的时间浪费,同时有效地协调了画面连续性与模型分辨率的关系。间浪费,同时有效地协调了画面连续性与模型分辨率的关系。Level of Detail: 一种实时三维
13、计算机图形技术,最先由Clark于1976年提出。常见层次细节模型常见层次细节模型四叉树四叉树: 递归地将地形分割成小的区块来逼近真实地形。递归地将地形分割成小的区块来逼近真实地形。常见层次细节模型常见层次细节模型实时的最优自适应网格(实时的最优自适应网格(ROAMROAM): 在对地形进行三维显示时在对地形进行三维显示时, ,依据视点的位置和视线的方向等多依据视点的位置和视线的方向等多种因素,对于表示地形表面的三角形片元进行一系列的基于三角种因素,对于表示地形表面的三角形片元进行一系列的基于三角形二叉剖分分裂与合并,最终形成和原始表面近似且无缝无叠的形二叉剖分分裂与合并,最终形成和原始表面近
14、似且无缝无叠的简化连续三角化表面。简化连续三角化表面。 左邻接区左邻接区右邻接区右邻接区顶点顶点左子树左子树右子树右子树中点中点右顶点右顶点左顶点左顶点底部邻接区域底部邻接区域Lever=1Lever=11 1Lever=2Lever=22 23 37 7Lever=3Lever=34 45 56 6地形裂缝地形裂缝裂缝的产生:裂缝的产生: 在建立地表模型时,如果只是单纯孤立地绘制各个分块,而在建立地表模型时,如果只是单纯孤立地绘制各个分块,而不考虑它们之间的联系,那么就会出现块间的不考虑它们之间的联系,那么就会出现块间的“裂痕裂痕”现象。现象。产生原因:产生原因: 相邻分块在公共边上的处理方
15、式不一致。相邻分块在公共边上的处理方式不一致。 视觉平滑视觉平滑 模型层次切换时,采用几何形状过渡方法形成视模型层次切换时,采用几何形状过渡方法形成视觉的光滑过渡觉的光滑过渡 , ,即将新增点随视点的拉近从起始位置即将新增点随视点的拉近从起始位置逐渐移动到最终位置。逐渐移动到最终位置。层次细节模型示例层次细节模型示例动态层次细节模型的不足动态层次细节模型的不足 遍历整个场景遍历整个场景地形数据的预处理,地形数据的预处理,时间开销较大。时间开销较大。 实时漫游存储原始的实时漫游存储原始的地形数据、各个层次简化地形数据、各个层次简化因子以及层次间的相互关因子以及层次间的相互关系,空间开销较大。系,
16、空间开销较大。 参与绘制参与绘制的三角形具体数的三角形具体数量难以估算。量难以估算。 视点视点所在区域所在区域地形较为地形较为平坦时,平坦时,影响视觉影响视觉效果。效果。 矢量叠加操作缺乏准确的高程依据。矢量叠加操作缺乏准确的高程依据。 LOD地形可视化流程地形可视化流程DEM高程点高程点建立几何模型建立几何模型透视变换透视变换光照模型计算光照模型计算模型输出模型输出隐藏线面的消除隐藏线面的消除纹理贴图纹理贴图2.1.2 静止三维图像静止三维图像地形可视化应用地形可视化应用三维景观三维景观地形可视化应用地形可视化应用水文流域分析水文流域分析地形可视化应用地形可视化应用环境监测分析环境监测分析地形可视化应用地形可视化应用三维地质分析三维地质分析地形可视化应用地形可视化应用数字城市和虚拟现实数字城市和虚拟现实City ModelDOMDEMDLGAttribute RDB
侵权处理QQ:3464097650--上传资料QQ:3464097650
【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。