基于理解地物特征的三维地理信息可视化方法

上传人:E**** 文档编号:115241654 上传时间:2019-11-13 格式:PDF 页数:78 大小:2.06MB
返回 下载 相关 举报
基于理解地物特征的三维地理信息可视化方法_第1页
第1页 / 共78页
基于理解地物特征的三维地理信息可视化方法_第2页
第2页 / 共78页
基于理解地物特征的三维地理信息可视化方法_第3页
第3页 / 共78页
基于理解地物特征的三维地理信息可视化方法_第4页
第4页 / 共78页
基于理解地物特征的三维地理信息可视化方法_第5页
第5页 / 共78页
点击查看更多>>
资源描述

《基于理解地物特征的三维地理信息可视化方法》由会员分享,可在线阅读,更多相关《基于理解地物特征的三维地理信息可视化方法(78页珍藏版)》请在金锄头文库上搜索。

1、2 0 11 届研究生硕士学位论文 j9I5U ( 2 ) 描述面的几何坐标,纹理坐标,法线坐标,以及材质名称: p u b l i cc l a s sm y F a c e p u b l i ci n tp n u m ; p u b l i cm y V e r t e x IP o i n f l n d e x ; p u b l i ci n tm u m ; p u b l i cm y V e r t e x DT e x I n d e x ; p u b l i ci n tn n u m ; p u b l i cm y V e r t e x N o m l n d

2、e x ; p u b l i cs t r i n gm t l N a m c ; p u b l i cm y F a c e 0 3 3 几何坐标 纹理坐标 法线坐标 华东师范大学硕士学位论文 第五章三维景观的可视化应用 m t l N a m e = ”; P o i n t I n d e x2n e w m y V e r t e x 1 2 8 ; N o m l n d e x 2n e w m y V e r t e x 1 2 8 ; T e x I n d e x2n e w m y V e r t e x 1 2 8 ; ) ) ( 3 ) 描述材质,包括材质名称,环

3、境反射,漫反射,镜面反射属性,纹理 对象的编号: p u b l i cc l a s sm t l p u b l i cs t r i n gn e w m t l = ; p u b l i cm y V e r t e xk 戤材质参数 p u b l i cm y V e r t e xk d ; p u b l i cm y V e r t e xk s ; p u b l i ci n tT e x n o = - l ;纹理对象编号 ) ( 4 ) 描述模型,包括几何坐标,纹理坐标,法线坐标,材质: p u b l i cc l a s sO B J L o a d e r p

4、 u b l i ci n tt r i N u m ; p u b l i cm y F a c e 】F a c e s ;构成模型的所有面 p u b l i ci n tp N u m ; p u b l i cm y V e r t e x p V e r t e x s ; 构成模型的所有点的几何坐标 p u b l i ch l tt N u m ; p u b l i cm y V e r t e x t V e r t e x s ;模型的所有纹理坐标 p u b l i ch a tn N u m ; p u b l i cm y V e r t e x In V e r

5、t e x s ; 模型的所有法线坐标 p u b l i ci n tm t l N u m ; p u b l i cm i l dm t l A r r a y ;模型的所有材质 p u b l i ci n tT e x N u m ; p u b l i cT e x t u r e L o a d e rT e x A r r a y ; 模型的所有纹理 p u b l i cv o i dl o a d F i l e ( s t r i n gf i l e N a m e ) ; 载入O B J 文件 华东师范大学硕士学位论文 第五章三维景观的可视化应用 p u b l i

6、cv o i dl o a d M t l ( s t r i n gm t l N a m e ) ; 载入材质文件 p u b l i ci n tf i n d M t l ( s W i n gm t l s t r ) ; 查找材质 ) ( 5 ) 描述一个模型所有的纹理: p u b l i cc l a s sT e x t u r e L o a d e r p u b l i cu i n t NI D = n e wu i n t 1 2 8 ; 纹理的I D p u b l i ci n tI D n u m = O ; 纹理的数量 p u b l i cT e x t

7、u r e L o a d e r 0 G L g l E n a b l e ( G L G L _ T E X T U R E _ 2 D ) ; G L g l G e n T e x t u r e s ( 1 2 8 ,I D ) ; p u b l i cb o o lL o a d T e x t t a e s ( s t r i n gF i l e P a t h ) ;载入纹理文件 5 2 5 树木、不规则建筑的可视化 一矗i 使用O B J L o a d e r 1 0 a d F i l e 函数导入O B J ,函数的过程如下: ( 1 ) 使用S t r e a

8、 m R e a d e r 每次读取O B J 文件的一行数据,使用f o r ( ; o b j R e a d e r P e e k 01 = 一l ;) 控制循环。 ( 2 ) 登记材质文件:如果每行的第一个字是”m t l l i b ”,则第二个字是材质文 件名,调用l o a d M t l 函数。 ( 3 ) 读取几何坐标:如果每行的第一个字是”v ”,将点存在p V e r t e x s 数组中。 ( 4 ) 读取纹理坐标:如果每行的第一个字是”v t n ,将点存在t V e r t e x s 数组中。 ( 5 ) 读取坐标点:如果每行的第一个字是”,将点存在n V

