三维可视化基础.ppt

上传人:豆**** 文档编号:59794636 上传时间:2022-11-13 格式:PPT 页数:62 大小:5.59MB
返回 下载 相关 举报
三维可视化基础.ppt_第1页
第1页 / 共62页
三维可视化基础.ppt_第2页
第2页 / 共62页
点击查看更多>>
资源描述

《三维可视化基础.ppt》由会员分享,可在线阅读,更多相关《三维可视化基础.ppt(62页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、三维可视化基础三维可视化基础l三维可视化基础知识三维可视化基础知识l地形可视化地形可视化l三维地形可视化应用三维地形可视化应用3D3D可视化基本概念可视化基本概念三维可视化引擎三维可视化引擎三维可视化渲染流程三维可视化渲染流程三维可视化基础三维可视化基础世界坐标系物体坐标系把三维物体变为二维图形表示的过程称为投影变换。投影变换的分类情况如下表所示:正平行投影透视投影 实际上,从三维空实际上,从三维空间到二维平面,就如同间到二维平面,就如同用相机拍照一样,通常用相机拍照一样,通常都要经历以下几个步骤都要经历以下几个步骤 (括号内表示的是相应(括号内表示的是相应的图形学概念):的图形学概念):第一

2、步,将相机置第一步,将相机置于三角架上,让它对准于三角架上,让它对准三维景物(视点变换,三维景物(视点变换,Viewing Viewing TransformationTransformation)。)。第二步,将三维物第二步,将三维物体放在适当的位置(模体放在适当的位置(模型变换,型变换,Modeling Modeling TransformationTransformation)。)。第三步,选择相机镜第三步,选择相机镜头并调焦,使三维物体投头并调焦,使三维物体投影在二维胶片上(投影变影在二维胶片上(投影变换,换,Projection Projection TransformationTr

3、ansformation)。)。第四步,决定二维像第四步,决定二维像片的大小(视口变换,片的大小(视口变换,Viewport Viewport TransformationTransformation)。)。这样,一个三维空间这样,一个三维空间里的物体就可以用相应的里的物体就可以用相应的二维平面物体表示了,也二维平面物体表示了,也就能在二维的电脑屏幕上就能在二维的电脑屏幕上正确显示了。正确显示了。3D3D颜色表达颜色表达3D引擎一般采用红(R)、绿(G)、蓝(B)和阿尔法(A)描述颜色,并将它们合成,产生最终颜色。R、G、B、A称之为颜色通道,其中A描述了色彩的透明度属性。表达颜色的Bit即色

4、深决定了颜色的表现力和丰富程度。OpenGL采用float精度也就是4个字节表现一个颜色通道,而Direct3D采用Byte精度也就是1个字节表现一个颜色通道。不断增大的色深是3D颜色表达的大势所趋。顶点颜色顶点颜色顶点法向量、平面正方向顶点法向量、平面正方向3D中使用顶点法向量顶点法向量计算光源和表面间的夹角,对多边形进行着色 3D中每个面有一个垂直的法向量。该向量的方向由定义面顶点的顺序及坐标系统是左手系还是右手系决定。表面法向量从表面上指向正向面那一侧,如果把表面水平放置,正向面朝上,背向面朝下,那么表面法向量为垂直于表面从下方指向上方,这个就是平面正方向平面正方向一般三维引擎光照模型将

5、光归纳为两类:一般三维引擎光照模型将光归纳为两类:环境光和直射光环境光和直射光环境光,和自然界中的一样,没有实际的方向和光源,只有颜色环境光,和自然界中的一样,没有实际的方向和光源,只有颜色和光强和光强 。它给各处提供一个较低级别的光强。它给各处提供一个较低级别的光强 直射光是场景中的光源产生的光,它总是具有颜色和强度,并沿直射光是场景中的光源产生的光,它总是具有颜色和强度,并沿特定的方向传播。特定的方向传播。直射光类型:直射光类型:点光源、聚光灯和平行光点光源、聚光灯和平行光 着色模式着色模式用于控制渲染多边形的着色模式完全影响到渲染结果。着色模式决定多边形表面上任意一点上颜色的强度和光照计

6、算方式材质表现了物体表面对灯光的反射属性材质表现了物体表面对灯光的反射属性。在。在D3DD3D和和OpenGLOpenGL中中材质还有一个自发光属性材质还有一个自发光属性EmissiveEmissive ,它用来描述物体自身,它用来描述物体自身发出的光的颜色和透明度的。发出的光的颜色和透明度的。颜色成员为颜色成员为R:1.0,G:1.0,B:1.0,A:1.0R:1.0,G:1.0,B:1.0,A:1.0的材质会反射所有的入的材质会反射所有的入射光。同样,成员为射光。同样,成员为R:0.0,G:1.0,B:0.0,A:1.0R:0.0,G:1.0,B:0.0,A:1.0的材质会反射的材质会反射

7、所有入射的绿光。具有多重反射系数值(所有入射的绿光。具有多重反射系数值(DiffuseDiffuse、SpecularSpecular、等等)的材质可以创建不同类型的效果等等)的材质可以创建不同类型的效果 。除了除了SpecularSpecular属性,其余每个属性都用一个属性,其余每个属性都用一个RGBARGBA颜色描述,颜色描述,表示该材质对某一给定类型光的红、绿和蓝成分的反射度,表示该材质对某一给定类型光的红、绿和蓝成分的反射度,以及一个阿尔法混合因子以及一个阿尔法混合因子RGBARGBA颜色的颜色的A A。材质效果图材质效果图雾雾计算机图形学中,纹理指的是一张表示物体表面细节计算机图形

8、学中,纹理指的是一张表示物体表面细节的位图。的位图。纹理映射:纹理映射:纹理坐标纹理坐标纹理压缩纹理压缩越真实的场景就要求纹理的数量越多,质量越高,这对系统带宽和显存负担很大,因此自然想到对纹理进行压缩纹理压缩算法:color_2=(2*color_0+color_1+1)/3;color_3=(color_0+2*color_1+1)/3;MIP-MAPMIP-MAP纹理映射纹理映射引擎用来减少纹理内存和带宽需求的另外一个技术就是 MIPMIPMAPMAP。MIP 映射技术通过预先处理纹理,产生它的多个拷贝纹理,每个相继的拷贝是上一个拷贝大小的1/4。使用 MIP-MAPMIP-MAP,还可

9、以有效解决纹理走样问题。相比最初来说,单一纹理映射已给整个3D真实感图形带来很大的不同,但使用多重纹理甚至可以达到一些更加令人难忘的效果。多重纹理映射填充模式填充模式拾取拾取三维应用程序中,拾取算法的思想很简单:得到鼠标点击处的屏幕坐标,通过投影矩阵和观察矩阵把该坐标转换为通过视点和鼠标点击处的一条射入场景的光线,该光线如果与场景模型的三角形相交,则获取该相交三角形的信息。Front Buffer and Back BufferFront Buffer and Back Buffer 在3D环境中,每个像素中会利用一组数据资料用来定义像素在显示时的纵深充(即Z轴座值)在Z BUFFER所用的位

10、数越高,则代表该显示卡所提供的物体纵深感也越精确。一般的3D加速卡仅能支持到16位或24位的Z BUFFER,对于普通的3D模型而言也算是足够了,不过高级的3D卡更可支持到32位的Z BUFFER。对一个含有很多物体连接的较复杂3D模型而言,能拥有较多位数来表现深度感是相当重要的事情。例如一台500公尺长的飞机,其管线之间仅相距5公分的距离,2-bitZBUFFER将无法提供足够的精确性让我们从某些视角能清楚地辨别二条管线的前后顺序。当显示卡尝试要显示这二条管线时,它会试着一次将二个同时显示出来,因而产生令人讨厌的闪烁现象。若使用的32位的Z BUFFER就能避免闪烁现象发生。Z Buffer

11、Z BufferOpenGLOpenGL(Open Graphics Library)是以SGI公司的GL三维图形库为基础制定的一个通用共享的开放式三维图形标准。从软件的角度讲,它就是一个开放的针对于图形硬件的三维图形软件包。OpenGL的优点的优点:1)OpenGL可以大大降低了开发高质量图形软件对软、硬件的依赖程度;2)跨平台,基本上的工业标准;3)学习容易,上手快;Windows NTWindows NT下下OpenGLOpenGL的结构的结构OpenGLOpenGL程序运行方式程序运行方式OpenGL硬件加速方式一些显示芯片如3Dlabs公司的GliNT进行了优化,OpenGL的大部分

