《一种三维模型中模拟人物行走所见的方法.pdf》由会员分享,可在线阅读,更多相关《一种三维模型中模拟人物行走所见的方法.pdf(8页完整版)》请在专利查询网上搜索。
1、(10)申请公布号 CN 102855651 A (43)申请公布日 2013.01.02 CN 102855651 A *CN102855651A* (21)申请号 201210269134.4 (22)申请日 2012.07.31 G06T 13/20(2011.01) G06T 13/40(2011.01) (71)申请人 深圳市赛格导航科技股份有限公司 地址 518019 广东省深圳市南山区高新区市 高新技术工业村 T2 栋 B6 厂房 (72)发明人 曹绪龙 夏明辉 李睿阳 (74)专利代理机构 深圳市顺天达专利商标代理 有限公司 44217 代理人 郭伟刚 (54) 发明名称 一种。
2、三维模型中模拟人物行走所见的方法 (57) 摘要 本发明公开了一种三维模型中模拟人物行 走所见的方法, 所述方法包括以下步骤 : S1. 准备 及获取所需要显示的三维模型的数据 ; S2. 接收 程序调用的指令, 根据程序实际需要设置人物的 初始坐标 (x, y, z) , 以及初始与正北的朝向角度 theta, 并根据用户机器硬件数据设置最大显示半 径 R ; S3. 以任务当前坐标为中心, 使用三维图像 引擎显示半径为R的人物可视的区域 ; S4.根据用 户输入确定人物移动中心点的坐标 ; S5. 回到步 骤 S3, 否则结束。本发明通过对平面要素层的分 块划分以及几何点面间的 overl。
3、ap 操作, 在三维 地理信息系统中可快速高效地模拟三维场景中的 人物漫游过程, 对三维地理信息系统的开发具有 重要的实践意义。 (51)Int.Cl. 权利要求书 1 页 说明书 4 页 附图 2 页 (19)中华人民共和国国家知识产权局 (12)发明专利申请 权利要求书 1 页 说明书 4 页 附图 2 页 1/1 页 2 1. 一种三维模型中模拟人物行走所见的方法, 其特征在于, 所述方法包括以下步骤 : S1. 准备及获取所需要显示的三维模型的数据, 所述数据包括将构造成的多层带地理 属性的面要素层进行分块而形成的所有面要素文件 ; S2. 接收程序调用的指令, 根据程序实际需要设置人。
4、物的初始坐标 (x, y, z) , 以及初始 与正北的朝向角度 theta, 并根据用户机器硬件数据设置最大显示半径 R ; S3. 以任务当前坐标为中心, 使用三维图像引擎显示半径为 R 的人物可视的区域 ; S4. 根据用户输入确定人物移动中心点的坐标 ; S5. 回到步骤 S3, 否则结束 ; 其中, 所述步骤 S4 进一步包括 : S41. 通过外部输入设备接收用户输入信号 ; S42. 根据所述输入信号更改计算人物可能平面坐标 (xt+deltax, yt+deltay) ; S43. 以 (xt+deltax, yt+deltay, z) 为中心搜索对应的所述所有面要素文件 ; 。
5、S44. 通过 overlap 方法逐层判断中心坐标 (xt+deltax, yt+deltay, z) 是否落在该层 面要素上, 一旦为是则停止判断 ; S45. 根 据 所 在 面 要 素 的 特 性 更 改 坐 标, 将 新 坐 标 (xt+deltax , yt+deltay , zt+deltaz ) 存入人物当前坐标 (xt, yt, zt) , 所述面要素特性对于坐标的影响需要根据程 序定义。 2. 根据权利要求 1 所述的方法, 其特征在于, 所述步骤 S1 进一步包括 : S11. 获取所需要显示的三维模型及三维图形图像显示引擎 ; S12. 获取所需显示地区的平面图 ; S。
6、13. 使用所述平面图, 根据程序实际需要构建多层带地理信息属性的面要素层, 并添 加移动特性字段 ; S14. 通过拓扑验证要素保证数据间无逻辑错误 ; S15. 将构建成功的每层带地理信息属性的面要素层进行分块, 以其层数与 x、 y 坐标范 围联合作为各块的文件名。 3. 根据权利要求 1 所述的方法, 其特征在于, 所述步骤 S41 中的外部输入设备包括鼠 标、 键盘或其它交互式设备。 4. 根据权利要求 1 所述的方法, 其特征在于, 所述 deltax 与 deltay 根据程序需要设 定。 5.根据权利要求2所述的方法, 其特征在于, 所述步骤S13中据程序实际需要构建多层 带地。
7、理信息属性的面要素层, 并添加移动特性字段包括 : 将第一层构建为阻碍视线层, 特性字段为 N_vw ; 将第二层构建为不可移动层, 特性字 段为 N_Mv; 将第三层构建为平面移动层, 特性字段为 Prll_Mv; 将第四层构建为楼梯移动 层, 特性字段为 Vrtcl_Mv, 所述楼梯移动层的特性字段需要添加竖直移动分量 deltaz 字 段。 权 利 要 求 书 CN 102855651 A 2 1/4 页 3 一种三维模型中模拟人物行走所见的方法 技术领域 0001 本发明涉及一种三维模型中模拟人物行走所见的方法。 背景技术 0002 相比于二维 GIS (地理信息系统) , 三维 GI。
8、S 的空间信息的展示更为直观。从人们懂 得通过空间信息来认识和改造世界开始, 空间信息主要是以图形化的形式存在的。 然而, 用 二维的图形界面展示空间信息是非常抽象的, 只有专业的人士才懂得使用。相比二维 GIS, 三维 GIS 为空间信息的展示提供了更丰富、 逼真的平台, 使人们将抽象难懂的空间信息可 视化和直观化, 人们结合自己相关的经验就可以理解, 从而做出准确而快速的判断。 毫无疑 问, 三维 GIS 在可视化方面有着得天独厚的优势。虽然三维 GIS 的动态交互可视化功能对 计算机图形技术和计算机硬件也提出了特殊的要求, 但是一些先进的图形卡、 工作站以及 带触摸功能的投影设备的陆续问。
9、世, 不仅完全可以满足三维 GIS 对可视化的要求, 还可以 带来意想不到的展示和体验效果。 0003 此外, 三维 GIS 的多维度空间分析功能更加强大。空间信息的分析过程, 往往是复 杂、 动态和抽象的, 在数量繁多、 关系复杂的空间信息面前, 二维 GIS 的空间分析功能常具 有一定的局限性, 如淹没分析、 地质分析、 日照分析、 空间扩散分析、 通视性分析等高级空间 分析功能, 二维 GIS 是无法实现的。由于三维数据本身可以降维到二维, 因此三维 GIS 自然 也能包容二维 GIS 的空间分析功能。三维 GIS 强大的多维度空间分析功能, 不仅是 GIS 空 间分析功能的一次跨越, 。
10、在更大程度上也充分体现了 GIS 的特点和优越性。 发明内容 0004 本发明的目的在于提供一种三维模型中模拟人物行走所见的方法, 通过平面要素 层的分块划分和几何点面间的 overlap 操作, 在三维地理信息系统中快速高效的模拟三维 场景中的人物漫游过程。 0005 为了实现发明目的, 所述方法包括以下步骤 : 0006 S1. 准备及获取所需要显示的三维模型的数据, 所述数据包括将构造成的多层带 地理属性的面要素层中的每层进行分块而形成的所有面要素文件 ; 0007 S2. 接收程序调用的指令, 根据程序实际需要设置人物的初始坐标 (x, y, z) , 以及 初始与正北的朝向角度 th。
11、eta, 并根据用户机器硬件数据设置最大显示半径 R ; 0008 S3. 以任务当前坐标为中心, 使用三维图像引擎显示半径为 R 的人物可视的区域 ; 0009 S4. 根据用户输入确定人物移动中心点的坐标 ; 0010 S5. 回到步骤 S3, 否则结束 ; 其中, 0011 所述步骤 S4 进一步包括 : 0012 S41. 通过外部输入设备接收用户输入信号 ; 0013 S42. 根据所述输入信号更改计算人物可能平面坐标 (xt+deltax, yt+deltay) ; 0014 S43. 以 (xt+deltax, yt+deltay, z) 为中心搜索对应的所述所有面要素文件 ; 。
12、说 明 书 CN 102855651 A 3 2/4 页 4 0015 S44. 通过 overlap 方法逐层判断中心坐标 (xt+deltax, yt+deltay, z) 是否落在 该层面要素上, 一旦为是则停止判断 ; 0016 S45. 根据所在面要素的特性更改坐标, 将新坐标 (xt+deltax , yt+deltay , zt+deltaz ) 存入人物当前坐标 (xt, yt, zt) , 所述面要素特性对于坐标的影响需要根据程 序定义。 0017 所述步骤 S1 进一步包括 : 0018 S11. 获取所需要显示的三维模型及三维图形图像显示引擎 ; 0019 S12. 获取。
13、所需显示地区的平面图 ; 0020 S13. 使用所述平面图, 根据程序实际需要构建多层带地理信息属性的面要素层, 并添加移动特性字段 ; 0021 S14. 通过拓扑验证要素保证数据间无逻辑错误 ; 0022 S15. 将构建成功的每层带地理信息属性的面要素层进行分块, 以其层数与 x、 y 坐 标范围联合作为各块的文件名。 0023 在上述步骤 S41 中, 所述外部输入设备包括鼠标、 键盘或其它交互式设备。 0024 在上述步骤 S42、 S43 中, 所述 deltax 与 deltay 根据程序需要设定。 0025 在所述步骤 S13 中, 所述根据程序实际需要构建多层带地理信息属性。
14、的面要素 层, 并添加移动特性字段包括 : 0026 将第一层构建为阻碍视线层, 特性字段为 N_vw ; 将第二层构建为不可移动层, 特 性字段为N_Mv;将第三层构建为平面移动层, 特性字段为Prll_Mv;将第四层构建为楼梯移 动层, 特性字段为 Vrtcl_Mv, 所述楼梯移动层的特性字段需要添加竖直移动分量 deltaz 字 段。 0027 本发明通过对平面要素层的分块划分以及几何点面间的 overlap 操作, 在三维地 理信息系统中可快速高效地模拟三维场景中的人物漫游过程, 对三维地理信息系统的开发 具有重要的实践意义。 附图说明 0028 图 1 是本发明一个实施例中在三维模型。
15、中模拟人物行走所见的方法流程图 ; 0029 图 2 是本发明另一个实施例中在三维模型中模拟人物行走所见的方法流程图。 具体实施方式 0030 为了使本发明的目的、 技术方案及优点更加清楚明白, 以下结合附图及实施例, 对 本发明进行进一步的详细说明。 应当理解, 此处所描述的具体实施例仅仅用以解释本发明, 并不用于限定本发明。 0031 图 1 示出了本发明一个实施例中在三维模型中模拟人物行走所见的方法流程。该 流程包括数据准备和程序处理两大部分。 0032 在步骤 S11 中, 获取需要显示的三维模型以及三维显示引擎, 对需要显示的三维 模型的数据进行相关的处理。 0033 在步骤 S12。
16、 中, 对初始状态进行设置, 包括设备的初始化及场景的初始化, 例如, 设置人物的初始坐标, 以及显示的最大半径 R。 说 明 书 CN 102855651 A 4 3/4 页 5 0034 在步骤 S13 中, 接收用户输入信息, 并使三维模型和观察状态做相应变换, 主要的 输入设备是键盘, 利用计算机图形学的图形变换基础, 通过坐标变换来实现前进、 后退、 仰 视、 俯视、 左转和右转。 0035 在步骤 S14 中, 计算新对象信息, 根据当前观察的位置、 角度等参量, 根据场景组 织本身的特性, 提取出渲染的对象并重新计算获得各对象的状态, 例如, 在处理山地地形 时, 利用的是地形单。
17、元重复拼接的方法, 当视点变化时, 把视点坐标到世界坐标原点的偏移 坐标 (x, y) 对地形单元的宽度求模, 即可得出视点所在位置的地形状态。 0036 在步骤 S15 中, 进行图形渲染处理, 将经过处理最终生成的 3D 对象显示在计算机 屏幕上, 采用的是与步骤 S14 中同样的远原理, 将被渲染位置的地形数据取出, 然后贴图处 理就可以提交显示了。当视点变化时, 距离视点不同距离的物体应采用 LOD 自动调整层次, 实现图形的高速渲染。 0037 在步骤S15中, 若选择是, 则进入步骤S16回收系统资源, 结束整个系统的运行, 否 则系统回到步骤 S13 进行交互处理, 继续运行系统。
18、。 0038 图 2 示出了本发明另一个实施例中在三维模型中模拟人物行走所见的方法流程。 0039 在步骤 S21 中, 获取所需要显示的三维模型, 该三维模型可购买、 由工程设计图构 建或自己构建等。 0040 在步骤 S22 中, 购买三维图形图像显示引擎, 或自主开发三维图形图像显示引擎。 0041 在步骤 S23 中, 获取所需显示地区的平面图。 0042 在步骤S24中, 使用在步骤S23中获取的平面图, 根据程序实际需要构建多层带地 理信息属性的面要素层, 并添加移动特性字段。例如, 第一层为阻碍视线层, 特性字段为 N_ vw ; 第二层为不可移动层, 特性字段为N_Mv ; 第。
19、三层为平面移动层, 特性字段为Prll_Mv ; 第 四层为楼梯移动层特性字段为 Vrtcl_Mv, 楼梯移动字段需要添加竖直移动分量 deltaz 字 段等。 0043 在步骤 S25 中, 通过拓扑验证要素保证数据间无逻辑错误, 将构建成功的每 层带地理信息属性的面要素层进行分块, 以其层数与 x、 y 坐标范围联合作为文件名, 例如, x 坐标在 30-50 之间、 y 坐标为 20-40、 y 坐标为 -10-0 的第一层文件命名为 “30-50_20-40_-10-00Lyr1” 。 0044 在步骤 S26 中, 对程序进行初始化。接收程序调用的指令, 根据程序实际需要设置 人物的。
20、初始坐标 (x, y, z) , 以及初始与正北的朝向角度 theta, 并根据用户机器硬件数据设 置最大显示半径 R。 0045 在步骤 S27 中, 以人物当前坐标 (xt, yt, zt) 为中心, 使用三维图像引擎显示半径 为 R 的区域。 0046 在步骤 S28 中, 通过输入设备接收用户输入信号, 若用户选择结束, 则退出程 序, 系统运行结束。否则, 根据根据输入信号更改计算人物可能平面坐标 (xt+deltax, yt+deltay) , 其中, deltax 与 deltay 根据程序需要设定, 再以 (xt+deltax, yt+deltay, z) 为中心搜索对应的所有。
21、面要素文件。 0047 在步骤S29中, 通过overlap方法逐层判断中心坐标是否落在该层面要素上, 一旦 为是则停止判断。 0048 在步骤 S210 中, 根据所在面要素的特性更改坐标, 将新坐标 (xt+deltax , 说 明 书 CN 102855651 A 5 4/4 页 6 yt+deltay , zt+deltaz ) 存入人物当前坐标 (xt, yt, zt) , 面要素特性对于坐标影响需要根 据程序定义, 例如, 特性字段为 N_mv 时, deltax =deltay =deltaz =0 ; 特性字段为 Vrtcl_ Mv 时, deltax =deltax, del。
22、tay =deltay, deltaz 为楼梯移动层中的字段 deltaz。 0049 步骤 S210 完成后, 程序回到步骤 S27, 以新坐标为中心, 使用三维图像引擎显示半 径为 R 的区域, 直到在步骤 S28 收到结束显示的相关指令。 0050 本发明所披露的方法, 目前主要应用于三维地理信息系统的开发中, 但是可以预 见的是, 本发明的应用范围并不限于三维地理信息系统, 还可应用于其它模拟三维场景中 的人物漫游过程的方法和系统中。 0051 以上所述仅为本发明的较佳实施例而已, 并不用于限制本发明, 凡在本发明的精 神和原则之内所做的任何修改、 等同替换和改进等, 均应包含在本发明的保护范围内。 说 明 书 CN 102855651 A 6 1/2 页 7 图 1 说 明 书 附 图 CN 102855651 A 7 2/2 页 8 图 2 说 明 书 附 图 CN 102855651 A 8 。