9、e r t e x s 数组中。 ( 6 ) 使用材质数据:如果每行的第一个字是”u s e m t l ”,则第二个字是材质名, 存在m t l n a m e 数组中。 ( 7 ) 读取曲面的一系列点的编号:如果每行的第一个字是”n 将一系列的 p V e r t e x s 、t V e r t e x s 、n V e r t e x s 相应的m y V e r t e x 顺序存储到一个临时的m y F a e e 的 P o i n t l n d e x 、T e x l n d e x 、N o m l n d e x 数组中,将m t l N a m e 存储到m y F

10、a c e 的m t l n a m e , 最后将m y F a c e 存储到O B J L o a d e r F a c e s 数组中。 华东师范大学硕士学位论文 第五章三维景观的可视化应用 使用O B J L o a d e r 1 0 a d M t l 函数导入O B J 的材质,函数的过程如下: ( 1 ) 使用S t r e a m _ R e a d e r 每次读取材质文件m t l 的一行数据,使用f o r ( ; m t l R e a d e r P e e k 01 = 一l ;) 控制循环。 ( 2 ) 命名材质数据:如果第一个字是”n e w m t l

11、”,则存储在m t l 对象的n e w m f l 中。 ( 3 ) 记录材质参数:如果是”K a 什、”K d ”、”K s ”,则存储在m t l 对象的k a 、 k d 、l 【S 中。 ( 4 ) 载入纹理:如果第一个字是”m 印K d ”,则调用L o a d T e x t u r e s 载入模型 所有的纹理,并将纹理I D 存储在m t l 对象的T e x n o 中。 使用T e x t u r e L o a d e r L o a d T e x t u r e s 函数载入树木、不规则建筑的模型纹理,函 数过程如下: ( 1 ) 调用G L g l G e n T

12、 e x t u r e s 生成多个纹理I D ,数量要比模型的纹理数量多, 本论文中设置为1 2 8 。 ( 2 ) 生成一个B i t m a p ,以纹理影像的路径为参数。 ( 3 ) 调用B i t m a p L o c k B i t s 生成纹理影像的二进制数据B i t m a p D a t a 。 ( 4 ) 调用G L g l B i n d T e x t u r e 绑定纹理数据与I D 。 ( 5 ) 设置纹理参数,导入纹理影像的二进制数据。 ( 6 ) 循环生成所有纹理以及其I D 。 使用G i s 3 D V i e w d e a l 函数可视化树木、不规

13、则建筑的模型,函数过程如下: ( 1 ) 根据树木的种类或者不规则建筑的属性数据判断使用哪个模型表现树 木或者不规则建筑。 ( 2 ) 新建O B J L o a d e r 对象,根据( 1 ) 的文件名,O B J L o a d e r 1 0 a d F i l e 导入 O B J 文件。 ( 3 ) 调用G L g l N e w L i s t 库函数建立显示列表。 ( 4 ) 使用循环,对每个曲面渲染,首先调用f m d M t l 函数匹配材质,然后调 用G L g l B i n d T e x t u r e 库函数,根据曲面纹理的I D 绑定纹理,调用G L g l M

14、 a t e r i a l f v 库函数设定曲面的材质数据,通过读取O B J L o a d e r F a c e s 数组中的当前m y F a c e 的P o i n t l n d e x 、T e x I n d e x 、N o m l n d e x 数组,设定一系列的几何坐标、纹理坐标、 法线坐标。 ( 1 ) 根据朝向,调用G L g l R o t a t e 旋转模型,调整模型的方向。 ( 2 ) 绑定墙体的第一个纹理,然后导入第一堵墙底边的两个点坐标,即第 一、二两个点坐标。依据墙体高度设定Y 值,确定第一堵墙顶边的另外两个点。 调用G L g l V e r

15、t e x 3 f 设定墙的四个坐标,调用G L g l B e g i n ( G L G U O L Y G O N ) 和 G L g l E n d 显示第一堵墙。 ( 3 ) 依上所述,显示第二、三、四堵墙,注意的是第二堵墙底边的两个点 坐标是第二、三两个点坐标,如此类推。 ( 4 ) 绑定屋顶的第一个纹理,根据屋顶形状、第一堵墙的项边的两个坐标、 屋顶高度,确定屋顶最高点( 尖顶) 、线的端点( 坡项) 、面的端点( 平顶) 。用 G L g l V e r t e x 3 f 设定屋顶第一个坡的三个或者四个坐标( 因为坡顶有些坡是三个点 或者四个点) 。 ( 5 ) 依上所述,显

16、示其他的坡。 5 2 7 圆柱体规则建筑的可视化 ( 1 ) 根据底面圆心坐标,调用G L g l T r a n s l a t e 移动模型,调整模型的位置。 ( 2 ) 首先绑定墙体的纹理,调用G L g l u Q u a d r i c O r i e n t a t i o n 、 G L g l u Q u a d r i c N o r m a l s 、G L g l u Q u a d r i c T e x t u r e 、G L g l u C y l i n d e r 库函数显示圆柱 体墙体,前三个函数是显示前的设置,G L g l u C y l i n d e r 的参数l 是圆柱体的底面 半径,参数2 是圆柱体的顶面半径,参数3 是圆柱体的高度,参数4 是纬线( 环 绕Z 轴有多少细分) ,参数5 是经线

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

当前位置:首页 > 办公文档 > 其它办公文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号