成都理工大学地球科学学院测绘工程系

Similar documents
附件4

小论文草稿2_邓瀚

中 文 摘 要 一 个 蛋 白 质 去 折 叠 可 视 化 系 统 的 设 计 与 实 现 中 文 摘 要 蛋 白 质 的 生 物 功 能 由 其 三 维 结 构 所 决 定, 而 蛋 白 质 通 过 特 定 的 折 叠 机 制 行 成 稳 定 的 空 间 结 构 当 前 生 物 科 学 领 域 一


怎样使孩子更加聪明健康(五).doc

:, : ,(4) ,32 21 :,,( ) : ,(2).--3 7

石家庄~3

EC( )18 第 2 頁 (c) 刪 除 以 下 常 額 職 位 2 個 顧 問 醫 生 職 位 第 4 / 第 3 / 第 2 點 ) ( 145,150 元 至 149,600 元 /127,900 元 至 135,550 元 /113,520 元 至 120,553 元 ) (

TI 3 TI TABLE 4 RANDBIN Research of Modern Basic Education

2 3. 1,,,.,., CAD,,,. : 1) :, 1,,. ; 2) :,, ; 3) :,; 4) : Fig. 1 Flowchart of generation and application of 3D2digital2building 2 :.. 3 : 1) :,

I

彩色地图中道路的识别和提取

Microsoft Word - 發布版---規範_全文_.doc

概 述 随 着 中 国 高 等 教 育 数 量 扩 张 目 标 的 逐 步 实 现, 提 高 教 育 质 量 的 重 要 性 日 益 凸 显 发 布 高 校 毕 业 生 就 业 质 量 年 度 报 告, 是 高 等 学 校 建 立 健 全 就 业 状 况 反 馈 机 制 引 导 高 校 优 化 招

鱼类丰产养殖技术(二).doc

疾病诊治实务(一)

名人养生.doc

<4D F736F F D2040B9C5B871A661B0CFABC8AE61C2A7AB55ACE3A8735FA7F5ABD8BFB3B9C5B871A661B0CFABC8AE61C2A7AB55ACE3A8732E646F63>


中老年保健必读(十).doc

27 i

% % ,542 12,336 14,53 16,165 18,934 22,698 25, ,557 7,48 8,877 11, 13,732 17,283 22,

海淀区、房山区(四)

穨ecr1_c.PDF

穨2005_-c.PDF

北京理工大学.doc

尲㐵.⸮⸮⸮⸮⸮

东城区(下)

果树高产栽培技术(一).doc

物质结构_二_.doc

第一節 研究動機與目的

i

水力发电(九)

中国古代文学家(八).doc

景观植物(一)

Microsoft Word - 目录.doc

园林植物卷(三).doc

19q indd

厨房小知识_一_

中南财经大学(七).doc


赵飞燕外传、四美艳史演义

厨房小知识(五)

最新监察执法全书(十八).doc

园林植物卷(十二).doc

华东师范大学.doc

國立中山大學學位論文典藏

乳业竞争_一_

最新执法工作手册(十).doc

untitled

最新执法工作手册(十六)

中国政法大学(六).doc

胎儿健康成长.doc

bnbqw.PDF

1. 本文首段的主要作用是 A. 指出 異蛇 的藥用功效 說明 永之人爭奔走焉 的原因 B. 突出 異蛇 的毒性 為下文 幾死者數矣 作鋪墊 C. 交代以蛇賦稅的背景 引起下文蔣氏有關捕蛇的敘述 2. 本文首段從三方面突出蛇的 異 下列哪一項不屬其中之一 A. 顏色之異 B. 動作之異 C. 毒性之

nb.PDF

第三章

untitled

Microsoft Word - edu-re~1.doc

Microsoft Word - 08 单元一儿童文学理论

南華大學數位論文

Microsoft Word 一年級散文教案.doc

米食天地教案

第32回独立行政法人評価委員会日本貿易保険部会 資料1-1 平成22年度財務諸表等

項 訴 求 在 考 慮 到 整 體 的 財 政 承 擔 以 及 資 源 分 配 的 公 平 性 下, 政 府 採 取 了 較 簡 單 直 接 的 一 次 性 減 稅 和 增 加 免 稅 額 方 式, 以 回 應 中 產 家 庭 的 不 同 訴 求 ( 三 ) 取 消 外 傭 徵 費 6. 行 政 長

(f) (g) (h) (ii) (iii) (a) (b) (c) (d) 208

2015 年 第 24 卷 第 11 期 计 算 机 系 统 应 用 历 的 主 体 部 分 多 以 非 结 构 化 的 文 本 形 式 存 储, 很 多 研 究 只 能 基 于 有 限 的 结 构 化 数 据 进 行 [4,5], 无 法 满 足 临

论文集10.12.doc

中華臺北不符合措施清單(附件 8B:I)

[1] Liu Hongwei,2013, Study on Comprehensive Evaluation of Iron and Steel Enterprises Production System s Basic Capacities, International Asia Confere

I (a) I I % I I 14A (b) 14A.90 14A (c) I % 14A.76 14A 2

基 础 实 室 4 计 算 机 网 络 唐 爱 红 专 业 机 房 PROTEL 联 想 同 方 电 脑 180 台 唐 爱 红 MATLAB 计 算 机 网 络 电 工 电 子 技 能 训 练 室 电 子 基 本 技 能 示 波 器 毫 伏 表 雕 刻 机 图 示 仪 电 子 实 训 台 电 工

symmetrical cutting patterns with various materials for visual designing; ii. This part combined costumes, bags and oilpaper umbrellas with the tradit

m m m

/3 CAD JPG GIS CAD GIS GIS 1 a CAD CAD CAD GIS GIS ArcGIS 9. x 10 1 b 1112 CAD GIS 1 c R2VArcscan CAD MapGIS CAD 1 d CAD U

successful and it testified the validity of the designing and construction of the excavation engineering in soft soil. Key words subway tunnel

ZS.indd

附件

12. 家 庭 年 平 均 收 支 儲 蓄 表 列 示 如 下 : 消 費 支 出 為 66 萬 元, 利 息 支 出 為 4 萬 元, 經 常 性 移 轉 支 出 為 16 萬 元, 所 得 收 入 總 計 為 109 萬 元, 則 可 支 配 所 得 為 多 少? (1) 43 萬 元 (2)

微 分 方 程 是 经 典 数 学 的 一 个 重 要 分 支, 常 用 来 描 述 随 时 间 变 化 的 动 态 系 统, 被 广 泛 应 用 于 物 理 学 工 程 数 学 和 经 济 学 等 领 域. 实 际 上, 系 统 在 随 时 间 的 变 化 过 程 中, 经 常 会 受 到 一 些

声 明 本 公 司 及 全 体 董 事 监 事 高 级 管 理 人 员 承 诺 不 存 在 任 何 虚 假 记 载 误 导 性 陈 述 或 重 大 遗 漏, 并 对 其 真 实 性 准 确 性 完 整 性 承 担 个 别 和 连 带 的 法 律 责 任 本 公 司 负 责 人 和 主 管 会 计 工

untitled

Thesis for the Master degree in Engineering Research on Negative Pressure Wave Simulation and Signal Processing of Fluid-Conveying Pipeline Leak Candi

IP TCP/IP PC OS µclinux MPEG4 Blackfin DSP MPEG4 IP UDP Winsock I/O DirectShow Filter DirectShow MPEG4 µclinux TCP/IP IP COM, DirectShow I

目 录 中 国 中 铁 股 份 有 限 公 司 2015 年 年 度 股 东 大 会 会 议 议 案... 2 议 案 一 : 关 于 2015 年 度 董 事 会 工 作 报 告 的 议 案... 3 议 案 二 : 关 于 2015 年 度 监 事 会 工 作 报 告 的 议 案 议

31 17 www. watergasheat. com km 2 17 km 15 km hm % mm Fig. 1 Technical route of p

透 過 選 擇 Google Street View 場 景 模 式 來 呈 現 實 際 道 路 上 的 狀 況 模 擬 並 且 經 由 預 先 紀 錄 好 的 各 國 都 市 座 標, 讓 使 用 者 可 以 選 擇 各 國 道 路 來 做 行 車 上 的 模 擬 使 本 系 統 不 僅 可 以

西部人居环境学刊2016年第1期.indd

119,,,,,, (, ), : (1),,,,,, (2),,,, (3),,,,,20,,,,,,,,



一般社団法人電子情報通信学会 信学技報 THE INSTITUTE OF ELECTRONICS, IEICE Technical Report INFORMATION THE INSTITUTE OF AND ELECTRONICS, COMMUNICATION ENGINEERS IEICE L

和文タイトル