12、功能均可由硬件实现,仅有少量功能由操作系统来完成。三维图形加速模式一些中低档的图形芯片往往也具备一定的三维加速功能,由硬件来完成一些较为复杂的图形操作。纯软件模式对于不具备三维加速功能的显示卡,要想运行OpenGL,采用纯软件模拟方式。DirectXDirectX是基于COMCOM的一套软件编程接口。DirectX 是微软的游戏开发引擎。最新的版本是DirectX9.0cDirectX9.0c。微软的DirectXDirectX软件开发工具包(SDKSDK)提供了一套优秀的应用程序编程接口(APIAPIs),这个编程接口可以提供给你开发高质量、实时的应用程序所需要的各种资源。使用DirectX

13、DirectX的主要的两个好处:1)为软件开发者提供硬件无关性;2)为硬件开发提供策略。Direct3D硬件抽象层硬件抽象层Direct3D通过硬件抽象层HAL 提供了设备无关性。HAL 是一个与设备相关的接口,它由设备制造商提供,Direct3D 通过它直接控制显示设备。应用程序不会直接与 HAL 打交道。相反,通过 HAL 提供的特性,Direct3D 提供了一系列接口和方法用于应用程序绘制图形。HAL可以是显示驱动程序的一部分,也可以是一个动态连接库(DLL)。HAL 由芯片制造商、板卡生产者或者原始设备制造商(OEM)实现。HAL 实现了设备依赖的代码,但是并不做任何的模拟。也就是说,

14、如果硬件并不提供某一个功能,HAL 并不将其声明为硬件的能力。另外,HAL 并不验证参数;Direct3D 在调用 HAL 以前就已经完成了这项操作。目前来看,目前来看,OpenGLOpenGL和和D3DD3D在应用领域上各有侧重。在应用领域上各有侧重。OpenGLOpenGL在工业领域应用较多,而在工业领域应用较多,而D3DD3D在游戏领域则更在游戏领域则更多。多。D3DD3D学习掌握较困难,但完善的辅助库支持,使得搭学习掌握较困难,但完善的辅助库支持,使得搭建三维应用更快捷。在建三维应用更快捷。在WindowsWindows平台下优势明显。平台下优势明显。OpenGLOpenGL架构相对稳

15、定,更规范严格,跨平台和独立窗架构相对稳定,更规范严格,跨平台和独立窗口意义重大,容易掌握;但复杂应用上工作量很大。口意义重大,容易掌握;但复杂应用上工作量很大。3D游戏效果图游戏效果图3D操作系统操作系统 传统的地学分析图形中,三维地形立体图通常是用传统的地学分析图形中,三维地形立体图通常是用一组经投影变换的剖面线或网线构造的,图形简单,内一组经投影变换的剖面线或网线构造的,图形简单,内容单一,缺乏实体感,实用价值受到限制。而三维地形容单一,缺乏实体感,实用价值受到限制。而三维地形模型的动态显示是区域地形等多种要素三维景观的综合模型的动态显示是区域地形等多种要素三维景观的综合体现,具有信息丰