相 關 技 術, 在 裝 置 上 創 造 出 一 個 令 人 驚 豔 虛 擬 的 幻 境 ; 除 此 之 外, 還 能 與 虛 擬 出 來 的 物 件 進 行 互 動, 已 陸 陸 續 續 被 應 用 在 教 育 研 究 娛 樂 生 活 等 各 個 方 面 認 知 風 格 (Cognitive St

武 汉 理 工 大 学 2015 年 教 师 招 聘 需 求 序 号 学 / 单 位 学 科 和 专 业 方 向 计 划 要 求 1 材 料 科 学 与 工 程 学 ( 含 特 种 功 能 材 料 实 验 室 2 交 通 学 3 管 理 学 ( 含 危 机 灾 害 研 究 中 心 ) 4 机 电 工


黑面琵鷺2015

湖南省自然科学基金

Chien Hsin University of Science and Technology 目 錄 健 行 優 勢 04 研 究 中 心 簡 介 06 招 生 系 所 一 覽 表 08 系 所 介 紹 10 校 園 生 活 42 住 宿 與 交 通 43 一 所 精 緻 有 特 色 的 科 技

厦门创兴科技股份有限公司

Transcription:

虚 拟 三 维 场 景 中 铁 路 模 型 放 样 与 纹 理 贴 图 技 术 研 究 作 者 姓 名 : 高 培 超 专 业 班 级 : 测 绘 工 程 2008010603 指 导 教 师 : 曾 涛 摘 要 铁 路 模 型 是 轨 道 交 通 行 业 虚 拟 三 维 场 景 中 的 重 要 模 型, 其 精 细 程 度 直 接 影 响 着 虚 拟 场 景 的 视 觉 效 果 铁 路 模 型 通 常 使 用 拼 接 法 制 作, 即 以 铁 路 模 型 的 一 段 为 基 础 模 型, 并 由 基 础 模 型 首 尾 相 连 地 拼 接 成 铁 路 模 型 这 种 方 法 的 缺 陷 是 两 个 基 础 模 型 之 间 在 转 弯 处 的 内 侧 会 出 现 重 叠 在 外 侧 会 出 现 空 隙 本 文 提 出 了 一 种 新 的 铁 路 模 型 制 作 算 法 : 在 几 何 模 型 制 作 阶 段, 根 据 铁 路 中 线 和 路 基 截 面 数 据 直 接 计 算 模 型 顶 点 坐 标 法 向 量 和 索 引 数 据, 实 现 放 样 建 模 ; 在 纹 理 贴 图 阶 段, 通 过 建 立 模 型 顶 点 与 纹 理 图 片 像 素 的 映 射 关 系, 实 现 模 型 贴 图 算 法 通 过 C++ 语 言 实 现, 并 将 放 样 生 成 的 铁 路 模 型 加 载 到 中 铁 二 院 虚 拟 三 维 场 景 中 实 践 证 明, 该 算 法 能 够 弥 补 拼 接 法 的 缺 陷, 并 在 模 型 制 作 效 率 和 纹 理 质 量 方 面 优 于 拼 接 法 由 于 铁 路 模 型 具 有 代 表 性, 该 算 法 同 时 可 应 用 于 桥 梁 管 线 等 其 它 线 型 模 型 的 制 作, 具 有 一 定 的 推 广 性 关 键 词 : 铁 路 模 型 ; 放 样 建 模 ; 纹 理 贴 图 ; 虚 拟 场 景 I

Loft-modeling and Texture Mapping of Railway Models in 3D Virtual Scene Abstract : This article presents an algorithm of lofting and texture mapping for railway model. Railway models are among the important models in the virtual 3D scene specialised for transportation industry, and its quality directly affects the visual appeal of the virtual scene. The railway model is generally made completely by splicing together numerous of basic models which are created with 3D Studio Max. At the bends in railway, there will inevitably be interspace between two basic models outside of the turn and overlap inside. A new algorithm to make railway models is proposed. The algorithm using loft-modeling method instead and appearance designing based on texture mapping. Realized through the C++, the algorithm is effective and robust for railway models. The resultant railway models is better than the previous models and was installed in the 3D virtual scene of China Railway Eryuan Engineering Group Co., Ltd. In fact, most of the linear models in 3D Virtual Scene could be created with the algorithm. Keywords: Railway models; Loft-modeling; Texture mapping; Virtual scene II

目 录 第 1 章 前 言...1 1.1 研 究 背 景 与 意 义...1 1.1.1 课 题 由 来...1 1.1.2 国 内 外 研 究 现 状...2 1.1.3 研 究 意 义...3 1.2 研 究 内 容 及 技 术 路 线...3 第 2 章 三 维 图 形 接 口 与 场 景 坐 标 系...4 2.1 三 维 图 形 API 与 引 擎... 4 2.1.1 三 维 图 形 API... 4 2.1.2 三 维 图 形 引 擎...5 2.2 虚 拟 场 景 中 的 坐 标 系...5 第 3 章 铁 路 模 型 几 何 放 样...6 3.1 模 型 放 样 技 术...6 3.2 原 始 数 据 与 预 处 理...6 3.2.1 原 始 数 据...6 3.2.2 数 据 提 取 与 预 处 理...8 3.3 模 型 顶 点 计 算 方 法...9 3.3.1 线 路 起 点 处 的 放 样 计 算...10 3.3.2 中 间 点 位 的 放 样 计 算...13 3.3.3 线 路 终 点 处 的 放 样 计 算...14 3.4 法 向 量 计 算 方 法...14 3.4.1 法 向 量 的 作 用...14 3.4.2 法 向 量 的 算 法...15 3.5 索 引 信 息 计 算 方 法...16 3.5.1 索 引 信 息 的 作 用...16 3.5.2 索 引 信 息 的 算 法...16 第 4 章 铁 路 模 型 纹 理 贴 图...18 4.1 模 型 纹 理 概 述...18 4.2 纹 理 贴 图 机 制...19 4.2.1 纹 理 映 射 思 想...19 III

4.2.2 纹 理 贴 图 关 键...19 4.3 纹 理 贴 图 的 一 般 性 算 法...20 4.3.1 采 用 默 认 的 平 铺 系 数...21 4.3.2 采 用 任 意 的 平 铺 系 数...24 4.3.3 纹 理 贴 图 算 法 小 结...25 4.4 铁 路 模 型 纹 理 贴 图 算 法...26 4.4.1 铁 路 模 型 的 特 殊 性...26 4.4.2 针 对 铁 路 模 型 的 纹 理 贴 图...27 4.4.3 多 纹 理 贴 图 的 原 理...29 第 5 章 技 术 实 现 与 软 件 制 作...33 5.1 技 术 实 现 总 体 思 路...33 5.2 X 文 件 结 构 分 析...33 5.3 数 学 计 算 的 实 现...35 5.4 多 纹 理 贴 图 的 实 现...36 5.5 软 件 界 面 设 计...38 第 6 章 实 际 应 用...40 6.1 在 铁 路 放 样 中 的 应 用...40 6.1.1 原 始 数 据 说 明...40 6.1.2 铁 路 放 样 效 果...41 6.2 潜 在 的 应 用 领 域...41 结 论...43 致 谢...45 参 考 文 献...45 IV

第 1 章 前 言 1.1 研 究 背 景 与 意 义 1.1.1 课 题 由 来 随 着 地 理 信 息 系 统 的 发 展, 其 应 用 已 经 渗 透 到 各 行 各 业 从 测 绘 部 门 的 数 字 测 绘 数 字 地 图 生 产 到 国 土 资 源 部 门 的 资 源 调 查 规 划, 从 环 保 部 门 的 生 态 监 测 环 境 保 护 到 政 府 部 门 的 辅 助 决 策 应 急 响 应, 无 不 穿 插 着 地 理 信 息 系 统 的 身 影 三 维 地 理 信 息 系 统 是 地 理 信 息 系 统 发 展 的 新 方 向, 其 直 观 全 面 多 视 角 的 显 示 效 果 带 来 了 很 多 二 维 显 示 无 法 提 供 的 便 捷, 是 地 理 信 息 系 统 的 当 前 研 究 和 应 用 的 重 点 在 轨 道 交 通 行 业, 以 中 国 中 铁 二 院 工 程 集 团 有 限 责 任 公 司 测 绘 工 程 设 计 研 究 院 ( 简 称 中 铁 二 院 测 绘 院 ) 为 例, 三 维 地 理 信 息 系 统 已 经 广 泛 地 应 用 于 成 果 汇 报 展 示 项 目 招 投 标 等 领 域, 并 初 步 应 用 于 工 程 设 计 领 域 创 建 三 维 地 理 信 息 系 统 的 前 提 和 关 键 是 虚 拟 三 维 场 景, 虚 拟 场 景 的 准 确 性 美 观 性 时 效 性 直 接 影 响 了 三 维 地 理 信 息 系 统 的 制 作 成 本 和 运 行 质 量 虚 拟 三 维 场 景 主 要 由 场 景 和 模 型 两 大 部 分 组 成, 因 此 其 创 建 也 主 要 分 为 场 景 搭 建 和 模 型 制 作 两 部 分 出 于 特 定 的 行 业 背 景, 中 铁 二 院 测 绘 院 对 虚 拟 三 维 场 景 中 铁 路 模 型 的 制 作 质 量 要 求 非 常 高, 其 铁 路 模 型 必 须 同 时 满 足 两 个 条 件 :1 模 型 尺 寸 精 确, 路 线 走 势 与 实 际 铁 路 中 线 高 度 拟 合 ;2 模 型 外 观 漂 亮, 模 型 整 体 高 度 逼 真 在 本 文 之 前, 中 铁 二 院 测 绘 院 采 用 的 铁 路 模 型 制 作 方 法 是 首 先 在 3D Studio Max 中 制 作 长 度 为 5m 的 基 础 模 型, 然 后 根 据 铁 路 中 线 的 长 度, 利 用 基 础 模 型 组 合 成 长 达 千 百 公 里 的 铁 路 在 铁 路 中 线 的 直 线 段 处, 通 过 该 方 法 生 成 的 铁 路 模 型 符 合 要 求 但 当 在 铁 路 中 线 转 弯 处, 两 个 基 础 模 型 的 内 侧 会 出 现 重 叠, 外 侧 会 出 现 空 隙, 直 接 影 响 了 铁 路 模 型 的 美 观 性 和 流 畅 性 基 于 上 述 问 题, 本 文 研 究 课 题 应 运 而 生 提 出 一 种 新 的 铁 路 模 型 制 作 的 方 法, 摆 脱 对 基 础 铁 路 模 型 的 依 赖, 根 据 铁 路 中 线 和 铁 路 路 基 横 截 面, 准 确 快 速 地 生 成 符 合 要 求 的 铁 路 模 型 1

1.1.2 国 内 外 研 究 现 状 铁 路 模 型 并 不 是 虚 拟 三 维 场 景 中 的 常 见 模 型, 大 多 数 虚 拟 三 维 场 景 中 的 地 物 以 房 屋 等 块 状 模 型 为 主, 很 少 存 在 铁 路 等 长 线 型 模 型 因 此, 在 三 维 建 模 领 域, 对 铁 路 模 型 制 作 的 研 究 相 对 较 少, 而 且 往 往 来 自 轨 道 交 通 行 业 Makoto Tanabe [1] 等 人 在 日 本 新 干 线 的 模 拟 和 可 视 化 研 究 中, 开 发 了 基 于 OpenGL 的 显 示 程 序 VIS, 实 现 了 新 干 线 列 车 的 动 画 演 示 在 该 系 统 中, 新 干 线 列 车 模 型 制 作 精 美, 而 铁 路 路 基 模 型 较 为 简 单, 没 有 进 行 复 杂 的 纹 理 映 射 [2] 宋 波 等 人 基 于 ArcGIS Globe 设 计 并 实 现 了 铁 路 三 维 GIS 系 统, 其 三 维 子 模 块 可 以 用 于 显 示 铁 路 沿 线 的 三 维 地 形 场 景, 场 景 中 的 地 物 模 型 主 要 有 铁 路 车 站 信 号 灯 桥 梁 隧 道 等, 地 物 模 型 的 制 作 依 赖 于 第 三 方 建 模 软 件 ( 如 3D Studio Max) Liu Lingwei [3] 等 人 制 作 了 铁 路 模 型 并 放 置 在 场 景 中 以 方 便 铁 路 选 线 设 计, 其 模 型 的 几 何 要 素 通 过 数 学 计 算 得 出, 模 型 显 示 依 赖 于 ArcGIS 组 件 该 方 法 的 优 点 在 于 只 需 要 少 量 的 起 算 数 据 即 可 生 成 铁 路 几 何 模 型, 并 且 考 虑 了 工 程 应 用 中 铁 路 中 线 数 据 和 虚 拟 三 维 场 景 中 数 据 的 不 同, 推 导 了 必 要 的 坐 标 转 换 公 式 [4] 张 弓 等 人 通 过 放 样 建 模 的 方 法 生 成 了 铁 路 三 维 几 何 模 型, 在 放 样 计 算 之 前, 首 先 获 取 了 路 径 对 象 和 截 面 对 象, 然 后 使 用 程 序 计 算 模 型 的 所 有 顶 点 的 三 维 坐 标 在 计 算 过 程 中 采 用 了 相 关 方 法 减 少 了 结 点 冗 余, 提 高 了 计 算 效 率 和 模 型 显 示 速 度 尽 管 铁 路 三 维 可 视 化 的 相 关 研 究 较 少, 但 由 于 道 路 管 道 模 型 与 铁 路 模 型 情 况 类 似, 都 属 于 长 线 型 模 型 且 制 作 方 法 类 同, 所 以 道 路 管 道 模 型 的 制 作 研 究 有 着 很 大 的 参 考 借 鉴 意 义 相 对 于 铁 路 模 型 的 制 作, 道 路 管 道 模 型 的 制 作 技 术 较 为 成 熟 [5] 杜 勤 在 约 束 Delaunay 三 角 网 理 论 的 基 础 上, 提 出 了 一 种 道 路 模 型 的 构 建 方 法, 该 方 法 将 道 路 模 型 和 地 表 模 型 融 为 一 体, 对 二 者 进 行 整 体 构 建, 这 使 得 道 路 模 型 和 地 表 模 型 不 仅 表 面 整 合 在 一 起, 还 使 得 二 者 的 内 部 关 系 完 全 正 确 [6] 蒲 浩 等 人 在 建 模 过 程 中 同 样 将 道 路 模 型 和 地 表 模 型 整 合 为 一 体, 并 在 此 基 础 上 提 出 了 一 种 三 角 形 快 速 定 位 的 算 法, 加 快 了 道 路 模 型 的 建 模 速 度 Tang Luliang [7] 等 人 设 计 并 实 现 了 道 路 三 维 可 视 化 系 统 Virtual Road, 该 系 统 2

中 的 公 路 模 型 通 过 OpenGL 创 建, 与 地 面 模 型 相 互 独 立, 并 采 用 了 细 节 层 次 模 型 (LOD) 加 快 渲 染 速 度, 采 用 OpenGL 中 的 纹 理 映 射 函 数 对 公 路 模 型 进 行 外 表 贴 图 Tahir Rabbani [8] 等 人 在 求 取 模 型 顶 点 坐 标 过 程 中 并 没 有 使 用 数 学 计 算 的 方 法, 而 是 直 接 利 用 激 光 扫 描 仪 获 取 点 云 数 据, 通 过 一 系 列 的 处 理, 最 终 拟 合 得 到 三 维 管 道 模 型, 这 为 后 人 提 供 了 一 种 获 取 点 位 坐 标 的 新 思 路 1.1.3 研 究 意 义 铁 路 模 型 是 轨 道 交 通 行 业 虚 拟 三 维 场 景 中 的 主 要 模 型, 其 制 作 工 作 往 往 耗 时 耗 力, 成 了 制 约 效 率 和 成 本 的 主 要 因 素 之 一, 在 此 背 景 下, 有 必 要 提 出 一 种 操 作 简 便 速 度 快 质 量 高 的 模 型 制 作 方 法 此 外, 铁 路 模 型 作 为 虚 拟 三 维 场 景 中 典 型 的 线 状 模 型, 其 放 样 和 贴 图 算 法 同 样 适 用 于 桥 梁 地 上 高 压 线 地 下 管 道 等 线 状 模 型 的 制 作 过 程, 所 以 其 研 究 具 有 一 定 的 推 广 性 1.2 研 究 内 容 及 技 术 路 线 本 文 研 究 中, 采 用 中 铁 二 院 自 行 研 发 的 虚 拟 场 景 软 件 作 为 测 试 平 台 该 平 台 以 Skyline 软 件 为 底 层 库, 支 持 Skyline 所 能 识 别 的 各 类 模 型 文 件 考 虑 到 算 法 的 自 主 产 权, 整 个 铁 路 模 型 制 作 过 程 将 由 自 行 编 写 的 代 码 和 软 件 实 现, 不 依 赖 于 任 何 建 模 工 具 ( 如 Google SketchUp 3D Studio Max 等 ) 考 虑 到 通 用 性, 最 终 创 建 的 铁 路 模 型 将 以 X 文 件 的 格 式 输 出, 使 其 可 以 被 DirectX 3D Studio Max Skyline 等 软 件 识 别 根 据 实 习 工 作 的 时 间 安 排, 本 文 研 究 内 容 主 要 有 以 下 两 个 方 面 : (1) 研 究 铁 路 几 何 模 型 的 制 作 算 法 ; (2) 研 究 铁 路 三 维 模 型 的 贴 图 算 法 整 个 工 作 的 技 术 路 线 : 首 先 深 入 了 解 中 铁 二 院 测 绘 院 当 前 使 用 的 铁 路 模 型 制 作 方 法, 分 析 其 缺 陷 及 产 生 原 因, 同 时 深 入 学 习 面 向 对 象 的 编 程 思 想, 学 习 计 算 机 图 形 学 基 础 知 识, 学 习 OGRE OpenGL 基 础 知 识 ; 然 后 提 出 新 的 算 法 并 使 用 程 序 实 现 ; 最 后 反 复 测 试 算 法 并 不 断 完 善 3

第 2 章 三 维 图 形 接 口 与 场 景 坐 标 系 三 维 模 型 的 绘 制 依 赖 于 三 维 图 形 接 口, 而 模 型 与 虚 拟 三 维 场 景 的 关 系 通 过 坐 标 系 的 相 互 转 换 来 建 立 三 维 图 形 接 口 和 场 景 坐 标 系 是 本 文 的 研 究 基 础 2.1 三 维 图 形 API 与 引 擎 2.1.1 三 维 图 形 API 三 维 图 形 接 口 是 应 用 程 序 编 程 接 口 的 一 种 应 用 程 序 编 程 接 口 (API, Application Programming Interface), 是 软 件 系 统 不 同 组 成 部 分 衔 接 的 一 种 约 定, 是 一 种 有 效 的 代 码 封 装 模 式, 在 保 护 代 码 的 同 时, 提 供 给 程 序 员 一 种 调 用 系 统 功 能 的 途 径, 实 现 了 应 用 程 序 与 计 算 机 操 作 系 统 之 间 通 信 三 维 图 形 API 作 为 API 的 一 种, 提 供 了 强 大 的 三 维 图 形 处 理 功 能, 目 前 最 为 流 行 的 两 种 三 维 图 形 API 为 OpenGL 和 D3D (1)OpenGL OpenGL 的 前 身 是 SGI 公 司 为 其 图 形 工 作 站 开 发 的 IRIS GL, 是 一 个 工 业 标 准 的 三 维 计 算 机 图 形 软 件 接 口, 用 户 可 以 方 便 地 利 用 这 个 图 形 库, 创 建 出 接 近 光 线 跟 踪 的 高 质 量 静 态 或 动 态 的 三 维 彩 色 图 像 更 重 要 的 是,OpenGL 的 工 作 效 率 [9] 比 光 线 跟 踪 算 法 快 一 个 数 量 级 OpenGL 有 着 广 泛 的 支 持, 并 在 国 际 上 成 立 了 专 门 的 联 合 会 (OARB,OpenGL Architecture Review Board) 领 导 OpenGL 技 术 规 范 的 发 展,OpenGL 已 经 成 为 业 界 唯 一 真 正 开 放 的 跨 平 台 的 图 形 标 准 (2)D3D D3D 是 DirectX 的 一 部 分,DirectX 是 由 微 软 公 司 创 建 的 多 媒 体 编 程 接 口, 由 C++ 编 程 语 言 实 现 DirectX 实 际 上 由 很 多 API 组 成, 按 照 性 质 分 类, 可 以 分 为 四 大 部 分 : 显 示 部 分 声 音 部 分 输 入 部 分 和 网 络 部 分 显 示 部 分 是 图 形 处 理 的 关 键, 可 细 分 为 DirectDraw(DDraw) 和 Direct3D(D3D) 两 大 模 块, 其 中 前 者 主 要 用 于 2D 图 像 加 速, 后 者 主 要 负 责 3D 图 像 的 处 理 与 显 示 D3D 可 以 提 高 3D 图 像 在 Windows 中 的 显 示 性 能, 提 供 了 丰 富 的 3D 功 能 库, 是 游 戏 广 泛 采 用 的 标 准 4

2.1.2 三 维 图 形 引 擎 尽 管 OpenGL 和 D3D 降 低 了 图 形 程 序 开 发 的 难 度, 但 是 随 着 虚 拟 现 实 技 术 的 显 示 要 求 逐 步 提 高, 作 为 底 层 接 口 的 OpenGL 和 D3D 逐 渐 暴 露 出 难 以 克 服 的 困 难, 诸 如 开 发 周 期 长 代 码 可 重 用 性 低 缺 乏 面 向 对 象 的 思 想 等, 而 三 维 图 形 引 擎 的 出 现 解 决 了 这 些 问 题 三 维 图 形 引 擎 对 图 形 应 用 开 发 中 的 常 用 功 能 进 行 了 抽 离, 并 加 以 模 块 化 和 规 [10] 范 化, 其 底 层 是 三 维 图 形 API(OpenGL 或 D3D) 目 前, 主 流 的 三 维 图 形 引 擎 主 要 有 :OGRE OSG Unreal Engine Unity 3D 等 其 中 OGRE 由 于 开 源 性 和 强 大 的 功 能 得 到 越 来 越 多 的 使 用 2.2 虚 拟 场 景 中 的 坐 标 系 在 真 实 世 界 中, 大 多 数 物 体 都 具 有 几 何 特 征, 以 几 何 实 体 的 形 式 存 在, 而 计 算 机 信 息 数 据 处 理 却 以 数 字 为 主 计 算 机 图 形 学 中 引 入 坐 标, 使 其 成 为 了 几 何 实 体 和 计 算 机 数 据 的 纽 带, 使 得 几 何 实 体 可 以 用 一 组 坐 标 值 在 计 算 机 中 表 示 为 了 使 几 何 实 体 数 字 化, 也 为 了 保 证 几 何 实 体 间 相 对 位 置 的 准 确 性, 需 要 定 义 坐 标 系 与 三 维 场 景 相 关 的 坐 标 系 主 要 有 三 种, 分 别 是 模 型 坐 标 系 世 界 坐 标 系 屏 幕 坐 标 系 [11] 模 型 坐 标 系 是 用 于 描 述 几 何 实 体 的 坐 标 系, 该 坐 标 系 也 称 为 局 部 坐 标 系 每 个 几 何 实 体 都 可 以 使 用 自 己 的 模 型 坐 标 系, 不 受 其 它 几 何 实 体 影 响, 用 户 在 创 建 模 型 坐 标 系 时, 往 往 根 据 实 体 的 几 何 特 征 选 取 坐 标 原 点 位 置, 如 创 建 球 体 模 型 时, 模 型 坐 标 系 原 点 与 球 心 重 合 模 型 坐 标 系 虽 然 可 以 精 确 地 描 述 一 个 实 体 的 几 何 外 形, 但 由 于 模 型 坐 标 系 的 特 有 性, 不 同 实 体 往 往 采 用 了 不 同 的 模 型 坐 标 系, 需 要 建 立 一 个 统 一 的 坐 标 系, 才 能 描 述 实 体 与 实 体 之 间 的 空 间 关 系, 这 样 的 统 一 坐 标 系 被 成 为 世 界 坐 标 系 不 同 三 维 图 形 引 擎 中 有 着 不 同 的 世 界 坐 标 系, 例 如 在 OpenGL 中 世 界 坐 标 系 为 右 手 [12] [13] 系, 而 在 DirectX 中 世 界 坐 标 系 为 左 手 系 实 际 上, 虚 拟 三 维 场 景 从 构 建 到 使 用 是 一 个 将 模 型 从 局 部 坐 标 系 到 世 界 坐 标 系 再 到 设 备 坐 标 系 的 转 换 过 程 5

3.1 模 型 放 样 技 术 第 3 章 铁 路 模 型 几 何 放 样 在 三 维 建 模 技 术 中, 通 常 有 两 种 创 建 模 型 的 方 法, 一 种 是 直 接 手 工 建 模, 另 一 种 是 参 数 化 建 模 直 接 手 工 建 模 是 指 设 计 者 直 接 借 助 建 模 软 件 ( 如 Google SketchUp 3D Studio Max 等 ) 手 工 制 作 模 型 的 方 法, 参 数 化 建 模 是 指 利 用 给 定 参 数 ( 如 模 型 顶 点 坐 标 横 截 面 轮 廓 等 ) 通 过 计 算 ( 手 工 或 程 序 ) 生 成 模 型 的 方 法 模 型 放 样 是 参 数 化 建 模 的 一 种 模 型 放 样 是 指 按 照 已 知 的 放 样 路 径 和 截 面 参 数 建 造 几 何 模 型, 也 称 为 几 何 放 样 或 放 样 建 模 模 型 放 样 中 的 放 样 路 径 在 世 界 坐 标 系 中 定 义, 截 面 信 息 在 模 型 坐 标 系 中 定 义, 放 样 结 果 在 世 界 坐 标 系 中 表 示 [14-15] 线 状 模 型 通 常 使 用 模 型 放 样 技 术 创 建, 这 是 因 为 该 技 术 只 需 要 用 户 提 供 少 量 的 初 始 数 据 便 可 快 速 生 成 模 型, 具 有 效 率 高 模 型 精 确 的 优 点 3.2 原 始 数 据 与 预 处 理 3.2.1 原 始 数 据 模 型 放 样 的 原 始 数 据 分 为 铁 路 路 线 中 线 和 铁 路 路 基 横 截 面 两 部 分, 这 也 是 铁 路 模 型 放 样 的 必 要 原 始 数 据 铁 路 路 线 中 线 通 常 由 铁 路 设 计 者 或 测 量 工 作 者 给 出, 在 放 样 建 模 过 程 中, 其 数 值 不 能 更 改 本 文 研 究 工 作 中, 铁 路 中 线 以 DXF 格 式 的 AutoCAD 文 件 形 式 给 出 ( 图 3-1) 6

图 3-1 铁 路 中 线 示 例 ( 全 长 5.2 km) 铁 路 路 基 横 截 面 图 形 通 常 由 建 模 人 员 提 供, 通 常 以 二 维 顶 点 坐 标 列 表 ( 表 3-1) 的 形 式 表 示 铁 路 路 基 由 路 面 和 边 坡 两 部 分 组 成, 其 截 面 轮 廓 如 图 3-2 所 示 铁 路 路 基 横 截 面 数 据 一 般 也 不 能 修 改, 特 别 情 况 下 ( 如 出 于 美 观 等 因 素 考 虑 ), 可 以 进 行 微 调 表 3-1 铁 路 路 基 截 面 信 息 ( 单 位 :m) 序 号 x y 序 号 x y 1 0.1031 0.1359 6 1.8906 1.0000 2 1.2844 0.9249 7 2.0156 0.9289 3 1.3844 0.9289 8 2.1344 0.9249 4 1.5094 1.0000 9 3.3156 0.1359 5 1.7000 1.0000 10 0.1031 0.1359 7

图 3-2 铁 路 路 基 截 面 轮 廓 3.2.2 数 据 提 取 与 预 处 理 在 放 样 流 程 开 始 之 前, 需 要 对 铁 路 中 线 和 铁 路 路 径 信 息 进 行 数 据 提 取 和 预 处 理 操 作 对 于 铁 路 中 线 而 言, 由 于 其 往 往 呈 现 为 不 规 则 曲 线 状, 很 难 分 割 成 若 干 条 直 线 段 和 规 则 的 弧 线 段, 所 以 很 难 被 计 算 机 处 理 在 实 际 操 作 中, 需 要 按 照 一 定 的 采 样 间 隔 ( 即 步 长 ) 提 取 点 位, 最 终 用 一 系 列 的 线 段 来 模 拟 铁 路 中 线 这 一 过 程 分 为 两 大 步 :1 选 取 合 适 的 步 长 ;2 提 取 点 坐 标 对 于 铁 路 截 面 而 言, 在 数 据 放 样 之 前, 需 要 对 截 面 顶 点 坐 标 进 行 必 要 的 平 移 和 坐 标 系 转 换 具 体 操 作 中, 本 文 借 助 第 三 方 插 件, 在 AutoCAD 软 件 中 将 铁 路 中 线 分 割 成 大 量 的 长 度 相 等 的 直 线 段, 然 后 按 顺 序 提 取 所 有 线 段 的 端 点 坐 标 用 大 量 直 线 段 模 拟 曲 线 的 精 度 取 决 于 段 长, 即 直 线 段 长 度 段 长 越 小, 直 线 段 数 量 越 多, 模 拟 精 度 越 高, 但 放 样 计 算 效 率 越 低 ; 反 之 亦 然 本 文 中, 直 线 段 长 度 为 5m 1 对 截 面 顶 点 坐 标 进 行 平 移 操 作 的 目 的 是 使 关 键 点 与 模 型 坐 标 系 ( 即 用 户 绘 制 截 面 时 采 用 的 平 面 直 角 坐 标 坐 标 系 ) 的 原 点 重 合 ( 图 3-3) 关 键 点 与 模 型 坐 标 系 原 点 重 合 是 整 个 数 据 放 样 计 算 的 前 提 1 本 文 将 铁 路 中 线 与 铁 路 路 基 截 面 的 交 点 命 名 为 关 键 点 8

图 3-3 平 移 后 的 铁 路 路 基 截 面 ( 关 键 点 与 坐 标 系 原 点 重 合 ) 相 较 于 平 移 操 作 而 言, 坐 标 系 转 换 并 不 总 是 必 须 的, 是 否 需 要 进 行 坐 标 系 转 换 取 决 于 三 维 场 景 中 的 世 界 坐 标 系, 本 文 采 用 DirectX 中 的 世 界 坐 标 系 由 于 DirectX 中 的 世 界 坐 标 系 为 左 手 系, 而 用 户 设 计 铁 路 路 基 截 面 时 通 常 采 用 右 手 系, 所 以 有 必 要 进 行 坐 标 系 转 换, 将 右 手 系 转 换 为 左 手 系 ( 这 里 只 需 要 将 X 轴 反 向, 如 图 3-4) 图 3-4 坐 标 系 转 换 操 作 后 的 铁 路 路 基 截 面 (x 轴 已 反 向 ) 3.3 模 型 顶 点 计 算 方 法 铁 路 模 型 放 样 分 为 三 大 步 骤 :1 模 型 顶 点 计 算 ;2 法 向 量 计 算 ;3 索 引 信 息 计 算 模 型 顶 点 计 算 是 指 根 据 预 处 理 后 的 铁 路 中 线 和 铁 路 截 面, 计 算 铁 路 模 型 的 顶 点 总 数 和 各 顶 点 的 三 维 坐 标 顶 点 计 算 是 法 向 量 计 算 和 索 引 信 息 计 算 的 基 础 在 实 际 计 算 过 程 中, 根 据 计 算 原 理 的 不 同, 可 以 将 铁 路 中 线 上 的 点 位 分 为 起 9

点 中 间 点 终 点 三 大 类, 根 据 点 位 类 型 的 不 同, 执 行 不 同 的 算 法 为 了 简 化 问 题, 此 处 假 设 一 条 非 常 短 的 铁 路 中 线, 假 设 经 过 采 样 操 作, 只 得 到 了 4 个 点 (M N P Q), 如 图 3-5, 其 中 M 点 为 线 路 起 点,Q 点 为 线 路 终 点,N 点 和 P 点 为 线 路 中 间 点 假 设 铁 路 路 基 只 有 一 级 边 坡, 并 将 横 截 面 简 化 为 三 角 形 表 示, 如 图 3-5, 此 时, 铁 路 路 基 截 面 只 有 3 个 顶 点 (A B C) 图 3-5 假 设 的 路 基 截 面 ( 左 ) 和 铁 路 中 线 ( 右 ) 在 图 3-5 中,O-XY 为 模 型 坐 标 系,O1-X1Y1Z1 为 世 界 坐 标 系 在 接 下 来 的 三 个 小 节 中, 将 分 别 阐 述 M 点 的 放 样 算 法 N/P 点 放 样 算 法 Q 点 的 放 样 算 法 3.3.1 线 路 起 点 处 的 放 样 计 算 线 路 起 点 处 的 放 样 计 算 是 中 间 点 处 和 终 点 处 放 样 计 算 的 基 础, 其 计 算 结 果 将 直 接 影 响 到 其 余 所 有 点 的 计 算 过 程, 其 正 确 性 和 精 度 级 别 也 将 直 接 影 响 整 个 模 型 放 样 的 准 确 性 其 放 样 算 法 如 下 : (1) 将 二 维 模 型 坐 标 系 转 换 为 三 维 模 型 坐 标 系 由 于 截 面 图 形 位 于 二 维 模 型 坐 标 系 中, 而 铁 路 中 线 位 于 三 维 世 界 坐 标 系 中, 所 以 需 要 先 为 模 型 顶 点 添 加 z 坐 标 值, 将 二 维 模 型 坐 标 系 转 换 为 三 维 模 型 坐 标 系, 将 二 维 空 间 扩 展 至 三 维 空 间 为 了 方 便 计 算, 一 般 将 所 有 新 添 加 的 z 坐 标 值 设 置 为 零 本 步 操 作 完 成 之 后, 相 当 于 将 截 面 ABC 从 模 型 坐 标 系 移 动 至 世 界 坐 标 系, 从 二 维 空 间 挪 动 至 三 维 空 间 ( 图 3-6) 10

图 3-6 为 截 面 顶 点 添 加 z 坐 标, 且 z=0 (2) 计 算 四 元 数 1 四 元 数 的 定 义 四 元 数 的 概 念 由 英 国 数 学 家 威 廉 卢 云 哈 密 顿 (Willian Rowan Hamilton) 于 1843 年 最 先 提 出, 四 元 数 将 二 维 空 间 中 的 复 数 扩 展 到 三 维 空 间 中, 虽 然 意 义 重 大, 但 在 其 后 很 长 一 段 时 间 中, 四 元 数 一 直 没 有 为 人 们 所 熟 悉, 没 有 得 到 深 入 的 研 究 近 几 十 年 来, 随 着 计 算 机 的 快 速 发 展, 四 元 数 在 相 关 领 域 [16-17] 被 广 泛 应 用 四 元 数 可 以 表 示 矢 量 和 物 体 的 旋 转, 比 旋 转 矩 阵 更 为 高 效, 并 弥 补 了 旋 转 矩 阵 的 某 些 缺 陷 [18] 四 元 数 由 一 个 实 数 部 分 和 三 个 虚 数 部 分 组 成, 其 表 示 如 下 : Q w bi cj dk (3-1) 2 2 2 式 中 w b c d 为 实 数, i j k 为 虚 数, 且 满 足 i j k 1 四 元 数 也 可 以 表 示 为 : w, v 或 [ w, ( x, y, z)], 其 中 w 为 标 量, v ( x, y, z) 为 矢 量 2 四 元 数 的 意 义 四 元 数 可 以 通 过 存 储 轴 角 对 的 方 式 来 表 示 方 位 假 设 n 为 旋 转 轴, 为 旋 转 角 度, 则 该 方 位 可 以 用 四 元 数 Q 表 示, 其 中 : Q [cos( / 2),sin( / 2) n] (3-2) 四 元 数 可 以 高 效 简 洁 地 表 示 矢 量 的 旋 转 设 矢 量 α 旋 转 角 变 成 矢 量 β, 且 α β r, 同 时 设 垂 直 于 α β 所 在 平 面 的 旋 轴 方 向 单 位 矢 量 为 e n, 转 动 方 向 与 转 轴 方 向 遵 循 右 手 定 则 因 为 11

2 α β r cos (3-3) α β e 2 n r sin (3-4) 故 2 2 βα β α β α α β α β r cos e r sin (3-5) n β e α 2 2 1 ( r cos nr sin ) 1 2 2 2 ( r cos nr sin )( ) (cos n sin ) r e α e α (3-6) 即 (cos e sin ) a (3-7) 由 此 可 得, 形 如 cos e n n sin 的 四 元 数 可 以 表 示 矢 量 旋 转 以 e n 为 旋 转 轴, 使 垂 直 于 转 轴 的 平 面 内 的 一 个 矢 量 按 右 手 螺 旋 方 向 转 过 角 3 四 元 数 的 计 算 四 元 数 的 计 算 复 杂, 在 实 际 应 用 中, 可 以 使 用 Matlab 等 软 件 计 算 四 元 数 2 在 此 处, 论 文 使 用 OGRE 三 维 引 擎 数 学 库 函 数 计 算 OZ 轴 旋 转 至 MN 方 向 的 四 元 数 Quaternion 根 据 的 Quaternion 值, 可 以 方 便 快 捷 地 调 整 坐 标 系 的 姿 态 图 3-7 (3) 调 整 三 维 模 型 坐 标 系 的 姿 态 利 用 四 元 数 Quaternion 调 整 三 维 模 型 坐 标 系 的 姿 态, 使 OZ 与 MN 同 向, 如 图 3-7 姿 态 调 整 后 三 维 模 型 坐 标 系 假 设 坐 标 系 旋 转 之 后, 点 A B C 的 对 应 点 依 次 为 A1 B1 C1, 则 调 整 三 维 模 型 坐 标 系 姿 态 的 数 学 计 算 方 法 为 : 2 三 维 图 形 引 擎 OGRE 已 经 编 写 了 完 善 的 数 学 计 算 功 能 库 12

OA 1 Quaternion* OA (3-8) OB 1 Quaternion* OB (3-9) OC 1 Quaternion* OC (3-10) (4) 将 三 维 模 型 坐 标 系 的 原 点 移 动 至 M 点 将 三 维 模 型 坐 标 系 的 原 点 移 动 至 M 点, 相 当 于 将 三 维 模 型 坐 标 系 中 的 所 有 顶 点 与 M 点 相 加, 设 点 A1 B1 C1 的 对 应 点 依 次 为 A2 B2 C2, 则 有 计 算 式 : x x x A B C 2 2 2 x x x A B C 1 1 1 x x x M M M, y, y A B, y C 2 2 2 y y y A B C 1 1 1 y y y M M M, z, z A B, z C 2 2 2 z z A B z 1 1 C 1 z z M M z 计 算 完 成 后 的 效 果 如 图 3-8 所 示,A2 B2 C2 即 为 最 终 计 算 结 果 M (3-11) 图 3-8 将 三 维 模 型 坐 标 系 的 原 点 移 动 至 M 点 3.3.2 中 间 点 位 的 放 样 计 算 中 间 点 是 指 除 起 点 终 点 以 外 的 其 余 路 径 点 在 假 设 的 铁 路 中 线 中, 中 间 点 是 指 点 N 和 点 P 中 间 点 位 的 放 样 计 算 是 建 立 在 起 点 放 样 结 果 ( 点 A2 B2 C2) 的 基 础 之 上 的 以 点 N 处 放 样 计 算 为 例, 其 过 程 可 被 概 括 为 :1 计 算 点 N 处 的 横 截 平 面 Plane-N;2 依 次 计 算 以 A2 B2 C2 为 起 点,MN 为 方 向 向 量 的 射 线 Ray-A Ray-B Ray-C;3 分 别 计 算 Ray-A Ray-B Ray-C 与 Plane-N 的 交 点 A3 B3 C3 点 P 处 的 放 样 计 算 原 理 与 点 N 类 似, 其 过 程 为 :1 计 算 点 P 处 的 横 截 平 面 Plane-P;2 依 次 计 算 以 A3 B3 C3 为 起 点,NP 为 方 向 向 量 的 射 线 Ray-A Ray-B 13

Ray-C;3 分 别 计 算 Ray-A Ray-B Ray-C 与 Plane-P 的 交 点 A4 B4 C4 综 上 所 述, 中 间 点 位 的 放 样 计 算 可 分 为 计 算 横 截 平 面 计 算 射 线 和 打 点 三 部 分, 其 难 点 在 于 横 截 平 面 的 计 算, 下 面 给 出 本 文 采 用 的 计 算 方 法 : 图 3-9 横 截 平 面 的 计 算 过 程 1 如 图 3-9 所 示, 分 别 计 算 向 量 MN NP 的 单 位 向 量 a b ; 2 计 算 向 量 c, 其 中 c = a + b ; 3 计 算 向 量 d, 其 中 d = b a ; 4 计 算 向 量 e, 其 中 e = d c ; 5 根 据 点 N 和 向 量 e, 通 过 平 面 方 程 的 点 法 式 创 建 平 面 方 程 3.3.3 线 路 终 点 处 的 放 样 计 算 Ray-C; 相 较 而 言, 线 路 终 点 处 的 放 样 计 算 最 为 简 单 其 过 程 为 : 1 计 算 过 点 Q 且 以 PQ 为 垂 线 的 平 面 Plane-Q; 2 依 次 计 算 以 A4 B4 C4 为 起 点, PQ 为 方 向 向 量 的 射 线 Ray-A Ray-B 2 分 别 计 算 Ray-A Ray-B Ray-C 与 Plane-Q 的 交 点 A5 B5 C5 至 此, 模 型 顶 点 已 经 全 部 计 算 完 毕 3.4 法 向 量 计 算 方 法 3.4.1 法 向 量 的 作 用 三 维 场 景 中 的 物 体 由 三 角 形 面 片 组 成, 每 个 三 角 形 面 片 的 顶 点 坐 标 值 用 来 确 14

定 三 维 物 体 的 形 状 和 空 间 位 置, 而 顶 点 的 可 见 度 亮 度 以 及 在 虚 拟 光 照 条 件 下 所 表 现 出 来 的 颜 色, 则 由 顶 点 的 法 向 量 决 定 法 向 量 定 义 了 模 型 表 面 对 光 照 的 响 应 模 型 的 亮 度 主 要 取 决 于 其 外 表 面 的 反 射 光 量, 而 反 射 光 量 与 入 射 光 线 方 向 和 法 线 方 向 的 夹 角 大 小 成 反 比, 即 夹 角 越 小, 反 射 光 量 越 大, 进 而 模 型 表 面 看 起 来 就 会 越 光 亮 因 此, 只 有 为 模 型 附 加 了 法 向 量 信 息, 才 能 进 行 三 维 模 型 的 光 照 处 理 法 向 量 分 为 平 面 法 向 量 和 顶 点 法 向 量 两 类, 平 面 法 向 量 是 指 三 角 形 面 片 的 法 向 量, 顶 点 法 向 量 是 指 模 型 顶 点 的 法 向 量 两 者 的 区 别 在 于, 如 果 使 用 平 面 法 向 量, 那 么 在 光 照 情 况 下, 整 个 三 角 形 面 片 将 表 现 出 同 一 光 照 效 果, 相 邻 面 片 由 于 光 照 效 果 的 不 同, 将 表 现 出 明 显 的 棱 线 ; 如 果 使 用 了 点 法 向 量, 三 角 形 面 片 的 光 照 效 果 将 根 据 顶 点 的 光 照 效 果 进 行 插 值 计 算, 从 而 表 示 出 一 种 渐 变 的 效 果 其 效 果 对 比 如 图 3-10 和 图 3-11 容 易 发 现, 使 用 点 法 向 量 的 优 点 在 于 可 以 使 模 型 的 视 觉 效 果 更 为 平 滑 柔 和 图 3-10 平 面 法 向 量 效 果 [19] 图 3-11 顶 点 法 向 量 效 果 [19] 顶 点 法 向 量 与 平 面 法 向 量 的 关 系 为 : 顶 点 法 向 量 等 同 于 共 享 该 顶 点 的 所 有 三 角 形 面 片 的 平 面 法 向 量 的 均 值 3.4.2 法 向 量 的 算 法 基 于 不 同 的 思 想, 本 文 提 出 了 两 种 计 算 法 向 量 的 方 法 方 法 (1): 假 设 模 型 顶 点 为 A, 点 A 所 处 截 面 上 的 中 线 点 ( 即 与 A 点 对 应 的 关 键 点 ) 为 B, 那 么 计 算 向 量 BA 量 ; 并 归 一 化, 进 而 用 向 量 BA 表 示 顶 点 A 的 法 向 方 法 (2): 假 设 模 型 顶 点 为 A0, 在 截 面 上 与 A0 点 相 邻 的 两 个 点 分 别 为 A1 15

A2, 计 算 向 量 A1 A0 和 A2 A0 用 向 量 a 表 示 顶 点 A0 的 法 向 量 成 都 理 工 大 学 毕 业 设 计 ( 论 文 ) 并 分 别 归 一 化, 然 后 计 算 向 量 a A1 A0 A2 A0 并 归 一 化, 在 实 际 应 用 中, 方 法 (2) 优 于 方 法 (1), 这 是 因 为 方 法 (1) 的 前 提 是 关 键 点 必 须 是 截 面 图 形 的 几 何 中 心 点, 而 方 法 (2) 则 没 有 此 限 制 实 验 表 明, 如 果 关 键 点 不 是 截 面 图 形 的 几 何 中 心 点, 却 用 了 方 法 (1) 计 算 所 有 模 型 顶 点 的 法 向 量, 那 么 将 放 样 模 型 导 入 虚 拟 三 维 场 景 中 之 后, 会 产 生 不 理 想 的 光 照 效 果 3.5 索 引 信 息 计 算 方 法 3.5.1 索 引 信 息 的 作 用 索 引 信 息 是 指 模 型 中 所 有 三 角 面 的 顶 点 的 索 引 号 列 表 索 引 信 息 对 于 三 维 模 型 而 言 是 至 关 重 要 的, 如 果 没 有 索 引 信 息, 三 维 模 型 就 不 能 称 之 为 模 型, 而 只 是 一 系 列 空 间 独 立 散 点, 点 与 点 之 间 没 有 任 何 关 系 只 有 添 加 了 索 引 信 息, 点 与 点 之 间 的 拓 扑 关 系 才 得 以 确 定, 三 角 面 才 得 以 形 成, 三 维 模 型 才 得 以 正 确 显 示 由 于 相 邻 的 图 元 ( 如 三 角 面 ) 可 以 共 享 顶 点, 同 一 顶 点 的 坐 标 只 需 在 内 存 中 存 储 一 次, 多 次 使 用 时 通 过 索 引 号 引 用 即 可 因 此, 索 引 信 息 可 以 达 到 节 省 系 统 内 存 提 高 显 示 效 率 的 功 效 索 引 信 息 包 括 两 方 面 内 容 : 模 型 的 三 角 面 个 数 和 每 一 个 三 角 面 的 顶 点 索 引 值 以 正 方 体 模 型 为 例, 正 方 体 模 型 共 有 8 个 顶 点,12 个 三 角 面, 相 应 地, 在 创 建 正 方 体 模 型 时, 就 需 要 计 算 12 条 索 引 值, 以 表 示 12 个 三 角 面 3.5.2 索 引 信 息 的 算 法 不 同 的 三 维 动 画 引 擎, 对 索 引 值 的 顺 序 有 着 不 同 的 要 求, 而 索 引 值 的 顺 序 则 决 定 了 不 同 渲 染 面 本 文 以 DirectX 为 例, 说 明 索 引 信 息 的 计 算 方 法 在 DirectX 中, 顺 时 针 索 引 顺 序 代 表 渲 染 物 体 的 正 面 ( 即 当 前 正 对 观 察 者 的 一 面 ), 逆 时 针 索 引 顺 序 代 表 渲 染 物 体 的 反 面 ( 即 当 前 背 对 观 察 者 的 一 面 ) 由 于 我 们 关 注 三 维 模 型 的 外 表 面 渲 染 效 果, 所 以 在 索 引 值 计 算 过 程 中, 本 文 采 用 顺 时 针 顺 序 在 索 引 信 息 的 计 算 中, 本 文 采 用 以 下 算 法 : 16

图 3-12 索 引 信 息 的 计 算 1 为 所 有 模 型 顶 点 添 加 序 号 信 息, 从 0 开 始 计 数, 并 以 上 节 中 模 型 顶 点 的 计 算 次 序 为 编 号 顺 序 ; 2 如 图 3-12, 将 三 维 模 型 的 顶 点 排 列 成 x 列, 其 中 x 等 于 铁 路 中 线 上 路 径 点 的 个 数 ; 3 在 每 一 列 处, 将 该 列 对 应 路 径 点 处 的 截 面 顶 点 从 上 到 下 依 次 排 列 ( 图 3-12) 需 要 特 别 注 意 : 若 截 面 上 有 y 1个 顶 点, 那 么 此 处 会 有 y 行 ; 4 按 照 一 定 的 规 则 ( 先 行 后 列 或 先 列 后 行 ) 和 箭 头 顺 序, 遍 历 图 3-12 中 所 有 的 三 角 形, 存 储 节 点 的 索 引 值, 生 成 2*( x 1)*( y 1) 个 三 角 面 的 索 引 信 息 表 3-1 为 计 算 生 成 的 索 引 信 息, 在 该 索 引 信 息 中, 共 有 18 条 索 引, 每 条 索 引 由 3 个 整 数 数 字 组 成 表 3-2 计 算 生 成 的 索 引 信 息 序 号 索 引 值 序 号 索 引 值 序 号 索 引 值 1 0-4-1 7 3-7-4 13 6-10-7 2 0-3-4 8 3-6-7 14 6-9-10 3 1-5-2 9 4-8-5 15 7-11-8 4 1-4-5 10 4-7-8 16 7-10-11 5 2-3-0 11 5-6-3 17 8-9-6 6 2-5-3 12 5-8-6 18 8-11-9 17

4.1 模 型 纹 理 概 述 第 4 章 铁 路 模 型 纹 理 贴 图 在 建 造 三 维 模 型 过 程 中, 除 了 添 加 虚 拟 光 照 效 果 来 模 拟 自 然 光 照 之 外, 还 需 要 通 过 对 模 型 表 面 细 节 的 模 拟 来 增 强 模 型 的 真 实 感 计 算 机 图 形 学 中 的 纹 理 可 以 [20] 分 为 颜 色 纹 理 几 何 纹 理 和 过 程 纹 理 三 大 类 三 类 纹 理 各 有 特 点, 并 且 有 着 不 同 的 用 途 (1) 颜 色 纹 理 颜 色 纹 理 模 拟 了 模 型 表 面 的 光 学 属 性, 而 光 学 属 性 决 定 了 模 型 表 面 的 色 彩 和 亮 度 简 单 的 颜 色 纹 理 由 单 一 的 色 彩 组 成, 适 用 于 色 泽 单 调 的 模 型, 比 如 城 市 地 下 管 网 模 型 旗 杆 模 型 等 复 杂 的 颜 色 纹 理 又 称 为 图 片 纹 理, 旨 在 模 拟 模 型 表 面 精 致 的 复 杂 色 彩, 图 片 纹 理 多 在 外 存 ( 相 对 于 计 算 机 内 存 而 言 ) 中 创 建, 采 用 纹 理 映 射 技 术 覆 盖 到 模 型 表 面 (2) 几 何 纹 理 几 何 纹 理 又 称 凸 凹 纹 理, 旨 在 表 现 因 模 型 表 面 的 微 观 几 何 形 状 凸 凹 不 平 而 呈 现 出 来 的 粗 糙 质 感 几 何 纹 理 解 决 了 颜 色 纹 理 只 能 在 光 滑 平 面 上 贴 图 的 缺 陷, 其 [21] 纹 理 映 射 过 程 可 以 基 于 离 散 点 或 画 元 ( 构 成 模 型 表 面 纹 理 的 基 本 小 几 何 体 ) 实 [22] 现 几 何 纹 理 和 颜 色 纹 理 主 要 差 别 是 前 者 由 不 规 则 拓 扑 连 接 的 网 格 (mesh) 构 成, 而 后 者 由 规 则 排 列 的 像 素 表 示 (3) 过 程 纹 理 在 颜 色 纹 理 和 几 何 纹 理 的 映 射 方 法 中, 纹 理 函 数 均 定 义 在 二 维 纹 理 空 间 上, 其 优 点 是 直 观, 但 缺 点 是 在 复 杂 曲 面 的 纹 理 映 射 中 表 现 欠 佳 过 程 纹 理 直 接 在 三 维 空 间 中 用 纹 理 函 数 定 义, 从 而 形 成 三 维 纹 理 空 间 过 程 纹 理 主 要 用 于 模 拟 自 然 界 中 常 见 的 石 块 木 头 等 物 体 的 纹 理 根 据 铁 路 模 型 的 实 际 情 况, 在 本 文 中 采 用 图 片 纹 理 对 铁 路 模 型 进 行 贴 图, 这 一 过 程 也 称 为 纹 理 贴 图 18

4.2 纹 理 贴 图 机 制 4.2.1 纹 理 映 射 思 想 三 维 模 型 的 纹 理 贴 图, 并 不 是 将 图 片 真 正 意 义 上 地 贴 在 模 型 外 表, 而 在 采 用 纹 理 映 射 思 想, 将 图 片 映 射 至 模 型 表 面 显 示 纹 理 映 射 是 显 卡 的 通 用 功 能 [23], 是 计 算 机 图 形 学 中 一 项 非 常 重 要 的 技 术 与 传 统 的 几 何 造 型 技 术 原 理 不 同, 纹 理 映 射 实 际 上 是 建 立 了 纹 理 空 间 和 物 体 表 面 空 间 的 映 射 关 系, 有 着 贴 图 速 度 快 显 示 效 率 高 的 优 点, 在 虚 拟 现 实 游 戏 制 作 和 三 维 建 模 中 得 到 了 广 泛 应 用 当 一 张 图 片 在 贴 图 过 程 被 多 次 使 用 时, 纹 理 映 射 技 术 可 以 避 免 图 片 的 多 次 拷 贝, 从 而 大 量 地 节 省 存 储 空 间 这 在 铁 路 三 维 模 型 的 纹 理 贴 图 中 用 途 很 大, 假 设 需 要 在 铁 路 路 基 边 坡 表 面 使 用 草 坪 纹 理, 并 且 假 设 草 坪 纹 理 图 片 的 实 际 宽 度 为 5m, 如 果 不 使 用 纹 理 映 射 思 想, 那 么 完 成 1km 的 铁 路 双 侧 边 坡 贴 图, 就 需 要 400 份 草 坪 纹 理 图 片 的 拷 贝, 极 大 地 浪 费 了 存 储 空 间 并 降 低 了 操 作 效 率 4.2.2 纹 理 贴 图 关 键 纹 理 贴 图 的 关 键 在 于 确 定 图 片 在 模 型 外 表 面 上 的 具 体 位 置, 其 位 置 可 以 用 纹 理 坐 标 系 中 的 坐 标 值 表 示 纹 理 坐 标 系 ( 本 文 只 探 讨 二 维 纹 理 坐 标 系 ) 类 似 于 笛 卡 尔 坐 标 系, 默 认 情 况 下 以 纹 理 图 片 最 左 下 角 的 坐 标 为 ( 0,0) 点, 最 右 上 角 坐 标 为 ( 1,1 ) 点, 即 有 效 坐 标 的 取 值 范 围 为 {( x, y) 0 x 1,0 y 1} 纹 理 图 片 中 每 一 个 像 素 点 的 位 置 都 可 以 用 纹 理 坐 标 表 示 出 来 与 纹 理 贴 图 相 关 的 两 个 重 要 参 数 是 x 方 向 平 铺 系 数 (Kx) 和 y 方 向 平 铺 系 数 (Ky), 二 者 分 别 决 定 了 纹 理 图 片 在 纹 理 坐 标 系 x 轴 方 向 和 y 轴 方 向 的 平 铺 次 数 默 认 情 况 下,x 方 向 平 铺 系 数 和 y 方 向 平 铺 系 数 均 为 1, 即 Kx Ky 1, 表 示 用 当 前 图 片 填 充 整 个 模 型 外 表 面 在 非 默 认 情 况, 纹 理 坐 标 系 最 右 上 角 坐 标 将 由 ( 1,1) 变 为 ( Kx, Ky) 平 铺 系 数 的 效 果 如 图 4-1 所 示 19

(a) Kx=1 Ky=1 时 贴 图 效 果 (b) Kx=2 Ky=2 时 贴 图 效 果 (c) Kx=1 Ky=2 时 贴 图 效 果 (d) Kx=3 Ky=1 时 贴 图 效 果 图 4-1 平 铺 系 数 的 作 用 ( 红 色 虚 线 由 手 工 添 加 ) 容 易 发 现, 通 过 控 制 x 方 向 平 铺 系 数 和 y 方 向 平 铺 系 数, 可 以 自 动 地 拉 伸 或 压 缩 纹 理 图 片, 并 将 所 有 图 片 拼 接 在 一 起, 进 而 填 充 整 个 贴 图 区 域, 最 终 达 到 良 好 的 贴 图 效 果 考 虑 到 铁 路 三 维 模 型 是 典 型 的 长 线 状 模 型, 所 以 在 铁 路 三 维 模 型 的 贴 图 过 程 中, 需 要 为 铁 路 中 线 方 向 设 置 较 大 的 平 铺 系 数, 且 该 方 向 平 铺 系 数 应 与 路 线 长 度 正 相 关 4.3 纹 理 贴 图 的 一 般 性 算 法 模 型 贴 图 是 一 个 相 对 复 杂 的 过 程, 对 于 纹 理 图 片 而 言, 在 建 立 纹 理 坐 标 系 之 后, 需 要 根 据 平 铺 系 数 确 定 有 效 值 范 围 ; 对 于 模 型 而 言, 需 要 先 按 照 一 定 的 规 则 拆 剪 外 表 面, 然 后 平 铺 成 平 面, 将 外 表 面 从 三 维 空 间 转 换 至 二 维 空 间 最 终 通 过 数 学 计 算 的 方 法, 建 立 模 型 外 表 面 与 纹 理 图 片 的 对 应 关 系 整 个 流 程 如 图 4-2 所 示 20

图 4-2 纹 理 贴 图 流 程 简 便 起 见, 下 文 以 图 4-3 所 示 长 方 体 为 例, 说 明 本 文 纹 理 贴 图 过 程 中 的 主 要 算 法 长 方 体 是 虚 拟 三 维 场 景 中 最 基 本 的 模 型 之 一, 是 大 多 数 线 状 模 型 的 雏 形 图 4-3 中 的 长 方 体 由 两 个 子 长 方 体 构 成, 共 有 12 个 顶 点 图 4-3 以 该 长 方 体 为 例, 说 明 纹 理 贴 图 算 法 4.3.1 采 用 默 认 的 平 铺 系 数 默 认 情 况 下,x 方 向 平 铺 系 数 和 y 方 向 平 铺 系 数 均 为 1, 即 Kx Ky 1 此 时, 纹 理 贴 图 算 法 如 下 : (1) 选 择 纹 理 图 片 并 建 立 纹 理 坐 标 系 进 行 纹 理 贴 图 操 作 之 前, 需 要 选 取 合 适 的 图 片 并 进 行 预 处 理 如 果 不 需 要 在 三 维 虚 拟 场 景 对 模 型 进 行 近 距 离 观 察, 可 以 适 当 调 低 纹 理 图 片 的 分 辨 率, 以 减 轻 纹 理 映 射 插 值 过 程 中 系 统 的 处 理 负 担, 从 而 提 高 显 示 效 率 本 节 以 图 4-4 为 例, 将 图 4-4 作 为 纹 理 图 片, 映 射 至 长 方 体 模 型 外 表 面 图 4-4 以 该 图 为 纹 理 图 片, 映 射 至 长 方 体 模 型 外 表 面 纹 理 图 片 预 处 理 之 后, 需 要 创 建 纹 理 坐 标 系, 纹 理 坐 标 系 以 纹 理 图 片 最 左 下 21

角 的 坐 标 为 ( 0,0) 点, 以 水 平 向 右 为 x 轴 正 方 向, 以 竖 直 向 上 为 y 轴 正 方 向, 即 纹 理 图 片 处 于 纹 理 坐 标 系 的 第 一 象 限, 如 图 4-5 所 示 图 4-5 建 立 纹 理 坐 标 系 (2) 确 定 纹 理 坐 标 有 效 值 范 围 图 4-6 确 定 纹 理 坐 标 有 效 值 范 围 纹 理 坐 标 的 有 效 值 范 围 取 决 于 x 方 向 平 铺 系 数 Kx 和 y 方 向 平 铺 系 数 Ky 此 处 Kx Ky 1, 故 纹 理 坐 标 有 效 值 范 围 为 {( x, y) 0 x 1,0 y 1}, 这 相 当 于 规 定 了 纹 理 图 片 右 上 角 顶 点 的 纹 理 坐 标 值, 如 图 4-6 所 示 (3) 拆 剪 模 型 外 表 面 并 设 置 附 加 点 沿 棱 线 拆 剪 模 型 外 表 面, 然 后 将 外 表 面 平 铺, 并 设 置 附 加 点 如 图 4-7 所 示, 红 色 点 为 长 方 体 模 型 原 有 顶 点, 黄 色 点 为 纹 理 贴 图 过 程 中 设 置 的 附 加 点, 实 际 上, 在 三 维 空 间 中, 附 加 点 与 第 一 行 中 对 应 的 红 色 点 重 合 需 要 特 别 注 意 的 是, 并 不 是 所 有 时 候 都 需 要 设 置 附 加 点 图 4-7 拆 剪 模 型 外 表 面 并 设 置 附 加 点 ( 黄 色 ) (4) 将 外 表 面 放 置 到 纹 理 坐 标 系 的 有 效 值 范 围 区 中 为 了 方 便 计 算 所 有 模 型 顶 点 及 其 附 加 点 在 纹 理 坐 标 系 中 的 对 应 坐 标, 需 要 将 图 4-7 中 所 示 的 平 铺 后 的 外 表 面 放 置 到 纹 理 坐 标 系 的 有 效 值 范 围 区 中, 如 图 4-8 所 示 22

图 4-8 将 外 表 面 放 置 到 纹 理 坐 标 系 的 有 效 值 范 围 区 中 这 里 的 外 表 面 恰 好 是 规 则 的 长 方 形, 跟 纹 理 图 片 外 形 相 似 如 果 外 表 面 是 不 规 则 图 形, 需 要 注 意 其 必 须 完 全 处 于 纹 理 坐 标 系 的 有 效 值 范 围 区 内, 即 前 者 是 后 者 的 子 集 如 下 图 所 示, 图 4-9 为 错 误 的 做 法, 图 4-10 为 正 确 的 做 法 图 4-9 错 误 的 放 置 方 法 (5) 计 算 所 有 顶 点 及 其 附 加 点 的 纹 理 坐 标 图 4-10 正 确 的 放 置 方 法 由 于 长 方 体 模 型 的 几 何 参 数 已 知 ( 已 由 放 样 计 算 得 出 ), 所 以 模 型 的 所 有 顶 点 及 其 附 加 点 的 相 对 距 离 和 位 置 关 系 得 以 精 确 表 达 根 据 数 学 知 识, 在 图 4-8 中, 不 难 计 算 出 所 有 点 对 应 的 纹 理 坐 标 值 所 有 计 算 完 成 后, 模 型 中 的 每 个 顶 点 便 拥 有 了 两 组 坐 标 世 界 坐 标 系 中 的 三 维 坐 标 和 纹 理 坐 标 系 中 的 二 维 坐 标 世 界 坐 标 系 中 的 三 维 坐 标 和 纹 理 坐 标 系 中 的 二 维 坐 标 一 一 对 应, 使 得 纹 理 图 片 能 够 精 确 地 映 射 到 模 型 外 表 面 效 果 如 图 4-11 所 示 23

图 4-11 长 方 体 模 型 纹 理 映 射 效 果 (Kx=Ky=1, 红 线 代 表 索 引, 黄 点 代 表 顶 点 ) 4.3.2 采 用 任 意 的 平 铺 系 数 当 x 方 向 平 铺 系 数 Kx 和 y 方 向 平 铺 系 数 Ky 采 用 非 默 认 值 时, 纹 理 映 射 中 的 对 应 关 系 将 有 所 不 同 正 如 前 文 所 说, 平 铺 系 数 决 定 了 纹 理 图 片 的 平 铺 次 数, 也 决 定 了 纹 理 坐 标 系 中 的 有 效 坐 标 范 围 在 非 默 认 情 况, 纹 理 坐 标 系 最 右 上 角 坐 标 将 由 ( 1,1 ) 变 为 ( Kx, Ky), 但 单 张 纹 理 图 片 的 纹 理 坐 标 范 围 依 然 介 于 ( 0,0) 和 ( 1,1 ) 之 间 以 Kx 3 Ky 4 为 例, 纹 理 坐 标 系 及 其 有 效 值 范 围 如 图 4-12 所 示 图 4-12 Kx=3 Ky=4 时 的 纹 理 坐 标 系 尽 管 纹 理 图 片 进 行 了 多 次 平 铺, 但 模 型 外 表 面 依 然 只 能 单 次 平 铺, 这 是 因 为 模 型 只 有 一 个, 而 纹 理 图 片 可 以 多 次 映 射 纹 理 坐 标 系 设 置 完 成 之 后, 将 长 方 体 外 表 面 放 置 其 中, 如 图 4-13 所 示 24

图 4-13 将 外 表 面 放 置 到 纹 理 坐 标 系 的 有 效 值 范 围 区 中 然 后 按 照 同 样 的 方 法, 计 算 模 型 所 有 顶 点 及 其 附 加 点 的 相 应 纹 理 坐 标 在 Kx 3 Ky 4 情 况 下, 长 方 体 模 型 贴 图 效 果 如 图 4-14 所 示 图 4-14 长 方 体 模 型 纹 理 映 射 效 果 (Kx=3 Ky=4, 红 线 代 表 索 引, 黄 点 代 表 顶 点 ) 4.3.3 纹 理 贴 图 算 法 小 结 无 论 是 默 认 值 下 的 纹 理 贴 图, 还 是 任 意 值 下 的 纹 理 贴 图, 都 有 着 相 同 的 原 理 和 相 似 的 步 骤 总 的 来 说, 纹 理 贴 图 的 关 键 在 于 根 据 平 铺 系 数, 在 纹 理 坐 标 系 中 确 定 正 确 的 有 效 值 范 围, 进 而 将 模 型 外 表 面 平 铺 在 纹 理 坐 标 系 的 有 效 值 范 围 区 中 纹 理 贴 图 计 算 的 最 终 成 果 是 坐 标 组, 通 过 纹 理 坐 标 计 算, 使 得 模 型 的 每 个 顶 点 都 拥 有 了 两 套 坐 标 : 世 界 坐 标 系 中 的 三 维 坐 标 和 纹 理 坐 标 系 中 的 纹 理 坐 标, 正 是 这 两 套 坐 标 的 精 确 对 应, 才 完 成 了 纹 理 映 射 过 程 默 认 值 下 的 纹 理 贴 图 和 任 意 值 下 的 纹 理 贴 图 的 差 别 在 于 纹 理 坐 标 有 效 值 范 25

围 不 同, 纹 理 图 片 在 纹 理 坐 标 系 中 的 平 铺 次 数 也 不 同 实 际 上, 默 认 值 下 的 纹 理 贴 图 只 是 任 意 值 下 的 纹 理 贴 图 的 特 殊 情 况, 在 计 算 机 处 理 过 程 中, 完 全 可 以 将 两 种 情 况 合 并 处 理 4.4 铁 路 模 型 纹 理 贴 图 算 法 4.4.1 铁 路 模 型 的 特 殊 性 不 同 于 上 节 中 的 长 方 体 模 型, 铁 路 模 型 是 曲 线 状 的, 经 过 原 始 数 据 预 处 理 之 后 的 铁 路 模 型, 被 分 成 大 量 的 5m 长 的 直 线 段, 其 特 殊 之 处 在 于 拆 剪 之 后 的 模 型 3 外 表 面 并 不 是 长 方 形 图 4-15 是 一 段 15m 长 的 铁 路 模 型 的 外 表 面 平 铺 图 图 4-15 平 铺 后 铁 路 模 型 外 表 面 仍 以 上 节 中 的 纹 理 作 为 贴 图 图 片, 将 x 方 向 平 铺 系 数 Kx 设 置 为 3, 将 y 方 向 平 铺 系 数 Ky 设 置 为 4 建 立 纹 理 坐 标 系, 确 定 纹 理 坐 标 有 效 范 围, 并 将 如 图 4-15 所 示 的 平 铺 后 铁 路 模 型 外 表 面 放 置 其 中, 如 图 4-16 所 示 图 4-16 将 铁 路 模 型 外 表 面 放 置 在 纹 理 坐 标 系 中 3 为 了 更 好 地 说 明 问 题, 该 中 线 的 转 弯 角 度 被 人 工 夸 大 26

容 易 发 现, 按 照 上 述 方 法 完 成 的 纹 理 映 射 是 不 正 确 的, 如 图 4-17 所 示, 在 该 图 中, 纹 理 图 片 并 没 有 按 照 预 想 的 方 式 映 射 在 模 型 外 表 面, 尽 管 源 图 片 已 经 按 照 Kx 3 Ky 4 的 平 铺 次 数 进 行 映 射, 但 是 源 图 片 并 没 有 完 整 显 示 出 来 图 4-17 错 误 的 纹 理 映 射 结 果 4.4.2 针 对 铁 路 模 型 的 纹 理 贴 图 铁 路 模 型 存 在 特 殊 性, 按 照 先 前 的 算 法, 会 产 生 错 误 的 纹 理 映 射 效 果 考 虑 到 纹 理 映 射 的 关 键 在 于 纹 理 坐 标 的 计 算, 可 以 从 建 立 更 符 合 真 实 效 果 的 纹 理 映 射 关 系 入 手 解 决 这 一 问 题 更 符 合 真 实 效 果 的 纹 理 映 射 应 该 满 足 的 要 求 是 方 形 纹 理 图 片 的 边 界 与 模 型 外 表 面 的 棱 线 平 行 或 垂 直 为 了 实 现 这 一 效 果, 可 以 在 纹 理 映 射 操 作 之 前, 对 平 铺 后 的 模 型 外 表 面 进 行 变 形 处 理, 使 其 呈 现 直 线 状 为 此, 可 以 采 用 拉 伸 处 理 的 方 法, 如 图 4-18 图 4-18 对 模 型 外 表 面 进 行 拉 伸 处 理 27

注 意 此 处 的 拉 伸 处 理 只 是 改 变 了 外 表 面 的 形 状, 并 没 有 改 变 外 表 面 里 棱 线 的 长 度, 即 在 图 4-18 中, 拉 伸 后 的 红 色 线 段 的 长 度 等 于 拉 伸 前 的 三 段 红 线 长 度 之 和, 其 它 颜 色 线 段 同 理 此 后, 将 拉 伸 处 理 后 的 外 表 面 放 置 在 纹 理 坐 标 系 的 有 效 值 范 围 区 中 ( 如 图 4-19), 计 算 模 型 顶 点 对 应 的 纹 理 坐 标, 并 进 行 纹 理 映 射 图 4-19 将 拉 伸 处 理 后 的 外 表 面 放 置 在 纹 理 坐 标 系 的 有 效 值 范 围 区 中 纹 理 映 射 后 的 模 型 外 表 面 如 图 4-20 所 示, 可 以 发 现 此 时 的 纹 理 映 射 已 经 符 合 要 求 图 4-20 纹 理 映 射 后 的 模 型 外 表 面 将 外 表 面 覆 盖 至 模 型 外 侧, 可 以 得 到 贴 图 后 的 模 型, 如 图 4-21 所 示 28

图 4-21 贴 图 后 的 模 型 效 果 (Kx=3 Ky=4, 红 线 代 表 索 引, 黄 点 代 表 顶 点 ) 4.4.3 多 纹 理 贴 图 的 原 理 多 纹 理 贴 图 是 相 对 单 纹 理 贴 图 而 言 的 所 谓 单 纹 理 贴 图 是 指 在 进 行 模 型 纹 理 贴 图 时, 只 使 用 一 张 源 图 片 进 行 纹 理 映 射 而 多 纹 理 贴 图 是 指 使 用 多 张 图 片 进 行 纹 理 映 射 单 纹 理 贴 图 是 多 纹 理 贴 图 的 基 础 很 多 时 候 多 纹 理 贴 图 是 必 要 的, 这 是 因 为 复 杂 的 模 型 贴 图 往 往 不 能 由 单 张 纹 理 图 片 实 现, 模 型 的 精 致 程 度 越 高, 其 贴 图 方 案 越 复 杂 在 本 文 的 研 究 工 作 中, 总 结 出 实 现 多 纹 理 贴 图 的 途 径 主 要 有 两 种 : (1) 通 过 图 片 拼 接 的 方 法 实 现 多 纹 理 贴 图 和 单 纹 理 贴 图 最 大 的 区 别 是 图 片 源 的 数 量 在 进 行 纹 理 映 射 之 前, 可 以 使 用 图 片 处 理 软 件 ( 如 Adobe Photoshop) 将 多 纹 理 贴 图 使 用 到 的 所 有 图 片 拼 接 成 一 张, 然 后 使 用 单 纹 理 贴 图 的 方 法 进 行 纹 理 映 射 (2) 通 过 模 型 拆 分 的 方 法 实 现 对 于 需 要 使 用 多 纹 理 贴 图 方 法 进 行 纹 理 映 射 的 模 型, 可 以 根 据 所 贴 图 片 的 不 同, 将 模 型 拆 分 成 若 干 个 子 模 型, 且 每 个 子 模 型 相 互 独 立 遍 历 所 有 子 模 型, 采 用 单 纹 理 贴 图 的 方 法 对 子 模 型 进 行 纹 理 映 射, 最 终 再 将 所 有 子 模 型 拼 接 在 一 起 两 种 方 法 各 有 优 缺 点, 见 表 4-1 29

表 4-1 多 纹 理 贴 图 两 种 实 现 途 径 的 优 缺 点 对 比 实 现 途 径 优 点 缺 点 1 增 加 了 用 户 的 工 作 量 ; 图 片 拼 接 模 型 拆 分 不 需 要 编 程 即 可 实 现 1 减 轻 了 用 户 的 工 作 量 2 可 以 采 用 不 同 的 平 铺 系 数 2 图 片 拼 接 耗 时 易 出 错 ; 3 所 有 贴 图 的 平 铺 系 数 必 须 相 同 技 术 实 现 困 难 通 过 对 两 种 实 现 方 法 进 行 对 比, 发 现 尽 管 模 型 拆 分 法 实 现 难 度 较 大, 但 是 更 符 合 用 户 的 使 用 习 惯, 减 轻 了 用 户 的 工 作 量 基 于 这 个 原 因, 本 文 在 对 铁 路 模 型 多 纹 理 贴 图 的 过 程 中, 采 用 了 模 型 拆 分 法, 使 用 代 码 实 现 了 模 型 拆 分 和 组 合 过 程 其 原 理 如 图 4-22 图 4-22 使 用 模 型 拆 分 法 进 行 多 纹 理 贴 图 的 流 程 尽 管 前 文 已 经 提 出 了 纹 理 贴 图 的 一 般 性 算 法, 但 其 在 模 型 拆 分 法 的 具 体 应 用 中 仍 需 改 进 在 一 般 性 算 法 中, 往 往 需 要 在 平 铺 的 模 型 外 表 面 上 设 置 多 余 的 附 加 点, 以 此 来 控 制 纹 理 映 射, 但 在 模 型 拆 分 法 中 不 能 这 样 做 这 是 因 为 一 般 性 算 法 主 要 针 对 单 纹 理 贴 图, 进 行 单 纹 理 贴 图 的 模 型 的 横 截 面 往 往 是 闭 合 图 形, 而 通 过 模 型 拆 分 法 得 到 子 模 型 往 往 有 着 非 闭 合 的 横 截 面 因 此, 进 行 多 纹 理 贴 图 时, 需 要 将 一 般 性 算 法 分 两 种 : 添 加 附 加 点 的 单 纹 理 贴 图 和 没 有 附 加 点 的 单 纹 理 贴 图 在 实 现 过 程 中, 需 要 根 据 纹 理 图 片 的 张 数, 判 30

断 是 否 是 多 纹 理 贴 图 模 型, 进 而 采 用 不 同 的 贴 图 方 法 总 的 来 说, 处 理 流 程 如 图 4-23 所 示, 图 中 单 纹 理 贴 图 ( 闭 合 模 式 ) 对 应 有 附 加 点 的 一 般 性 算 法, 单 纹 理 贴 图 ( 非 闭 合 模 式 ) 对 应 没 有 附 加 点 的 一 般 性 算 法 图 4-23 多 纹 理 贴 图 算 法 全 过 程 31

5.1 技 术 实 现 总 体 思 路 第 5 章 技 术 实 现 与 软 件 制 作 考 虑 到 整 个 放 样 建 模 和 纹 理 贴 图 的 复 杂 性, 需 要 采 用 面 向 对 象 的 思 想 编 写 程 序,C 语 言 已 经 不 能 满 足 要 求, 加 之 需 要 依 赖 到 OGRE 库 函 数 的 数 学 计 算 功 能, 故 采 用 C++ 语 言 实 现 核 心 代 码 为 了 增 强 代 码 的 可 用 性, 有 必 要 在 编 写 核 心 代 码 时 设 置 适 当 的 接 口, 方 便 后 续 操 作 为 了 方 面 他 人 使 用 代 码 进 行 模 型 放 样 和 贴 图, 需 要 制 作 完 善 的 软 件 界 面, 并 对 核 心 代 码 进 行 一 定 程 度 的 封 装, 使 得 用 户 在 无 需 了 解 原 理 的 情 况 下, 直 接 进 行 相 关 操 作 在 软 件 界 面 编 写 过 程 中, 考 虑 到 C++ MFC 程 序 的 局 限 性, 本 文 采 用 C# 语 言, 并 借 助 第 三 方 界 面 插 件 Developer Express.NET v8.2 考 虑 到 软 件 的 可 扩 展 性, 本 文 采 用 插 件 框 架 的 思 想 制 作 软 件, 将 使 用 C# 余 元 编 写 的 软 件 界 面 作 为 宿 主 程 序, 将 使 用 C++ 语 言 编 写 的 核 心 代 码 封 装 成 插 件 程 序 这 样 做 的 好 处 在 于, 在 后 续 研 究 工 作 中, 可 以 根 据 用 户 的 需 求 实 现 新 的 功 能, 并 将 新 功 能 封 装 成 新 的 插 件, 放 入 插 架 框 架 之 下, 使 原 有 软 件 得 到 扩 展 为 了 与 前 期 工 作 保 持 平 台 的 一 致 性, 在 插 件 程 序 的 编 程 过 程 中 使 用 Microsoft Visual Studio 2008, 在 宿 主 程 序 的 编 写 过 程 中 使 用 Microsoft Visual Studio 2005 5.2 X 文 件 结 构 分 析 X 文 件 是 指 后 缀 为.x 的 计 算 机 文 件,X 文 件 存 储 的 模 型 可 以 被 DirectX Viewer 3D Studio Max Skyline 软 件 等 识 别, 具 有 一 定 的 通 用 性, 因 此, 在 本 文 中, 将 按 照 X 文 件 的 格 式 对 放 样 计 算 和 纹 理 映 射 结 果 进 行 编 排, 最 终 将 结 果 存 储 为 后 缀 为.x 的 计 算 机 文 件 X 文 件 有 其 独 特 的 结 构, 可 以 存 储 模 型 的 顶 点 信 息 法 向 量 信 息 索 引 数 据 纹 理 坐 标 信 息 等, 可 以 囊 括 模 型 文 件 的 所 有 数 值 信 息 其 主 要 结 构 有 六 大 部 分, 如 图 5-1 所 示 32

图 5-1 X 文 件 结 构 图 (1) 头 文 件 头 文 件 中 包 含 DirectX 的 版 本 模 型 名 称 信 息, 并 定 义 数 据 存 储 形 式 和 浮 点 数 位 数 例 如 xof 0302txt 0064 表 示 使 用 DirectX 3.2 版 本 的 模 板, 以 文 本 形 式 存 储 的 数 据, 且 浮 点 数 的 位 数 是 64 位 又 如 Mesh Railway 表 示 模 型 名 称 为 Railway (2) 顶 点 信 息 顶 点 信 息 包 含 了 模 型 的 顶 点 总 数 和 所 有 顶 点 的 三 维 坐 标 每 个 顶 点 的 三 维 坐 标 在 X 文 件 中 占 据 一 行, 顶 点 总 数 必 须 等 于 顶 点 坐 标 的 行 数, 否 则 模 型 将 不 能 显 示 (3) 索 引 信 息 索 引 信 息 包 含 了 索 引 条 数 和 每 条 索 引 的 具 体 值 与 顶 点 信 息 类 似, 每 条 索 引 的 具 体 值 在 X 文 件 中 占 据 一 行, 索 引 条 数 必 须 等 于 索 引 行 数, 否 则 模 型 将 不 能 显 示 但 是 索 引 条 数 和 顶 点 总 数 没 有 联 系, 顶 点 总 数 并 不 能 决 定 索 引 条 数 (4) 材 质 列 表 材 质 列 表 中 包 括 了 纹 理 贴 图 模 拟 光 照 色 彩 信 息 通 常 情 况 下, 模 拟 光 照 和 模 型 色 彩 可 以 采 用 默 认 值 纹 理 贴 图 信 息 则 指 定 了 模 型 需 要 使 用 的 纹 理 图 片 名 称 需 要 注 意 的 是, 纹 理 贴 图 信 息 中 并 没 有 存 储 纹 理 图 片 的 绝 对 路 径, 在 加 载 模 型 时, 系 统 会 自 动 在 X 文 件 同 级 目 录 下 根 据 名 称 查 找 纹 理 图 片 (5) 纹 理 坐 标 纹 理 坐 标 信 息 包 括 坐 标 总 数 和 坐 标 值 两 部 分 纹 理 坐 标 总 数 必 须 等 于 模 型 顶 点 总 数, 即 必 须 为 模 型 的 每 一 个 顶 点 指 定 具 体 的 纹 理 坐 标 (6) 法 向 量 法 向 量 信 息 包 括 法 向 量 总 数 与 法 向 量 具 体 值, 类 似 于 纹 理 坐 标, 法 向 量 总 数 必 须 等 于 模 型 顶 点 总 数, 即 必 须 为 模 型 的 每 一 个 顶 点 指 定 具 体 的 法 向 量 33

5.3 数 学 计 算 的 实 现 在 放 样 建 模 过 程 中, 进 行 了 大 量 的 数 学 计 算 考 虑 了 OGRE 三 维 数 学 引 擎 已 经 建 立 非 常 完 善 高 效 的 数 学 类 库, 在 具 体 实 现 过 程 中, 使 用 了 这 些 数 学 函 数 同 时, 为 了 提 高 程 序 的 可 移 植 性, 减 弱 对 OGRE 的 依 赖, 本 文 抽 离 了 OGRE 所 有 的 数 学 库 并 作 为 类 封 装 在 插 架 中, 从 而 实 现 了 OGRE 无 关 性 核 心 代 码 依 赖 的 主 要 数 学 计 算 如 图 5-2 所 示 图 5-2 主 要 依 赖 的 数 学 计 算 (1) 向 量 叉 乘 向 量 叉 乘 可 以 得 到 垂 直 于 向 量 a b 的 向 量 c 向 量 叉 乘 通 过 OGRE 数 学 库 中 的 crossproduct() 函 数 完 成, 在 使 用 crossproduct() 函 数 处 理 向 量 之 前, 需 要 先 将 向 量 实 例 化 为 为 OGRE 中 的 Vector3 类 的 对 象 (2) 向 量 归 一 化 向 量 的 归 一 化 是 通 过 将 向 量 的 坐 标 值 等 比 例 扩 大 或 缩 小, 使 向 量 的 模 等 于 1 在 计 算 机 图 形 中, 向 量 参 与 的 大 部 分 运 算 都 要 求 向 量 实 现 归 一 化 向 量 的 归 一 化 可 以 通 过 OGRE 数 学 库 中 的 normalise() 函 数 完 成 (3) 四 元 数 计 算 四 元 数 可 以 清 晰 简 明 地 表 达 空 间 旋 转, 其 计 算 可 以 通 过 OGRE 数 学 库 中 的 getrotationto() 函 数 完 成,getRotationTo() 函 数 的 返 回 值 是 Quaternion 类 型 变 量,Quaternion 类 在 OGRE 中 已 经 被 事 先 定 义 (4) 求 交 计 算 在 放 样 建 模 中, 中 间 点 位 的 放 样 计 算 通 常 依 赖 于 射 线 与 平 面 的 交 点 求 解, 这 34

一 求 解 过 程 也 称 为 求 交 计 算 如 果 射 线 和 平 面 均 已 知, 可 以 使 用 OGRE 库 函 数 中 的 intersects() 方 法 确 定 射 线 与 平 面 是 否 相 交, 然 后 使 用 getpoint() 方 法 求 出 交 点 精 确 坐 标 (5) 射 线 计 算 射 线 计 算 是 指 根 据 已 知 条 件 确 定 射 线 的 过 程 在 已 知 射 线 起 点 和 射 线 方 向 向 量 的 情 况 下, 通 过 依 次 使 用 OGRE 库 函 数 中 的 setorigin() 方 法 和 setdirection() 方 法, 可 以 精 确 地 确 定 射 线 (6) 平 面 计 算 平 面 计 算 是 指 根 据 已 知 条 件 确 定 平 面 的 过 程 OGRE 数 学 库 函 数 中 提 供 了 5 种 通 过 参 数 创 建 平 面 的 方 法, 其 中 最 常 用 的 是 平 面 方 程 的 点 法 式 根 据 平 面 上 任 一 点 和 平 面 的 法 向 量 确 定 平 面 方 程 (7) 定 长 取 点 定 长 取 点 是 指 求 解 在 射 线 上 的 点, 且 该 点 距 离 射 线 起 点 的 距 离 为 给 定 长 度 定 长 取 点 是 求 解 射 线 与 平 面 交 点 坐 标 的 主 要 方 法, 在 OGRE 中 可 以 使 用 射 线 类 (class Ray) 的 成 员 方 法 getpoint() 实 现 5.4 多 纹 理 贴 图 的 实 现 在 具 体 的 实 现 过 程 中, 按 照 面 向 对 象 的 编 程 思 想, 将 纹 理 贴 图 的 一 般 性 算 法 编 写 为 C++ 类, 并 命 名 为 Lofting 在 Lofting 类 的 构 造 函 数 所 有 构 造 函 数 中, 均 设 置 布 尔 型 参 数, 当 其 值 为 true 时, 通 过 设 置 附 加 点 来 执 行 闭 合 模 型 的 单 纹 理 贴 图 ; 当 其 值 为 false 时, 取 消 所 有 附 加 点, 即 执 行 非 闭 合 模 型 的 单 纹 理 贴 图 典 型 的 Lofting 类 的 构 造 函 数 如 下 : Lofting(int FaceVertexNum, int LineVertexNum, Vector2* FaceVertexList, Vector3* LineVertexList, int Xtime, int Ytime, // 截 面 顶 点 数 // 路 径 转 点 数 // 截 面 顶 点 坐 标 列 表 // 路 径 转 点 坐 标 列 表 // 纹 理 坐 标 X 方 向 平 铺 系 数 // 纹 理 坐 标 Y 方 向 平 铺 系 数 std::string picturename, // 纹 理 图 片 名 称 ( 包 括 后 缀 ) 35

std::string saveresultto, // X 文 件 的 输 出 地 址 bool close // 当 close 为 真 时, 放 样 出 闭 合 的 截 面 ); 在 Lofting 类 的 基 础 之 上, 创 建 LoftManager 类 LoftManager 类 主 要 用 于 接 收 用 户 输 入 的 各 种 参 数, 并 对 参 数 进 行 处 理, 制 作 出 模 型 拆 分 方 案, 并 根 据 子 模 型 的 个 数 X, 实 例 化 X 个 Lofting 类, 从 而 分 别 对 X 个 子 模 型 进 行 单 纹 理 贴 图 操 作 LoftManager 类 的 构 造 函 数 如 下 : LoftManager(int FaceVertexNum, int LineVertexNum, float* FaceVertexList, float* LineVertexList, int numberofsolutionused, int* solutionoftexture, // 截 面 顶 点 数 // 路 径 转 点 数 // 截 面 顶 点 坐 标 列 表 // 路 径 转 点 坐 标 列 表 // 使 用 了 多 少 中 贴 图 方 案 // 纹 理 贴 图 方 案 细 节 std::string* texturenames, // 纹 理 图 片 名 称 ( 包 括 后 缀 ) int* kxxx, int* kyyy, std::string saveresultto // 依 次 为 每 种 方 案 的 X 平 铺 系 数 // 依 次 为 每 种 方 案 的 Y 平 铺 系 数 // X 文 件 的 输 出 地 址 ); 实 际 上,Lofting 类 构 造 函 数 与 LoftManager 类 构 造 函 数 的 主 要 差 别 在 于 :1 前 者 只 需 要 接 收 1 个 表 示 纹 理 图 片 名 称 的 参 数, 而 后 者 需 要 接 收 1 组 表 示 纹 理 图 片 名 称 的 参 数 ;2 前 者 不 需 要 给 出 纹 理 贴 图 方 案 细 节, 而 后 者 需 要 ;3 前 者 只 只 需 要 接 收 2 个 表 示 平 铺 系 数 的 参 数, 而 后 者 需 要 接 收 2 组 表 示 平 铺 系 数 的 参 数 ; 4 前 者 的 截 面 顶 点 坐 标 和 路 径 转 点 坐 标 以 Vector3 形 式 给 出, 而 后 者 是 以 float 形 式 给 出 以 上 差 别 中, 前 三 条 是 由 多 纹 理 贴 图 所 需 的 原 始 数 据 多 于 单 纹 理 贴 图 造 成 的, 第 四 条 差 别 的 产 生 是 因 为 LoftManager 类 需 要 提 供 给 用 户 使 用, 其 数 据 类 型 必 须 与 用 户 一 致, 而 Lofting 类 是 内 部 类, 对 用 户 而 言 是 不 可 见 的, 所 以 直 接 使 用 OGRE 内 部 数 据 类 型 Vector3 将 有 助 于 数 据 处 理 36

5.5 软 件 界 面 设 计 软 件 界 面 设 计 不 仅 仅 是 外 观 设 计, 更 重 要 的 是 数 据 判 别 功 能 的 实 现 通 过 数 据 判 别 功 能, 检 查 软 件 用 户 输 入 的 数 据 是 否 正 确 并 给 予 提 示, 从 而 引 导 用 户 提 供 正 确 无 误 的 数 据 基 于 这 一 思 想, 设 计 出 用 户 与 软 件 的 交 互 过 程 ( 图 5-3) 图 5-3 用 户 与 软 件 的 交 互 过 程 37

根 据 上 述 交 互 过 程, 设 计 软 件 界 面, 如 图 5-4 所 示, 其 中 右 上 角 为 Panel 控 件, 用 于 显 示 横 截 面 的 外 形 如 果 用 户 选 择 手 工 输 入 截 面 顶 点 坐 标, 那 么 可 以 随 时 按 下 刷 新 按 钮, 可 以 直 接 地 看 到 横 截 面 轮 廓 ; 如 果 用 户 选 择 从 文 件 导 入 截 面 顶 点 坐 标, 那 么 截 面 图 形 会 自 动 绘 制 在 Panel 控 件 中 图 5-4 软 件 界 面 38

6.1 在 铁 路 放 样 中 的 应 用 第 6 章 实 际 应 用 6.1.1 原 始 数 据 说 明 以 图 3-1 所 示 铁 路 中 线 和 图 3-4 所 示 铁 路 路 基 截 面 为 例, 放 样 铁 路 模 型 放 样 过 程 中, 使 用 了 4 张 不 同 的 图 片 ( 图 6-1~6-4), 用 以 对 铁 路 模 型 进 行 纹 理 贴 图 图 6-1 铁 路 放 样 中 使 用 的 贴 图 1( 共 4 张 ) 图 6-2 铁 路 放 样 中 使 用 的 贴 图 2( 共 4 张 ) 图 6-3 铁 路 放 样 中 使 用 的 贴 图 3( 共 4 张 ) 图 6-4 铁 路 放 样 中 使 用 的 贴 图 3( 共 4 张 ) 根 据 纹 理 图 片 的 尺 寸, 将 垂 直 于 中 线 方 向 的 纹 理 贴 图 系 数 设 置 为 1; 根 据 铁 路 长 度, 将 平 行 于 中 线 方 向 的 纹 理 贴 图 系 数 设 置 为 1000 放 样 操 作 如 图 6-5 所 示 图 6-5 在 铁 路 放 样 中 的 应 用 39

6.1.2 铁 路 放 样 效 果 将 最 终 生 成 的 铁 路 模 型 加 载 到 中 铁 二 院 的 虚 拟 三 维 场 景 软 件 中, 效 果 如 图 6-6~6-9 图 6-6 铁 路 放 样 效 果 ( 场 景 1, 观 测 点 1) 图 6-7 铁 路 放 样 效 果 ( 场 景 1, 观 测 点 2) 图 6-8 铁 路 放 样 效 果 ( 场 景 2, 观 测 点 1) 图 6-9 铁 路 放 样 效 果 ( 场 景 2, 观 测 点 2) 6.2 潜 在 的 应 用 领 域 三 维 场 景 中 的 线 状 模 型 ( 直 线 状 曲 线 状 ) 主 要 有 铁 路 模 型 桥 梁 模 型 隧 道 模 型 地 下 管 线 模 型 公 路 模 型 等, 铁 路 放 样 只 是 本 算 法 的 典 型 应 用, 其 它 线 状 模 型 均 可 使 用 本 算 法 进 行 放 样 建 模 和 纹 理 贴 图 如 图 6-10~6-12 所 示, 是 本 算 法 在 桥 梁 模 型 放 样 及 纹 理 贴 图 中 的 应 用 40

图 6-10 在 桥 梁 放 样 中 的 应 用 图 6-11 桥 梁 放 样 效 果 ( 观 测 点 1) 图 6-12 桥 梁 放 样 效 果 ( 观 测 点 2) 不 同 类 型 的 线 状 模 型, 需 要 采 用 不 同 的 纹 理 贴 图 方 案, 制 作 地 下 管 线 模 型 时, 只 需 要 少 量 纹 理 图 片 即 可, 但 进 行 桥 梁 等 复 杂 模 型 贴 图 的 时 候, 需 要 制 定 复 杂 的 纹 理 贴 图 方 案, 以 实 现 逼 真 的 外 观 效 果 41

结 论 本 文 依 托 中 铁 二 院 测 绘 院 课 题 平 台, 针 对 三 维 地 理 信 息 系 统 中 铁 路 模 型 的 放 样 和 贴 图 算 法 进 行 了 深 入 研 究 在 本 文 之 前, 中 铁 二 院 测 绘 院 铁 路 模 型 的 制 作 依 赖 于 基 础 模 型, 基 础 模 型 是 在 建 模 工 具 软 件 中 制 作 的 实 际 长 度 为 5m 的 一 段 铁 路 模 型, 并 且 已 经 在 建 模 工 具 软 件 中 进 行 了 精 致 的 纹 理 贴 图 在 三 维 虚 拟 场 景 中, 长 达 千 百 公 里 的 铁 路 便 以 基 础 模 型 拼 接 组 合 形 成, 当 铁 路 中 线 是 直 线 状 或 接 近 直 线 状 时, 这 种 方 法 效 果 完 美, 但 在 铁 路 转 弯 处, 两 个 基 础 模 型 的 内 侧 会 出 现 纹 理 重 叠, 外 侧 会 出 现 模 型 空 隙, 从 而 影 响 显 示 效 果 本 文 从 三 维 模 型 制 作 的 基 础 知 识 入 手, 通 过 学 习 计 算 机 图 形 学 三 维 虚 拟 场 景 等 相 关 知 识, 提 出 了 一 种 新 的 铁 路 模 型 放 样 建 模 的 方 法, 该 方 法 摆 脱 了 对 任 何 建 模 工 具 软 件 的 依 赖, 仅 以 铁 路 中 线 数 据 和 铁 路 模 型 截 面 外 形 为 原 始 数 据, 便 可 快 速 放 样 生 成 铁 路 几 何 模 型 本 文 通 过 对 纹 理 映 射 技 术 的 研 究, 提 出 了 一 种 对 铁 路 几 何 模 型 进 行 纹 理 贴 图 的 算 法, 该 算 法 同 样 不 依 赖 于 任 何 建 模 工 具 软 件, 可 直 接 使 用 代 码 完 成 纹 理 贴 图 过 程 与 先 前 的 铁 路 模 型 制 作 方 法 相 比, 本 文 算 法 的 优 点 在 于 : (1) 铁 路 模 型 不 再 依 赖 于 基 础 模 型, 即 不 再 通 过 拼 接 基 础 模 型 的 方 法 制 作 数 百 上 千 公 里 的 铁 路 模 型 在 本 文 算 法 中, 任 何 长 度 的 铁 路 模 型 都 是 一 个 单 独 的 模 型, 不 可 再 分 ; (2) 模 型 精 致 美 观, 由 于 原 理 不 同, 即 便 在 铁 路 转 弯 处, 该 算 法 生 成 的 模 型 也 表 现 良 好, 解 决 了 先 前 算 法 的 缺 陷 ; (3) 不 再 依 赖 于 第 三 方 软 件, 不 需 要 建 模 工 具 的 支 持, 只 需 要 用 户 提 供 必 要 的 起 算 数 据 ; (4) 在 保 持 模 型 高 质 量 的 同 时, 提 高 了 制 作 模 型 的 工 作 效 率, 也 简 化 了 向 虚 拟 三 维 场 景 中 导 入 模 型 的 工 作 流 程 为 了 方 便 用 户 使 用, 本 文 算 法 最 终 被 封 装 成 为 软 件, 在 这 一 过 程 中, 首 先 使 用 C# 语 言 编 写 了 软 件 界 面, 使 用 C++ 语 言 实 现 了 核 心 算 法, 然 后 通 过 插 件 框 架 实 现 了 C# 与 C++ 之 间 的 消 息 传 递, 将 C++ 核 心 算 法 封 装 成 dll 插 件, 供 宿 主 程 序 42

调 用 经 过 测 试, 软 件 达 到 了 预 期 效 果 由 于 铁 路 模 型 具 有 一 定 的 代 表 性, 虚 拟 三 维 场 景 中 的 大 多 数 线 状 模 型 都 可 以 使 用 本 文 算 法 放 样 并 实 现 纹 理 贴 图 在 实 际 工 作 中, 本 文 已 经 做 了 相 关 的 拓 展 应 用 ( 制 作 桥 梁 模 型 ), 并 取 得 了 理 想 的 效 果 由 于 时 间 有 限, 本 文 研 究 工 作 并 不 完 善, 还 存 在 诸 多 不 足 : (1) 在 现 实 世 界 中, 铁 路 的 交 叉 分 叉 合 并 现 象 很 常 见, 但 本 文 的 研 究 只 集 中 在 单 条 铁 路 模 型 的 制 作 上 当 两 个 铁 路 模 型 在 虚 拟 三 维 场 景 中 交 叉 分 叉 或 合 并 时, 如 何 智 能 地 判 断 重 叠 部 分 并 进 行 自 动 裁 剪 有 待 研 究 ; (2) 当 铁 路 中 线 接 近 直 线 状 时, 本 文 算 法 依 然 以 5m 为 步 长 进 行 采 样 而 实 际 上, 采 样 步 长 应 该 更 加 智 能 铁 路 中 线 越 接 近 直 线, 采 样 步 长 越 大, 反 之 亦 然 这 样 的 好 处 在 于, 在 转 弯 处 采 样 点 自 动 增 多, 从 而 提 高 了 贴 图 质 量 ; 在 直 线 处 采 样 点 自 动 减 少, 从 而 减 少 了 数 据 冗 余, 精 简 了 模 型 文 件 43

致 谢 四 年 时 光 中, 班 主 任 曾 涛 副 教 授 浇 筑 了 最 多 的 心 血 大 一 时, 我 总 是 提 出 不 切 实 际 的 想 法 和 目 标, 曾 老 师 耐 心 地 帮 我 修 正 并 教 我 务 实 ; 大 二 时, 我 写 出 了 第 一 篇 论 文, 与 其 说 是 论 文, 不 如 说 是 作 文, 但 曾 老 师 却 细 心 修 改, 先 教 我 逻 辑 结 构, 后 教 我 论 文 格 式 ; 大 三 时, 我 曾 经 松 懈 了 一 段 时 间, 是 曾 老 师 开 导 我, 批 评 我, 鼓 励 我, 帮 我 找 回 自 我 ; 大 四 时, 我 再 次 走 在 了 人 生 的 岔 路 口, 曾 老 师 又 像 明 灯 一 样, 照 亮 了 我 前 进 的 方 向 曾 老 师 是 我 本 科 毕 业 设 计 的 指 导 老 师, 本 文 正 是 在 曾 老 师 的 悉 心 指 导 下 完 成 的 感 谢 曾 老 师 为 我 做 的 一 切 感 谢 成 都 理 工 大 学 杨 武 年 教 授, 杨 教 授 的 言 传 身 教 让 我 受 用 终 生 感 谢 史 先 琳 老 师 杨 容 浩 老 师 杨 晓 霞 老 师, 他 们 亦 师 亦 友 感 谢 余 代 俊 副 教 授 秦 岩 宾 副 教 授 高 雅 萍 副 教 授 及 测 绘 工 程 系 的 所 有 老 师, 感 谢 他 们 对 我 专 业 知 识 方 面 的 培 养 和 专 业 技 能 方 面 的 训 练 感 谢 我 的 导 师, 清 华 大 学 土 木 工 程 系 刘 钊 副 教 授, 自 从 推 免 硕 士 研 究 生 之 后, 刘 老 师 便 开 始 对 我 详 细 指 导 从 2011 年 10 月 起 至 今, 刘 老 师 定 期 审 阅 我 的 学 习 进 度 实 习 进 展, 不 时 地 给 予 鼓 励 在 刘 老 师 的 帮 助 下, 我 制 定 了 一 份 详 细 的 大 四 规 划 2011 年 12 月, 刘 老 师 推 荐 我 到 中 铁 中 铁 二 院 参 加 项 目 实 习, 帮 助 我 在 研 究 工 作 中 建 立 更 清 晰 的 思 维 和 更 宏 观 的 视 野 感 谢 清 华 大 学 师 兄 中 铁 二 院 测 绘 院 新 技 术 研 发 部 闵 世 平 部 长, 闵 部 长 为 我 提 供 了 优 越 的 工 作 环 境, 解 决 了 我 实 习 期 间 的 生 活 问 题, 并 定 期 指 导 我 的 实 习 工 作 感 谢 中 铁 二 院 测 绘 院 赵 龙 师 兄, 赵 师 兄 是 我 实 习 期 间 的 直 接 导 师, 也 是 我 最 为 崇 佩 的 研 发 人 员, 我 整 个 实 习 期 间 的 每 一 丝 进 步 每 一 份 收 获, 都 离 不 开 赵 师 兄 的 耐 心 教 导 感 谢 中 铁 二 院 测 绘 院 新 技 术 研 发 部 代 强 玲 林 春 峰 吴 木 生 许 懿 娜 林 国 庆 缪 志 修 刘 建 军 刘 雪 梅 刘 峡 杉, 跟 他 们 一 起 共 事 的 6 个 月, 是 我 大 学 里 进 步 最 大 最 为 充 实 最 为 快 乐 的 时 光 最 后, 感 谢 我 的 父 母, 感 谢 他 们 为 我 创 造 的 成 长 环 境, 感 谢 他 们 的 辛 勤 工 作 和 无 私 付 出, 因 为 有 他 们, 我 才 得 以 安 心 学 习, 努 力 成 材 44

参 考 文 献 [1] Tanabe M, Komiya S, Wakui H. Simulation and Visualization of a High-Speed Shinkansen Train on the Railway Structure[J]. Japan Journal of Industrial and Applied Mathematics, 2000, 17(2): 309-320. [2] 宋 波, 张 占 军, 何 元 庆 等. 铁 路 线 路 三 维 GIS 系 统 建 设 研 究 [J]. 中 国 铁 路, 2008(10): 35-41. [3] Liu L, Xia Y, Han Y. Research on Three-Dimensional Modelling of Railway Route in Railway Route Selection[C]. //International Conference on Mechanic Automation and Control Engineering, IEEE, 2010: 2907-2911. [4] 张 弓, 许 伟 平, 陈 莹. 沿 路 径 放 样 建 模 在 3 维 GIS 中 的 设 计 与 实 现 [J]. 测 绘 与 空 间 地 理 信 息, 2010, 33(2): 132-133. [5] 杜 勤. 道 路 设 计 的 三 维 可 视 化 [J]. 城 市 道 桥 与 防 洪, 2004(6): 27-31. [6] 蒲 浩, 宋 占 峰, 詹 振 炎. 基 于 约 束 Delaunay 三 角 剖 分 的 道 路 三 维 建 模 方 法 [J]. 华 中 科 技 大 学 学 报 ( 自 然 科 学 版 ), 2005, 33(6): 111-113. [7] Luliang T, Qingquan L. The Research of Transect-Based Three-Dimensional Road Model[C]. //Conference proceedings ISPRS conference in Istanbul, ISPRS, 2004: 174-177. [8] Rabbani T, Heuvel F V D. 3D Industrial Reconstruction by Fitting CSG Models to a Combination of Images and Point Clouds[C]. //Conference proceedings ISPRS conference in Istanbul, ISPRS, 2004: 7-12. [9] 赵 刚, 张 翀, 江 勇. 计 算 机 图 形 显 示 加 速 及 实 现 技 术 [M]. 北 京 : 电 子 工 业 出 版 社, 2009: 220. [10] 姚 晨 芳. 三 维 图 形 引 擎 中 动 态 地 形 实 时 绘 制 技 术 研 究 与 实 现 [D]. 电 子 科 技 大 学, 2011: 10. [11] 吴 学 毅. 计 算 机 图 形 学 原 理 与 实 践 [M]. 北 京 : 印 刷 工 业 出 版 社, 2008: 28. [12] 李 盛, 万 敏, 吴 向 东. 基 于 OpenGL 视 点 坐 标 系 的 三 维 场 景 旋 转 算 法 [J]. 计 算 机 工 程 与 应 用, 2006, 42(16): 83. [13] 束 搏, 毛 天 露, 王 兆 其. 基 于 D3D 的 三 维 虚 拟 人 运 动 显 示 [J]. 计 算 机 辅 助 设 计 与 图 形 学 学 报, 2004, 16(11): 1508. 45

[14] 顾 平, 许 家 英. 基 于 3DS MAX 软 件 平 台 织 物 结 构 的 三 维 模 拟 [J]. 丝 绸, 2007, 11: 42. [15] 杨 晖 柱, 张 其 林, 常 治 国 等. 空 间 弯 扭 箱 形 截 面 构 件 的 数 字 化 三 维 建 模 与 放 样 技 术 [J]. 钢 结 构, 2007, 22(6): 65-68. [16] Daniel Pletinckx. Quaternion Calculus as A Basic Tool In Computer Graphics[J]. The Visual Computer, 1989, 5(1-2): 2-13. [17] Dah-Jing Jwo, Mei-Ying Hsieh, Shih-Yao Lai. GPS Navigation Processing Using the Quaternion-based Divided Difference Filter[J]. GPS Solutions, 2010, 14(3): 217-228. [18] 李 亚 萍, 黄 崇 超. 实 四 元 组 与 三 维 旋 转 [J]. 武 汉 水 利 电 力 大 学 学 报, 1995, 28(6): 607-612. [19] 程 磊, 刘 海 艳. 一 种 三 维 实 体 模 型 表 面 法 线 计 算 方 法 研 究 [J]. 沈 阳 理 工 大 学 学 报, 2009, 28(4): 25. [20] 谭 茹. 计 算 机 图 形 学 中 纹 理 生 成 研 究 [D]. 辽 宁 师 范 大 学, 2007: 2-3. [21] 王 相 海, 庞 云 阶. 模 拟 绘 画 的 三 维 几 何 纹 理 生 成 研 究 [J]. 计 算 机 学 报, 2002, 25(9): 983. [22] 韩 建 伟, 王 青, 周 昆 等. 基 于 WangTiles 的 几 何 纹 理 合 成 [J]. 软 件 学 报, 2009, 20(12): 3255. [23] 朱 国 仲, 张 玉 华. 基 于 二 维 纹 理 映 射 的 镜 面 反 射 加 速 绘 制 [J]. 计 算 机 工 程 与 设 计, 2011, 32(7): 2440. 46