16、富、层次分明、真实感强的特点。体现,具有信息丰富、层次分明、真实感强的特点。我们可通过获取地形等高线及地表属性多边形等信我们可通过获取地形等高线及地表属性多边形等信息,采用适当的内插拟合方法,生成真实描述实际地表息,采用适当的内插拟合方法,生成真实描述实际地表特征的数字高程模型,并用栅格化技术建立相应的描述特征的数字高程模型,并用栅格化技术建立相应的描述区域地表类型的属性栅格,经透视投影变换和属性叠加区域地表类型的属性栅格,经透视投影变换和属性叠加后,采用恰当的消隐处理和光照模型进行显示,再现区后,采用恰当的消隐处理和光照模型进行显示,再现区域的三维地形形态,取得真实、鲜明、直观的图像效果。域

17、的三维地形形态,取得真实、鲜明、直观的图像效果。1 1、建立模型、建立模型 模型的建立分以下三个小步:模型的建立分以下三个小步:(1 1)建立物体的几何模型,设定物体的光学属性,其中多)建立物体的几何模型,设定物体的光学属性,其中多边形建模方法是最常用的模型表示方法,该方法将对象简边形建模方法是最常用的模型表示方法,该方法将对象简化成一系列多边形表面。物体的光学属性包括对光的漫反化成一系列多边形表面。物体的光学属性包括对光的漫反射系数、镜面反射系数、折射率、透明度、颜色、纹理、射系数、镜面反射系数、折射率、透明度、颜色、纹理、粗糙度等粗糙度等 ;(2 2)设定光源的位置、形状及光学特性;)设定

18、光源的位置、形状及光学特性;(3 3)设定视点和视屏位置。)设定视点和视屏位置。2 2、计算视屏上各像素点的颜色、计算视屏上各像素点的颜色 :(1 1)不可见面消除;)不可见面消除;(2 2)阴影计算;)阴影计算;(3 3)光照颜色计算)光照颜色计算 选择合适的光照模型,计算在光源照射选择合适的光照模型,计算在光源照射下物体表面各可见点对视屏上各像素点的光贡献,由此求下物体表面各可见点对视屏上各像素点的光贡献,由此求出视屏上各像素点的颜色值。出视屏上各像素点的颜色值。3 3显示计算到屏幕上。显示计算到屏幕上。DEM DEM库采用金字塔结构存放多种空间分辨率的地形数据,同一分辨库采用金字塔结构存

19、放多种空间分辨率的地形数据,同一分辨率的栅格数据被组织在一个层面内,而不同分辨率的地形数据具有上下率的栅格数据被组织在一个层面内,而不同分辨率的地形数据具有上下的垂直组织关系:越靠近顶层,数据的分辨率越小,数据量也越小,只的垂直组织关系:越靠近顶层,数据的分辨率越小,数据量也越小,只能反映原始地形的概貌;越靠近底层,数据的分辨率越大,数据量也越能反映原始地形的概貌;越靠近底层,数据的分辨率越大,数据量也越大,更能反映原始地形详情大,更能反映原始地形详情 由于受到目前操作系统处理数据量的限制由于受到目前操作系统处理数据量的限制,存在于存在于DEMDEM库库中的海量地形数据不可能全部常驻内存。鉴于

20、内外存的数据中的海量地形数据不可能全部常驻内存。鉴于内外存的数据交换非常耗时,为了尽量减少数据库中的数据存取,需要针交换非常耗时,为了尽量减少数据库中的数据存取,需要针对三维地形可视化的特点对空间对象进行缓冲管理。对三维地形可视化的特点对空间对象进行缓冲管理。在内存中用一块存储区作在内存中用一块存储区作为数据缓冲区,由于数据缓冲为数据缓冲区,由于数据缓冲区的大小有一定限制,在进行区的大小有一定限制,在进行数据存取时只能将部分数据读数据存取时只能将部分数据读入,操作过程中需要进行数据入,操作过程中需要进行数据的的“部分装入部分装入”和和“部分对换部分对换”,这种数据交换技术称为缓,这种数据交换技

21、术称为缓冲管理。冲管理。Level of Detail:Level of Detail:一种实时三维计算机图形技术,一种实时三维计算机图形技术,最先由最先由ClarkClark于于19761976年提出。年提出。工作原理工作原理:视点离物体近时,能观察到的模视点离物体近时,能观察到的模型细节丰富;视点远离模型时,观察型细节丰富;视点远离模型时,观察到的细节逐渐模糊。系统绘图程序根到的细节逐渐模糊。系统绘图程序根据一定的判断条件,选择相应的细节据一定的判断条件,选择相应的细节进行显示,从而避免了因绘制那些意进行显示,从而避免了因绘制那些意义相对不大的细节而造成的时间浪费,义相对不大的细节而造成的

22、时间浪费,同时有效地协调了画面连续性与模型同时有效地协调了画面连续性与模型分辨率的关系。分辨率的关系。LODLOD静态静态动态动态三角网三角网规则网规则网视点抬高时地形视点抬高时地形线框线框/实体绘制效果实体绘制效果 四叉树:四叉树:递归地将地形分割成小的区块来逼近真实地形。递归地将地形分割成小的区块来逼近真实地形。实时的最优自适应网格(实时的最优自适应网格(ROAMROAM):):在对地形进行三维显示时在对地形进行三维显示时,依据视点的位置和视线的方向等多种因素,对于依据视点的位置和视线的方向等多种因素,对于表示地形表面的三角形片元进行一系列的基于三角形二叉剖分分裂与合并,最终表示地形表面的

23、三角形片元进行一系列的基于三角形二叉剖分分裂与合并,最终形成和原始表面近似且无缝无叠的简化连续三角化表面。形成和原始表面近似且无缝无叠的简化连续三角化表面。左邻接区左邻接区右邻接区右邻接区顶点顶点左子树左子树右子树右子树中点中点右顶点右顶点左顶点左顶点底部邻接区域底部邻接区域Lever=1Lever=11 1Lever=2Lever=22 23 37 7Lever=3Lever=34 45 56 6 在建立地表模型时,如果只是单纯孤立地在建立地表模型时,如果只是单纯孤立地绘制各个分块,而不考虑它们之间的联系,那绘制各个分块,而不考虑它们之间的联系,那么就会出现块间的么就会出现块间的“裂痕裂痕”

24、现象。现象。裂缝的产生裂缝的产生:产生原因产生原因 :相邻分块在公共边上的处理方式不一致。相邻分块在公共边上的处理方式不一致。模型层次切换时,采用几何形状过渡方法形成视觉模型层次切换时,采用几何形状过渡方法形成视觉的光滑过渡的光滑过渡,即将新增点随视点的拉近从起始位置逐渐移即将新增点随视点的拉近从起始位置逐渐移动到最终位置。动到最终位置。遍历整个场景遍历整个场景地形数据的预处理,地形数据的预处理,时间开销较大。时间开销较大。实时漫游存储原始的实时漫游存储原始的地形数据、各个层次简化地形数据、各个层次简化因子以及层次间的相互关因子以及层次间的相互关系,空间开销较大。系,空间开销较大。参与绘制参与

25、绘制的三角形具体数的三角形具体数量难以估算。量难以估算。视点视点所在区域所在区域地形较为地形较为平坦时,平坦时,影响视觉影响视觉效果。效果。矢量叠加操作缺乏准确的高程依据。矢量叠加操作缺乏准确的高程依据。LOD 八叉树分割算法是以八叉树模型为基础的。八叉树模型八叉树分割算法是以八叉树模型为基础的。八叉树模型的根结点表示一个包含整个目标的立方体,若目标充满整个的根结点表示一个包含整个目标的立方体,若目标充满整个立方体则不再分割;反之,将其分成立方体则不再分割;反之,将其分成8 8个大小相同的小立方个大小相同的小立方体。对于每一个小立方体,如果充满目标和完全不含有目标,体。对于每一个小立方体,如果

26、充满目标和完全不含有目标,则对其不再分割;否则,继续将其分成则对其不再分割;否则,继续将其分成8 8个更小的立方体,个更小的立方体,按规则一直分到不需要再分或达到规定的层次为止。按规则一直分到不需要再分或达到规定的层次为止。多边形多边形B B所在的平面将空间分割为两个部分,使得多边形所在的平面将空间分割为两个部分,使得多边形D D和和E E位位于同一个半空间中,多边形于同一个半空间中,多边形C C在另一个半空间中。在这个例子中,在另一个半空间中。在这个例子中,多多边形边形A A穿越了两个半空间,这样,它就不能十分明确的被分配到任何穿越了两个半空间,这样,它就不能十分明确的被分配到任何一个半空间

27、中。但是,如果将这个多边形从它与分割平面相交的地方一个半空间中。但是,如果将这个多边形从它与分割平面相交的地方分为两个部分一个命名为分为两个部分一个命名为A1A1,另一个命名为另一个命名为A2A2,这样,这样,A1A1就和就和D D、E E在在同一个半空间中,同一个半空间中,A2A2和和C C在同一个半空间中。生成的在同一个半空间中。生成的BSPBSP树如下图。在树如下图。在左边子树中选择左边子树中选择E E作为分割多边形,在右边子树中选择作为分割多边形,在右边子树中选择A2A2作为分割多作为分割多边形。这样,将建立下面的结构树。边形。这样,将建立下面的结构树。地貌晕渲是目前地貌晕渲是目前在地

28、图上产生地貌立在地图上产生地貌立体效果的主要方法,体效果的主要方法,其基本原理是:描绘其基本原理是:描绘出在一定的光源条件出在一定的光源条件下地貌的光辉与阴影下地貌的光辉与阴影的变化,通过人的视的变化,通过人的视觉心理间接地感受山觉心理间接地感受山体的起伏变化。体的起伏变化。晕渲法的关键是晕渲法的关键是正确地设置光源和描正确地设置光源和描绘光影,以及地面各绘光影,以及地面各点日照度的计算。点日照度的计算。基于DEM的三维可视化分析模型,有助于用户对空间数据的直观理解,形象地描述各种地形特征;同时,它也能提供一个动态的可互式显示环境,用以在相应空间氛围内逼真创建和显示复杂物体,提供进一步的空间查

29、询及辅助分析。在DEM模型上叠加各种诸如道路、河流、土地利用等矢量信息,可以很逼真地反映实际的地表情况。如果叠加的是具有高度信息的地物信息(如建筑物),还可以构造基于DEM的三维建筑物模型,并配合遥感影像数据,建立城市的虚拟现实景观。在在DEMDEM模型上叠加地形等高线数据例模型上叠加地形等高线数据例 DEMDEM数据与遥感影像、矢量标注的集成数据与遥感影像、矢量标注的集成 城市景观重建与三维可视化技术是当前地理信息系统的重要研究内城市景观重建与三维可视化技术是当前地理信息系统的重要研究内容之一。它在对城市景观的现状和规划设计的描述上摆脱了基于二维地容之一。它在对城市景观的现状和规划设计的描述上摆脱了基于二维地图和三维实体模型的表现方式,代之以计算机辅助的三维立体表现方式,图和三维实体模型的表现方式,代之以计算机辅助的三维立体表现方式,使决策者、设计者和用户对城市景观的现状和规划设计有立体印象。使决策者、设计者和用户对城市景观的现状和规划设计有立体印象。地形数据地形数据地形纹理数据地形纹理数据建筑物几何数据建筑物几何数据建筑物纹理数据建筑物纹理数据航航空空影影像像地表模型地表模型建筑物模型建筑物模型城城市市三三维维景景观观谢谢 谢!谢!结束语结束语谢谢大家聆听!谢谢大家聆听!62

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 教案示例

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