三维模型构建(精选十篇)
三维模型构建 篇1
工程地质勘测包括地质测绘、勘探、室内实验、原位测试等, 以便对工程地质条件进行评价, 为工程建设的规划、设计、施工提供必要的依据及参数。三维地层模型可以将地下复杂的地层情况直观地呈现在工程师面前, 对工程地质勘测起到辅助设计作用。三维地层模型在地下空间开发、油气资源开发和岩土工程问题分析中具有重要作用[1]。
三维空间数据模型总体上可分为面模型、体模型、及混合 (集成) 模型三大类[2]。
软件采用Delaunay三角剖分方法将钻孔连接成网状, 采用统一土层划分方法, 利用钻孔数据建立三维地层模型[3], 形成Delaunay三角网[4]。
Delaunay三角网具有如下性质[5]:
(1) 唯一性:不论从区域何处开始构建, 最终结果都一致。
(2) 最优性:最接近的三点构成三角形, Delaunay三角网与其他三角网相比, 对所有三角形的最小角而言, Delaunay三角网的最小角最大。
(3) 区域性:增加、删除、移动一个顶点只会影响临近的三角形。
构造Delaunay网的方法有分治算法、逐点插入法、三角网生长法等[6]。
2. 软件体系结构设计
数据库设计
钻孔表和地层表, 对应的E-R图如图1所示。
软件中主要涉及七个类, Delaunay三角剖分中要用到的Vertex, Ed ge, Trian g le, Delau n ay四个类, 地层信息存储和显示涉及L a y e r P r o p e r t y, D r i l l i n g h o l e, DrillingholeCollection三个类, 其UML类图如图2所示。
3. 主要算法设计
Delaunay三角剖分采用逐点插入法中的Bowyer-Watson算法, 算法步骤如下:
(1) 构造一个包含所有点的外框三角形, 放入三角形链表中;
(2) 在点集中依次不重复取出一个点, 执行以下操作:
在三角形链表中找出该点的所有影响三角形, 影响三角形是指其外接圆包含该点的三角形。找出所有影响三角形的公共边, 并将其删除, 连接该点与所有影响三角形的顶点, 将新形成的三角形加入三角形链表中, 同时在三角形链表中删除该点的所有影响三角形;
(3) 重复步骤2, 直至对点集中所有的点执行完操作;
(4) 删除三角形链表中顶点含有外框三角形顶点的所有三角形, 最终三角形链表中的三角形构成Delaunay三角网。
构造包含所有点的外框三角形伪代码如下:
如此构造的外框三角形如何能够包含所有点呢?不妨设对应矩形中心坐标为 (0, 0) , 则由图3知构造的外框三角形包含了所有点。
由于岩土介质空间分布的不连续性、不均匀性和不确定性, 地层之间相互交叉侵蚀, 地质实体之间的关系错综复杂。在三维地层信息系统中, 如何对地层进行划分是涉及到三维地层建模的一个关键问题[7]。
软件中采用的统一地层划分的方法如下:对钻孔原始数据进行预处理, 充分考虑交错、重叠等, 确定适用于每个钻孔的地层分布情况, 但其中允许地层的厚度为零。这样可以较好地处理不连续、不均匀的地层分布, 便于分别对每一地层建立实体模型。统一地层划分方法伪代码见下:
4. 软件实现
考虑到AutoCAD在土木建筑行业中应用广泛, 同时便于对三维地层数据进行进一步加工处理, 软件采用V B对AutoCAD进行二次开发实现。
运行程序建立三维地层模型, 如图4所示:
选定某一地层, 可以知道该地层的属性, 如图5:
对三维地层进行剖分, 可以看到地层内部情况, 见图6:
5. 结论
软件采用Delaunay三角剖分和统一地层划分方法建立三维地层模型, 进行了数据库E-R图设计和UML类图设计, 讨论了主要的算法, 利用VB对AutoCAD进行二次开发来实现软件。软件可以使工程师直观了解地下复杂的地层情况, 方便对地层进行分析, 对工程地质勘测有辅助作用。
摘要:三维地层模型对工程地质勘测很重要, 软件采用的Delaunay三角网和统一地层划分方法构建三维地层模型。在软件体系结构设计中设计了数据库E-R图和UML类图, 讨论了软件的主要算法 (Delaunay三角剖分、统一地层划分) 的实现方法。最后利用VB对AutoCAD进行二次开发实现了软件, 展示了软件运行效果。
关键词:三维地层,Delaunay,统一地层划分,VB,AutoCAD
参考文献
[1]周翠英,赵宏坚,杨锡鎏.三维地层构造发展现状[J]. 中山大学学报 (自然科学版) .2009年9月第48卷第5期.
[2]程朋根等.三维地层模型构建方法的研究及应用[J].吉林大学学报 (地球科学版) .2004年4月第34卷第2期.
[3]陈永锋等. 基于钻孔数据的地质面Delaunay三角剖分[J]. 金属矿山.2009年第9期总第399期.
[4]Delaunay B Sur la Sphere Vide.Bulletin of the Academy of Sciences of the USSR.Classe des Sciences Mathematiques et Naturelles, 1934 (8) .
[5]武晓波, 王世新, 肖春生.Delaunay三角网的生成算法研究[J].测绘学报.1999年第28卷第1期.
[6]武晓波, 王世新, 肖春生.Delaunay三角网的生成算法研究[J].测绘学报.1999年第28卷第1期.
三维模型构建 篇2
大规模三维模型的快速构建一直是影响城市三维地理信息系统(3DUGIS)发展的一个重要因素.基于3DUGIS中景观模型的表达原则与分类,分别针对抽象的点、线、面状对象提出符号匹配和三角剖分的批量三维模型构建方法.这种建模方法方便、快捷、自动化程度高,可广泛应用于城市景观中地面、河流、道路、绿地、规则建筑物、地下管线等地物的.三维建模.通过对上述三维模型快速构建方法的实现,验证了三维模型生成的效果和效率.
作 者:朱国敏 马照亭 孙隆祥 李成名 ZHU Guo-min MA Zhao-ting SUN Long-xiang LI Cheng-ming 作者单位:朱国敏,ZHU Guo-min(义乌市勘测设计研究院,浙江,义乌,32)
马照亭,孙隆祥,李成名,MA Zhao-ting,SUN Long-xiang,LI Cheng-ming(中国测绘科学研究院,北京,100039)
三维模型构建 篇3
关键词:Chemsketch;分子;晶体结构
中图分类号:TP302.4 文献标识码:A文章编号:1009-3044(2007)16-31130-01
Application of Chemsketch in Three-dimensional Space Model
LI yan1,NIE Guang-hua2
(1.Hubei Institute for Nationalities, School of Information Engineering, Enshi 445000,China;2. Hubei Institute for Nationalities, School of Chemistry and Environment, Enshi 445000,China)
Abstract:Three-dimensional space model such as molecules and crystal were constructed using Chemsketch program. The structures can be lively exhibited. Take the case of regular icosahedrons; the constructed methods of three-dimensional space model were introduced.
Key words:Chemsketch;molecule;crystal structure
1 引言
在一些学科的教学中,三维动态模型可有效的帮助学生理解和掌握相关的知识,但传统教材多采用二维平面图形描述,对于空间想象能力和抽象思维能力较差学生不容易理解和掌握。利用Chemsketch可方便构造出可交互的三维模型,这些模型是动态的,可以操纵它们移动、旋转和进行放大、缩小等,这无疑会增加形象性和直观性,在化学、生物学、物理等教学中都会取得良好的教学效果。
2 Chemsketch功能简介
ChemSketch是加拿大Advanced Chemistry Development Inc.(ACD)软件公司为其NMR谱图数据库以及物性估算软件设计的结构分子式输入软件。该软件可用于画化学结构、反应和图形,也可用于设计与化学结构相关的报告和演讲材料。
ChemSketch具有以下主要应用模式和主要功能:结构模式,用于画化学结构,计算其各种属性;绘图模式,进行文本与绘图操作;另外还可自动计算分子量,原子百分组成、摩尔折射率、摩尔体积、折射率、表面张力、密度、介电常数、极化率。
利用ChemSketch软件可方便快捷的绘制2D化学结构,另外可利用其自带一个可以动态显示三维结构的程序,可以将绘制的结构式显示为三维立体结构并且可让三维结构分子式自动在三维空间中自由旋转,也可用鼠标拖动结构分子式让它在三维空间中旋转,用户就可从不同角度观察化学结构。这个程序还有一个强大的功能,可以计算出任意两个原子间的距离,计算键角和中间隔一化学键的两个化学键之间的扭转角。
3 三维界面
建立晶体的三维立体结构,一般在ChemSketch结构模式中绘制好结构式,然后单击“Copy to 3D”按钮,就进入了ACD/3D窗口。要使3D结构动起来要单击对其进行优化。ACD/3D窗口如图1所示。
三维结构可采用多种显示模式: 线形、棍形、球棍形、球形、圆形和电子云形6种空间立体结构显示方式。
线形模式:分子的原子用点表示,键位用细线表示。
棍形模式:分子的键位用圆柱体表示。
球棍形模式:用球棍模型表示三维结构。
球形模式:原子用球体表示。
电子云模式:电子云方式。
圆形模式:原子用圆形表示。
图1
3D结构各原子都配以基本颜色,默认背景色为黑色,用户可选绎不同的颜色模式。
拖动鼠标即可任意旋转分子或选绎“Auto rotate”或“Auto rotate and change style”按钮可自动旋转结构;学生就可直观的从各个角度观察到晶体的空间结构。
对3D中的图形可以直接剪贴到我们需要的地方,如Word中;另外,也可将3D文件转换成VRML,用于多媒体教学和Internet上的远程教育。
4 三维模型绘制示例-正十二面体 C20的绘制
(1)从原子基团表Table of Radicals中选择环戊烷,在绘图区中放置一个环戊烷。
(2)用鼠标在环戊烷的每一个键位上单击以生成其它五个环。
(3)单击鼠标右键以快速转换至选择/移动Select/Move工具 。
(4)按下图移动a,c,e,g,i原子分别到b,d,f,h,j原子
(5)在原子工具条中选择碳原子按键,在下图箭头所指位置单击,生成甲基。
(6)通过拖动鼠标连接相邻的甲基碳原子,得到以下结构:
(7)单击3D Optimization按键得到所绘结构的3D模型。
(8)单击删除工具 按键,删除氢原子。
(9)单击“Copy to 3D”按钮,就进入了ACD/3D窗口。
利用ChemSketch建立的分子和晶体等的三维立体结构授课,可充分激发学生的学习兴趣,提高课堂效率,学生看后不但易于理解而且印象深刻,帮助教师突破了难点。
参考文献:
[1]ChemSketch软件自带的帮助文件。
三维模型构建 篇4
(一) 三维财务绩效评价原理
迈克尔·波特在产业竞争力的研究中提出了“钻石模型”理论 (如图1) , 认为:一国的国内经济环境对企业和产业开发竞争优势有很大影响, 其中影响最大、最直接的为生产要素、需求条件、相关和支持性产业以及企业组织战略和同业竞争;机遇和政府则为间接影响因素。该理论通过对竞争力来源的揭示, 反映出企业财务绩效多维立体的特征。“多维”指企业财务绩效不仅与内部财务资源有关, 还与财务战略、外部财务关系息息相关:财务战略上, 体现在企业与战略环境的交互适应过程中;财务资源上, 它蕴涵于企业的资源配置效率之中;财务关系上, 它体现的是内外部利益相关者利益协同能力。“立体”指每一财务绩效维度所呈现出的纵横交错的财务比率关系, 如企业的财务关系维度应主要反映利益相关者投入资本的增值水平, 而它直接由利益相关者的利益协同满意度决定, 因此在研究企业的财务关系时就要研究利益相关者的利益协同满意度与其投入资本的增值关系。基于企业财务绩效上述特点的分析, 本文借助BCG (Boston Consulting Group Growth-Share Matrix) 矩阵的思想, 分别构建“环境适应财务绩效评价矩阵”、“资源配置财务绩效评价矩阵”和“利益关系财务绩效评价矩阵”, 并对各维度财务绩效评价矩阵不同区域进行经济解释。
(二) 三维财务绩效评价指标体系设计
基于财务战略、财务资源和财务关系三维企业财务绩效评价指标选取主要依据财务绩效定量评价的四个方面, 即:企业一定期间的盈利能力、资产质量、债务风险和经营增长等。本文用市场环境适应度、投资环境适应度和融资环境适应度分别反映企业对市场和投融资环境的适应能力, 用投入资本价值创造率反映企业的价值创造能力;用现金循环周转率和现金延期支付比反映企业的资源配置能力, 用投入资本自由现金率反映企业价值创造的资金保障能力;用股东资本协同满意度、员工协同满意度、客户协同满意度和供应商协同满意度反映企业的利益协同能力, 用投入资本现金增值率反映企业的现金盈余能力。具体指标见表1。
二、三维财务绩效评价矩阵模型的构建
(一) 三维财务绩效评价基本矩阵模型设计
环境适应财务绩效评价矩阵以财务战略环境适应率为横轴, 投入资本价值创造率为纵轴;资源配置财务绩效评价矩阵以财务资源优配率为横轴, 投入资本自由现金率为纵轴;利益关系财务绩效评价矩阵以财务利益协同率为横轴, 以投入资本现金增值率为纵轴。并分别设定财务战略环境适应率、投入资本价值创造率、财务资源优配率、投入资本自由现金率、财务利益协同率和投入资本现金增值率的正负阈值, 将矩阵的第一象限划分为A1~A4区域, 第二象限划分为B1~B4区域, 第三象限划分为C1~C4区域, 第四象限划分为D1~D4区域。可建立财务绩效的评价集E={E1, E2, E3}, 其中:Ed={A, B, C, D}, A={A1, A2, A3, A4}, B={B1, B2, B3, B4}, C={C1, C2, C3, C4}, D={D1, D2, D3, D4}, d={1, 2, 3}。三维财务绩效基本评价矩阵模型见图2:
(二) 三维财务绩效评价矩阵各区域的经济学分析按照BCG矩阵的思想, 对各维度财务绩效评价矩阵的区域进行经济解释。
(1) 环境适应财务绩效评价矩阵。处于A区的企业, 财务战略环境适应能力强, 投入资本具有价值创造能力, 整体上属于“明星类”;处于B区的企业, 投入资本具有价值创造能力, 但财务战略环境适应能力差, 整体上属于“奶牛类”;处于C区的企业, 财务战略环境适应能力差, 投入资本的价值创造能力亦差, 整体上属于“问题类”;处于D区的企业, 财务战略环境适应能力强, 投入资本的价值创造能力差, 整体上属于“瘦狗类”。
(2) 资源配置财务绩效评价矩阵。处于A区的企业, 财务资源的配置能力强, 价值创造的自由现金充足, 整体上属于“明星类”;处于B区的企业, 价值创造的自由现金充足, 但财务资源的配置能力差, 整体上属于“奶牛类”;处于C区的企业, 财务资源的配置能力差, 价值创造的自由现金短缺, 整体上属于“问题类”;处于D区的企业, 财务资源的配置能力强, 价值创造的自由现金短缺, 整体上属于“瘦狗类”。
(3) 利益关系财务绩效评价矩阵。处于A区的企业, 财务利益协同能力强, 投入资本现金增值能力强, 整体上属于“明星类”;处于B区的企业, 投入资本现金增值能力强, 但财务利益协同能力差, 整体上属于“奶牛类”;处于C区的企业, 财务利益协同能力差, 投入资本现金增值能力差, 整体上属于“问题类”;处于D区的企业, 财务利益协同能力强, 投入资本现金增值能力差, 整体上属于“瘦狗类”。
(4) 三维财务绩效评价矩阵各区域的经济含义。见表2。
(三) 矩阵坐标轴比率及正负阈值的计算财务战略环境适应率、财务资源优配率和财务利益协同率的计算采用如下公式:
矩阵坐标轴的正负阈值确定采用如下公式:
式中:i表示矩阵的横纵坐标轴阈值, j表示坐标轴的正负阈值, i={1, 2}, j={1, 2}。i=1表示横轴, i=2表示纵轴;j=1表示正阈值, j=2表示负阈值。m表示每一坐标轴的正值样本个数, k表示每一坐标轴的负值样本个数, m+k为样本总数。d表示维度, d={1, 2, 3}。
三、三维财务绩效评价实证分析
(一) 样本选取与评价矩阵计算
考虑数据的易获得性, 样本数据采用沪深两市上市公司公开披露的年度财务报表数据。经数据分析并剔除数据不全的公司后, 选取设备制造行业的70家上市公司2007~2008年面板数据进行实证分析。数据处理采用VFP6.0高级语言编程, 图形显示采用Matlab语言编程。首先, 建立样本数据库, 并进行数据分析和样本筛选, 得到选取的70家企业样本数据库 (包含2007~2008年的合并资产负债表、合并利润表、合并现金流量表全部数据) 。其次, 由计算机对样本数据进行分类计算, 得到表1中的各指标计算值。再次, 进一步计算得到各维度矩阵坐标轴的评价值, 并按设定的评价集进行类型划分。最后, 采用Matlab程序将各维度评价矩阵进行图形显示。评价矩阵部分样本计算结果见表3。
(二) 评价结果分析
通过计算可知, 各维度的阈值分别为:T111=0.2226, T112=-0.2515, T121=0.0612, T122=-0.041;T211=1.0466, T212=0, T221=0.1289, T222=-0.0603;T311=0.2976, T312=-0.1277, T321=0.0977, T322=-0.0600。财务战略环境适应率大于0的个数为44, 占总数的62.86%;大于正阈值的样本个数为18, 占总数的25.71%;小于负阈值的样本个数为11, 占总数的15.71%。投入资本价值创造率大于0的个数为49, 占总数的70%;大于正阈值的样本个数为19, 占总数的27.14%;小于负阈值的样本个数为4, 占总数的5.71%。财务资源优配率大于0的个数为70, 占总数的100%;大于正阈值的样本个数为29, 占总数的41.43%;小于负阈值的样本个数为0, 占总数的0%。投入资本自由现金率大于0的个数为45, 占总数的64.29%;大于正阈值的样本个数为8, 占总数的11.43%;小于负阈值的样本个数为17, 占总数的24.29%。财务利益协同率大于0的个数为57, 占总数的81.43%;大于正阈值的样本个数为20, 占总数的28.57%;小于负阈值的样本个数为21, 占总数的30%。投入资本现金增值率大于0的个数为48, 占总数的68.57%;大于正阈值的样本个数为18, 占总数的25.71%;小于负阈值的样本个数为8, 占总数的11.43%。计算结果的统计分析见表4。
各维度评价矩阵的结果显示见图3、图4和图5:
本文从财务战略、财务资源和财务关系三个维度分别建立了“环境适应财务绩效评价矩阵”、“资源配置财务绩效评价矩阵”和“利益关系财务绩效评价矩阵”, 并利用我国70家上市公司面板数据进行了实证研究。结果表明:基于BCG思想的企业三维财务绩效评价矩阵模型不仅能直观反映企业财务协同绩效的状况, 还能进行有效的多维价值定位分析, 这对于企业财务协同管理具有重要的意义。
参考文献
[1]张友棠、冯自钦、程瑞川:《财务三维价值矩阵评价模型研究》, 《武汉理工大学学报》2008年第11期。
[2]冯振环、李冬:《现场管理执行力评价指标体系的构建与模型检验》, 《天津财经学院学报》2008年第3期。
三维模型构建 篇5
支架零件图如图15所示,下面将介绍支架零件在三维建模中是如何进行创建的。
图15 支架零件图图形分析支架零件图由主视图中可看出,它是由三个部分所组成,上面为夹头及夹紧装置构成;最下面是支架零件的安装座,其上有两个沉孔孔造型;中间为厚度6mm和8mm的T字形筋板构成,它是联接夹头与安装座的部分。综合以上分析,可采用以下方法进行创建。(1)分别绘制闭合图形;(2)将各闭合图形生成“面域”;(3)用“拉伸”命令将各闭合图形,按各部分尺寸的要求,只拉伸一半的值;(4)各孔可以轴线为中心绘制半个闭合图形后,生成面域。然后,利用“旋转”命令以中心线为放置轴旋转生成实体造型。(5)利用“求和”和“求差”命令,将物体合并为一个整体,完成支架零件的三维模型创建。 具体创建操作方法如下:1. 保存为支架零件的三维实体模型图。打开支架零件图,选择“文件”/“另存为”菜单命令,在打开的“圆形另存为”对话框中的名称栏内,重新命名如:图6-26-1的文件名,单击“确定”按钮,完成新文件的建立。2.保留相关图形。 关闭相关图层或者删除多余的线。 关闭除轮廓线图层以外的其它图层,或者删除除可见轮廓线以外的所有对象。结果如图16所示。 提示:只留下主视图。图16 需保留的图形部分 图17 绘制各自封闭图形3.修改图形。 将各部分按绘制独自地封闭图形为原则进行绘制。孔的部分只绘制以中心线为旋转轴线的一半封闭图形,删除直径为18mm、高度为3mm的线段,绘制的结果如图17所示。 提示:由图17所示,共绘制出各自封闭的图形9个,但因明确它们应创建支架实体的相关部位的实体。图18 创建拉伸实体4.生成面域。单击“绘图”工具条上的“面域”按钮,框选所有图形,回车后生成9个面域。 5.拉伸创建实体。单击“建模”工具条上的“拉伸”按钮,或者输入:EXT命令,选择图17中的图形1,拉伸值为41mm;选择图形3拉伸值为20mm;选择图形4拉伸值为4mm;选择图形5、图形6和图形8,拉伸值为25mm;选择图形9拉伸为13mm,拉伸后创建的实体如图18所示。 6.合并和切除实体。 单击“建模”工具条上的“差集”按钮,先选择大圆柱体,按回车键后,选择小圆柱体,回车生成孔造型,如图19所示,图19 创建孔造型 图20 创建切槽造型 7.合并实体。 单击“建模”工具条上的“并集”按钮,选择除图形2、图形7和实体9以外的所有实体,将它们合并为一个整体。8.求差生成通槽造型。单击“建模”工具条上的“差集”按钮,先选择合并物体,按回车键后,选择实体8,按回车键后生成切槽造型,如图20所示。9.创建旋转实体造型。 单击“建模”工具条上的“旋转”按钮,选择图形2,再选择图形的中心直线上的两个端点,按回车键创建的旋转实体如图21所示。图21 创建旋转实体 图22 创建沉孔造型10.移动旋转实体与求差生成沉孔造型。 按“M”键,选择旋转实体往右,距离为20mm,按回车键结束移动。再利用“差集”按钮,先选择合并的整体,按回车键后,再选择旋转实体,回车创建出沉孔造型如图22所示。11.镜像实体。 单击“修改”工具条上的“镜像”按钮,或者直接输入:MI命令,选择创建的实体,再选择实体中心的垂直边线上的两点,按回车键后,创建镜像物体如图23所示。图23实体镜像图24 合并实体12.合并实体。 用前述的方法,将镜像实体合并成一个整体,如图24所示。13.旋转实体。利用“旋转”命令,将图形7旋转生成实体。然后,用“差集”将其去除后,生成孔造型,如图25所示。图25 创建孔造型 图26 边圆角造型14.边圆角。 单击“修改”工具条上的“圆角”按钮,或者直接输入:F命令,设置圆角半径为13mm,选择夹紧装置的4条垂直边,进行倒圆角如果如图26所示。15.新建一个用户坐标系。 在命令行中输入:UCS 按回车键,再输入:N 新建用户坐标系,再按回车键,输入:3 即用3点确定坐标原点。用鼠标捕孔的中心点,将坐标原点设置在圆心处,如图27所示。图27 建立用户坐标系 坐标原点图28 绘制二个同心圆16.绘制二个圆。 单击“绘图”工具条上“圆”按钮,或者直接输入:C,回车后,用鼠标单击坐标原点,输入:半径为9mm,用同样的方法,在绘制一个半径为5.5mm的同心圆。 17,拉伸圆生成圆柱凸台。 输入拉伸距离为:3 mm,选择二个圆向上拉伸。然后,用大圆柱体减去小圆柱体。再将圆柱与整体合并。结果如图28所示。图28 创建圆柱体 图29 创建支架零件的三维模型18.倒圆角。 选择圆柱凸台与放置面间的交线、6mm厚的筋板、8mm的筋板垂直边圆角均为3mm。创建的支架零件的三维模型,如图29所示。三维模型定义 (MBD)实施经验 篇6
前面两期文章总结了三维模型定义实施的十要和十不要,并深入介绍了人员方面(人事结构和团队理念)和流程方面(方法、步骤和工具)的经验和教训。在此基础之上,下面两期文章将重点分析三维模型定义实施的第三个关键领域:产品,即具体的产品设计和制造。本文作为产品篇的上半部分首先提出四条建议,下期将继续解释四个误区。
二、MBD实施经验之产品篇:四点建议
1.选好制造文档作为突破口
产品生命周期中,各种制造文档卷帙浩繁。初始实施不求全面转型,只需要集中精力找准一两种文档突破即可,以点带面,积累经验,然后逐步扩大范围。美国一家水处理设备公司 Waters就是一个典型的例子。尽管实施团队满怀热情,计划全面取代二维工程图,但是遇到采购、检测等各个部门的阻力。经过协商,最终同意采纳简单、低风险的标准件或外购件采购文档作为试点,如螺丝、轴承、管路和三通等。以往这些零部件都由二维工程图定义,但实际上它们都是按照行业标准或规定设计和生产的,尺寸和公差都遵循行业通行的规范。所以采购部只需要确认零件号、种类、规格、材料和数量,这些信息大都已经在标题栏体现;而检验员只需要按照设计要求检查关键尺寸,完全没必要检测所有特征,因而不需要完全尺寸定义;公差更简单,除非特殊要求,其他绝大部分都已经在技术要求或标题栏中进行全局定义,例如线性尺寸小数点后两位精度公差为正负 0.01,三位精度公差为正负 0.005,角度公差正负 1度。所以最终达成的双赢共识是如图 1所示的三维 PDF。设计部门直接标注模型,省略大量非关键尺寸,发布三维 PDF,并检入产品生命周期系统,从而不再需要单独的二维工程图;而采购和检测部门从产品生命周期系统读取更加清晰的电子三维 PDF,得到关键尺寸。更重要的是,这个突破口可以让三维模型定义和三维 PDF得到更广泛的关注和使用。
类似突破开路的例子还有很多。比如一家日用消费品企业选定复杂的塑料零件在三维环境下标注关键特征,而其他非关键的有机复杂曲面则只在 CAD模型基础上定义一个表面轮廓度公差要求。原因是有机曲面本身就很难完全标注准确,没有必要花费时间在二维工程图上。另外一家医疗仪器企业用三维钣金件 PDF做询价单,可以增进加工厂的理解,提高报价速度。
2.清晰的组织与呈现三维标注
制造信息的读取对制造的成败至关重要,因此组织和呈现三维标注应该得到与创建标注同等的重视。图 2中繁乱的显示给理解设计意图造成了极大的不便,业界戏称为“刺猬现象”。这使三维模型定义备受诟病,经常给实施造成阻力。
三维模型定义并不代表完全抛弃二维工程图行之有效的方法。比如二维图层清楚的组织重叠元素就广受欢迎。在三维模型中,图层也可以帮助有效地分类组织标注,尤其是同一个视角的不同元素。美国军标 31000A规定:“标注应该能够分配到合适的图层和角度,从而有条理地组织和显示”,如图 3所示(数据来源:MIL-STD-31000A, Department of Defense Standard Practice Technical DataPackages,2013年)。比如前视角度可以分层显示或隐藏线性尺寸、角度尺寸、基准、几何公差、技术要求、表格、孔标注、端面标注和外形尺寸标注等。由此可见标注图层的分类组织可以非常灵活,完全由设计需要决定。
在图层基础上,一些传统视图对呈现和领会三维标注也非常重要,比如三视图、局部视图、剖视图和断裂视图等。更进一步来看,三维空间的独到优势以及图层与视图的综合使用,使得其他显示模式成为可能,比如动态显示标注和三维视图缩影等,如图 4~ 6所示。由此,众多的三维标注就可以合理地分配到各种图层和视图中,只在合适的情况下显示和使用。
3.订制标准化模板
除了利用图层和视图清晰地组织和展示三维标注,订制标准化模板可以进一步组织和管理三维模型定义的大量数据,方便下游生产环节读取。而且有助于加速数据创建,统一风格,保证一致性。模板可谓一劳永逸,不需要经常修改,可以应用于很多场合,如三维标注、技术要求、三维PDF、模型属性和表格等。这里简单介绍三个例子。
(1)三维标注模板。详细的三维标注可能会花费大量时间。比如欧洲一家汽车制造商的白车身底板零件可能包括上百个尺寸公差,而传动系统的气缸盖可能需要 800多个。手动定义完成一个零件所有标注之后,这些信息会记录在一个模板当中。在其他类似的设计或配置当中,只需要利用这个模板就能把所有标注自动复制创建,而工程师只需要根据新设计的独特之处手动修改少量标注而不是全部。不仅节省了几天甚至几周的时间,而且还可以保留标注的布局、精度、公差风格以及与模型特征的关联性。
(2)技术要求模板。技术要求的条款可能很多,但是大都遵循一些言简意赅的模式,保证了一致性、避免误解。正如美国一家研究机构提到的:“我们不希望看到几十个工程师各自创建几十个不同的粗糙度或氧化处理的技术要求。 ”所以模板正好派上用场。这家机构把所有技术要求的条目都统一罗列在一个 Excel模板文件中,由产品数据软件管理,对普通用户设置为只读。工程师无需自行书写技术要求,而是使用一个软件工具指定需要的条目,程序就可以自动从Excel中选择相应的内容发布到三维 PDF。类似的模板还可以包括其他文字内容,例如知识产权声明和保密声明等。
(3)三维 PDF模板。如上文所述,制造文档类型繁多,而且每个种类的文件都需要一定的规范。使用三维 PDF格式生成这些文档具备诸多优势,但是首先必须要满足类型规范。比如标准件采购文档需要公司商标、标题栏、模型视图和技术要求等;除了这些基本元素,装配手册还需要材料明细表、爆炸视图和装配步骤等;检测报告需要尺寸表格、实际测量尺寸文本框、批准签字区等。还有些文档需要封面,比如美国政府要求武器相关的文档第一页应该首先显示国际武器交易法规声明(ITAR,International Traffic in ArmsRegulations),与出口相关的文档第一页应该显示出口管理法规声明(EAR,Export AdministrationRegulations)。其它面向客户的市场和培训等文档需要专业图片封面等。所有以上元素都可以定义在各种类型的三维PDF模板当中。发布三维 PDF只需要选择合适的模板,然后一系列信息如模型、标注、属性、视图、表格、技术要求、图片和声明等都会按照模板规范自动输出,省去了重复劳动,极大地提高了效率和标准化程度。
4.验证模型、标注和衍生文件质量
图样校验是传统流程中的一个关键步骤。在三维模型定义中,这个步骤不仅不能省略,而且职责更广,包括模型质量、标注质量和保存到 CAD软件新版本之后的准确性、以及衍生文件的准确性。
模型质量涉及众多不易察觉的细节,所以问题可能比想象的要严重。比如美国陆军的一个试点项目显示某坦克传动系统,21%的模型都有错误(数据来源:Certification of Model-Based EnterpriseData,SimonFrechette和 RoyWhittenburg,2011年)。图 7列举了常见缺陷:堵塞的孔、裂缝、空缺和薄壁,导致加工故障。
标注质量包括几何尺寸和公差(GD&T)的准确性、是否满足国标要求(三维模型定义国标为 GB/T 24734-2009)、与模型的关联性以及显示布置等。问题最多的是GD&T。美国一家航空设备制造商提到:“我们把 GD&T奉若经典。每个新工程师都要经过两周的专门培训。但即使这样,使用错误还是层出不穷,甚至出自资深工程师。”举一个简单的例子,图 8为平行度与基准面 A矛盾,有些软件可以自动检测提醒 GD&T的错误。
升级到 CAD软件新版本之后,也要注意标注的准确性。如图 9所示,模型升级之后直径公差丢失。
上述都是文件本身可能的质量问题,下面解释一下衍生文件可能出现的错误。众所周知,设计数据最理想的载体是 CAD软件本身的格式,可以比较完整真实地保留信息。但是下游环节,尤其是外部供应链不一定能够读取 CAD格式,所以各种三维衍生文件会经常用到。常见的如三维PDF供 Adobe阅读器浏览模型和标注;STEP、IGS和 JT供计算机辅助制造软件(CAM)或坐标测量机(CMM)自动编程。国际标准化组织(ISO)还在 2014年 12月专门为三维模型定义发布了 STEP242格式,在模型基础上包括了三维标注(数据来源:Industrial automation systems and integration --Product data representation and exchange --Part 242: Application protocol: Managed model-based 3Dengineering,ISO10303-242:2014);此外还有 STL或 AMF供三维打印等。这些格式都方便了数据交流,但是使用当中要注意验证衍生格式是否忠实于原始数据。图 10显示了一个衍生模型变形的例子。美国空军几家供应商就为此付出了惨痛的代价:某家一级供应商的模型和标注是在一款 CAD软件平台上设计,其二级供应商无法直接读取这个格式。因此前者导出了中间格式发给后者进行加工。结果项目已经进行了半年之后,才发现导出的数据根本就不符合原始设计:有些特征变形,有些标注错位甚至丢失。不仅项目损失惨重,双方甚至有可能法庭相见。供应商的一位工程师回忆:“我们三维模型定义初始尝试令人难堪。客户没有验证输出数据的准确性和完整性就交给我们。现在公司管理层还在担心如果没有正确的流程,三维模型定义会更加耽误时间,导致更多错误。”
要解决上述问题,可以指定专人验证,类似二维工程图校对。另外有的软件工具可以进行自动验证,图 7~ 10都是软件校验的例子。从商业合作角度出发,项目应该具备数据认证机制。数据发行方(甲方或乙方)必须要对关键交付数据进行认证。认证的数据要成为合同的一部分。如果出现问题,发行方、认证方要承担责任;而未经认证的关键数据不应具备投产资质。
三、结语
上文总结了四条注意事项:选好一两种制造文档作为突破口;清晰的组织和呈现三维标注和视图;订制标准化模板;验证模型、标注和衍生文件质量。下期将继续介绍四个注意避免的常见错误,如表所示。如果您想了解更多,欢迎关注后续文章,比如实施案例、行业标准、最新技术和经验教训等,也欢迎与 Oboe.MBD@gmail.com联系讨论。来信提出建议、想法、问题的同仁,都会免费得到一份精美的三维 PDF。
表三维模型定义实施在“产品”领域的“四要,四不要”
关键领域 四要 四不要
产品 1.选好一两种制造文档作为突破口2.清晰的组织和呈现三维标注和视图3.订制标准化模板4.验证模型、标注和衍生文件质量 1.不要省略关键标注2.不要停留在图像层次的三维标注3.不要排除打印纸质文档4.不要停留在初级三维 PDF
城市三维空间模型快速构建方法研究 篇7
部队处理突发事件的现场大多在城市,地理环境十分复杂,任务却具有高精确性、高技巧性和不可重复性的特点,常规训练手段已经不能适应。因此,针对城市三维空间数据模型的快速建立,对于提高部队作战水平,就显得尤为重要。目前,对于小范围内、大比例尺条件下的城市环境三维空间数据模型研究还比较少,但是不少学者提出了许多方案,应用于不同的领域。具有代表性的三维空间数据模型包括:Bak和Mills提出一个典型的地学资源管理系统(GRMS)[1],Rongxing Li提出一个基于多种表示的三维GIS系统[2]。Molenaar提出一个形式化三维数据结构(Formal Data Structure,FDS),定义了一个三维矢量数据模型和三维拓扑关系[3]。龚健雅提出一个以矿山应用为背景的矢量与栅格集成面向对象的三维数据模型[4]。Victor和Pilout.M.et al提出一个基于点四面体格网(Tetrahedral Network,TEN)的三维矢量数据模型[5]。李清泉、李德仁等针对城市三维领域的应用,提出用于城市三维空间数据模型的集成方法,即基于不规则三角网(TIN)和简单几何形体(CSG)的集成模型[6]。
在现有的三维空间数据模型中,有便于描述规则目标的模型如CSG和BR,也有便于描述不规则目标的模型如TIN和TEN。采用单一的数据模型很难对各种类型的空间实体进行描述。解决这一问题的办法主要有2种:一种是将不同的数据模型集成在一个系统中。对于不同的空间实体,选择不同的空间模型,采用不同分析和处理方法。另一种是,研究发展具有适应性更好的混合数据模型。然而,对于混合数据模型而言,本身就存在着很多复杂性。对此,学术界普遍偏向于第一种解决方案[7]。
本文就是在TIN+CSG三维空间数据模型集成的基础之上,进行适当的优化,提出一种TIN+CSG的快速建模方法,即在TIN模型的构建过程中,采用一次性生成约束TIN,CSG模型快速提取和CSG体素生长法相结合的方法,实现城市三维空间数据模型的快速建立。
2 城市三维空间数据模型快速建立方法的研究
2.1 一次性生成约束TIN
不规则三角网(TIN)是表示数字高程模型的一种方法,对它的研究已经相当深入[8,9],其最大的优势在于可变分辨率。表面相对单一时,在同样大小的区域内TIN则只需少量的数据点;与此同时TIN还能充分利用地貌的特征点、线,较好地表示复杂地形。多年来,TIN模型一直是人们研究和关注的热点。在TIN的基础上,加入约束条件后,形成约束Delaunay三角网(CD-TIN)。CD-TIN能够充分地考虑到离散数据的实际要求,生成的CD-TIN也能够符合空间分析的需要,因此将CD-TIN作为城市三维空间模型中地形模型的主要表示方法。
CD-TIN的常规构建方法是“两步法”,即先对约束数据集建立非约束的TIN模型,再在其中加入约束线段,并进行优化调整形成CD-TIN[10]。“两步法”具有固有时间效率低等缺点,通过阅读文献资料,研究常规三角网和约束三角网之间的区别与联系,无约束数据域和约束数据域之间构网算法的差别,提出在算法上具有运算效率高,实际效果符合城市地形模型基本要求的一次性生成CD-TIN算法。
一次性生成CD-TIN算法的基本原理是:以约束点构成的约束边为起始,分别寻找符合要求的左右数据点,生长为基于约束边的左右三角形,在以新生成的三角形边为起始边,生成左右三角形,直到构建完整的CD-TIN。最后,以非约束线段为依据,进行优化判断,对需要优化的三角形使用常规方法进行优化。一次性构建CD-TIN算法,先根据约束数据构建初始TIN,在此基础上生成CD-TIN,节省了重新构网的时间,实际构建时间比较理想。
2.2 建筑物结构的提取
由于城市建筑物多为规则建筑物,且动态变化较大,因此在建筑物模型的建立上采用CSG模型。如何在CSG模型的建立过程中对建筑物的进行准确提取和组装,多年来一直是该领域研究的难点之一[11]。本文在利用地面影像的基础上,采用单幅影像提取建筑物基本结构,采用数码相机通过地面摄影,在采集纹理的同时,对建筑物结构进行了提取。
要获得三维世界的建筑物框架,需要先建立观察用的坐标系,该坐标系定义与照相机相对应的观察平面或投影平面的方向,然后将对象转换到观察坐标系下并投影到观察平面上。如图1所示照相机的观察平面坐标系和真实三维空间位置坐标以及裁减窗口坐标系之间的关系。其中P(X,Y,Z)是空间任意一点的坐标,是相对于O-XYZ坐标系而言的,通过照相机的取景等操作,在照相机的现实平面坐标系中存在一个投影位置p(x,y),这就是空间点P在照片中的投影坐标。这里就是通过对照片中关键点坐标的提取,进而得到关键点的空间坐标,实现对建筑物的提取。
观察平面上的点p(x,y)与空间中对应点P(X,Y,Z)的有如下几何关系:
式(1)中λ为比例因子;R=(ai,bi,ci)T,i=1,2,3为旋转矩阵,表示照相机坐标系(Oc-XcYcZc)在空间坐标系的方位;T=(a,b,c)T为平移变量,表示照相机坐标系在空间坐标系中的位置。
建筑物的边界是由一系列平行线组成的,通过对相机照片中建筑物边界进行计算机处理和平行线提取,可以计算灭点坐标,继而得到建筑物角点的空间坐标。在透视投影中,空间中一组投影平行线汇聚的点成为灭点[12]。利用房屋平行边界的投影相交可以计算灭点。假设图像上灭点m(xm,ym),设其中任一条与其他线段平行的影像线段两个端点分别为i(xi,yi),j(xj,yj),点i,j一定与对应的灭点m共线。
(yj-yi)(xm-xi)-(xj-xi)(ym-yi)=0 (2)
进而再用最小二乘法求灭点[13]。
普通数码相机的各项参数需要经过计算得到。较为简单的方法是用照相机在平面格网的四边上,取水平、竖直左和竖直右3种方式,固定焦距、光圈,各拍摄3张照片,获取不同方位、角度下的方格网影像计12张,用最小二乘法平差求出数码像机的各参数。
通过对灭点方程(2)的建立,可以得到所求建筑物的外边界轮廓长度L,接下来需要计算建筑物角点的坐标。以规则的长方体为例,为了减少未知量,将坐标系原点设在建筑物其中的一个角点上。
从任何角度进行观察建筑物三维模型,最多只能看到7个点。如图2所示,设建筑物模型中可见的7个点为:Xi,Yi(i=1,2,…,7),并设点2为坐标原点(X2=Y2=Z2=0),23为X轴方向,其长度为L,即X3=L,Y3=Z3=0。一般情况下,若已知其中的一个空间坐标,就可以求出其他几个点的坐标。这样就可以建立从单幅影像上的二维坐标到屏幕的三维空间坐标的转换,实现对建筑物结构的提取。近景摄影测量获取建筑物模型的流程如图3所示。
2.3 利用体素生长法构建建筑物
CSG模型存在一些缺陷,其中一点就是建筑物的CSG表示不惟一[14]。如图4所示,图4(a)是一个结构简单的建筑物模型,按照分解体素最少的原则划分会有2种分法:图4(b)和图4(c)。而按照分解体素最小的原则划分,会得到图4(d)这样的结果。
分解结果图4(b)和图4(c)在分解过程中,尽管遵循了体素较少的原则,从某种程度上提高了模型的分解和组装速度,但是分解结果图4(d)具有体素顶点焊接关系好,顶点都出现在每条边的端点,而没有在边的中部或面的中部,这种分解有助于提高建筑物的建模的精细程度。同时,采用这种分解方法,对下一步采用体素生长法拼接体素带来了便利。因此这里规定采用图4(d)这种分解方法。然而对于图4(d)结果而言,为了克服由于分解体素带来的相对较多的处理时间,采用改进的体素增长法,来缩短建筑物的建模时间。
根据体素生长法的定义,即从一个体素中提取与之临接的体素的几何信息,并直接在这个体素基础上构建另一个体素。图5所示就是一个体素生长的例子,以现有的一个体素为基础,通过公共面,将待拼接体素通过公共面表示出来。但是对于相对复杂的建筑物结构,按照常规的体素生长法,很难一次性完成体素的拼接。以图4(d)的分解方法为例,提出体素生长法建模的一般步骤。
(1) 按照体素最多原则分析模型,建立生长关系图,如图6所示。
(2) 将每个生长关系图转化为树,如图7所示。
(3) 对每一个树选取根节点作为基础体素,确定生长面,在生长面上生成树中的下一体素,并以新生长的提速为基础体素。依此类推,遍历所有节点。最后按照基本的装配原则,对每棵树进行装配。
体素生长法的优势在于能够在快速实现建筑物CSG体素模型拼装速度的同时,减少重叠面重绘带来的数据冗余。
3 结 语
建筑模型是城市三维现场环境中出现较多的模型,本文结合实际应用,突出对城市三维空间的快速构建。利用数码相机进行数据采集,并通过求灭点得到建筑物角点的空间坐标,实现对建筑物结构的快捷采集;在利用CSG体素构建建筑物模型时,提出改进的体素生长法,提高了建筑物模型的组装效率。总之,通过对两种方法的结合,在数据采集和模型分解组装过程中都提高了城市三维空间数据模型的构建速度,基本实现了城市三维空间模型的快速构建。
三维模型构建 篇8
随着计算机图像处理技术的发展,三维重构技术已经成为计算机辅助设计与计算机图形学中的一个重要研究领域。在诸多工程实践和现实生活中,人们往往需要能直观的看到一些物体表面的大概轮廓,本文提出的三维物体近似表面模型的构建方法是采用可视化软件系统,对以一定的方式获得的三维散乱点集(如点云数据,采集得到的离散数据等),首先根据数据处理要求进行预处理,而后进行求凸包运算获取物体表面极值点,最后利用这些点生成物体表面的多面体模型,进行各种后处理(如平滑等),并在计算机上显示、进行人机交互的过程。
VTK(Visualization Tool Kit)是针对计算图形学,可视化和图象处理的一个源码开放,面向对象的软件系统。随着科学可视化这一技术被人们越来越多的应用于医学、产品设计、地球科学、流体力学等各个领域,VTK作为一个优秀的可视化工具包,为各级研究人员和机构提供了强大的支持。
2 VTK概述
VTK是Willliam Schroeder等人利用C++语言开发的集3D图形学、图象处理以及可视化于一体的软件系统。该软件系统由两个子系统构成,一个是通过编译生成的C++类库;另一个是用Tcl、JAVA和Python语言来使用编译过的C++类的解释器包。这种做法的优势在于即可以在编译过的语言C++类中创建效率比较高的算法,同时又能够使用解释型语言进行快速的应用程序开发。
VTK是一个面向对象的系统,由图形模型和可视化模型两种对象模型构成。
2.1 图形模型
图形模型通过几个主要的C++类有机的组合在一起生成一幅图象。
在VTK软件系统中,vtk Prop或vtk Prop3D的子类表示一幅图象中的可见物体;vtk Light类封装了有关图形光线处理的方法,包括光线开关状态、位置、颜色等;vtk Camera类封装了关于视点操作的方法,包括观察者的位置、焦点的调整等;vtk Property与vtk Property2D这两个类可以控制显示图形的属性;vtk Abstract Mapper及其子类是可视化模型和图形模型的接口;利用vtk Transform类可以对图形中显示的物体进行平移、旋转、缩放等操作;vtk Scalars To Colors及其子类可以将映射数据转变成不同的颜色来表达,是图象处理中的关键技术;vtk Render和vtk Render Window这两个类用来管理图形引擎与计算机窗口系统之间的接口;vtk Render Window Interactor类封装了窗口系统与数据之间交互相关的方法。
2.2 可视化模型
VTK采用数据流方法将输入的原始数据转变成图形数据,该方法涉及数据对象(vtk Data Object)和流程对象(vtk Process Object)两个基本的对象类型。
在VTK软件系统中,数据对象用来表达各种类型的数据,它支持5种不同的数据类型,分别是:直线网格(vtk Rectilinear Grid)、结构网格(vtk Structured Grid)、非结构网格(vtk Unstructured Grid)、多边形数据(vtk Poly Data)及图象数据(vtk Image Data)。流程对象通过对数据对象进行操作产生新的数据,体现了系统的运算法则。流程对象和数据对象通过可视化流水线相连,在数据流动过程中对数据进行操作。流程对象又可以细分为源对象(vtk Source)、过滤器对象(vtk Filter)及映射对象(vtk Mapper)。源对象是整个可视化流程的起点,它既可以在程序内部通过一定的法则产生,也可以直接从文件中读取;过滤器对象接受数据对象的输入,产生一个或多个数据对象输出,由于运算法则的不同,过滤器对象输出的数据类型可能与输入的数据类型不同;映射对象接受源对象或者过滤器对象输入的数据并把数据映射成基本图元。
数据对象和流程对象的有机结合就产生了可视化流程,如图1所示:
3 三维凸包模型重建算法简介
凸包是数学和计算几何的重要内容之一,它是包含给定点集中所有点的最小凸域的边界。很多的工程实际问题最终都可以归结为凸包问题,比如Delaunay三角剖分、Voronoi图、功率图、halfspace intersection等。这些结构在科学研究和工程实践中有着非常广泛的应用,如图象处理、碰撞检测、城市规划、文件检索、数值积分、冶金学、统计学等。
凸包的定义:在一个实数向量空间V中,对于给定集合X,所有包含X凸集的交集S被称为X的凸包。
X的凸包可以用X内所有点(x1,…,xn)的线性组合来构造。
计算三维凸包的算法有很多种成熟的算法,包括随机增量法,Graham扫描法,Jarvis步进法,分治法和快速算法(Quickhull算法)等。每种算法都有各自的特点,本文采用的是运算效率比较高的快速算法。它由随机增量算法改进得到,其时间复杂度与输出的凸包顶点数k有关,为Ο(n log k)。该算法的优点是无需存放额外结果,能够做并行处理,其空间复杂度与时间复杂度都比较低。图2为快速算法的伪代码:
说明:p在F的上方当且仅当p到F的有符号距离d>0;
明暗界限H是边R的集合,R满足它的两个邻接面一个可见,一个不可见(点在面的上方称为该面可见,反之则不可见)。
4 算法实现
本文以Visual C++6.0为平台,使用C++语言和可视化类库VTK对所得的三维散乱点集进行表面轮廓重建。三维凸包用组成凸包的三维顶点和二维平面来表示,凸包的顶点为输入点集的极值点,组成凸包的平面包括三个点集合,三个邻接面集合和一个平面方程。程序求取凸包通过类CHull_Alg来实现:
算法由函数Get Hull输出,输出项为:x,凸包顶点;pts,二维平面(每个面保存了三个顶点的索引值);nv,顶点数;nf,平面数。该输出方便之处是可直接进行可视化显示,而不需要再进行三角剖分。图3是程序整体框图。
可视化处理部分程序:
图4是原始的离散数据点集,重建后的表面多面体模型如图5所示。
5 结论
本文采用效率较高的计算凸包的快速算法(Quickhull算法),以Visual C++6.0为开发平台,在VTK类库的基础上构建了三维凸包的表面模型。这一方法简单、快捷,可以很方便的应用在各个需要获得物体近似表面模型的领域,具有很大的现实意义。
摘要:该文提出了一种以凸包为基础来表达物体表面近似轮廓模型的方法。通过对由各种方式所得的散乱点集进行预处理,然后进行凸包运算,求得物体表面轮廓极值点,再依据这些点进行物体表面的三维重建。该文以Visual C++6.0为开发平台,采用可视化类库VTK,对这一方法进行计算机仿真,取得了较为理想的效果。
三维模型构建 篇9
巷道系统是矿山三维虚拟场景的重要组成部分,是构建数字矿山的基础。煤矿巷道纵横交错、错综复杂,伴随采掘工作的推进,巷道不断变化。如何立体、直观、准确地表现并反映井下巷道及其空间关系,是煤矿安全、高效、合理开采的重要保障[1]。目前,应用GIS技术管理煤矿信息的研究方兴未艾,巷道三维可视化GIS建模技术已成为研究的热点。
通用三维建模软件建模包括3DMax和 AutoCAD等,在这些软件之上建立的三维模型虽有很好的逼真度,但是缺少灵活性,模型更新需要大量的手动操作,可移植性差,难以与GIS系统有效集成,不便进行空间拓扑分析;从虚拟现实角度构建3DGMS系统的研究较多,该类系统基于OpenGL、Direct3D、Java3D 等技术进行开发,可以直观表现巷道内环境,但在数据存储和时态显示方面存在许多不足,数据更新维护存在很大困难;参考文献[1]基于GIS的煤矿巷道自动建模研究未能很好处理交叉巷道的情况。
针对以上问题,本文设计了一种点弧拓扑数据模型,利用GIS要素类存储巷道的点弧拓扑信息,通过插入节点坐标生成三维巷道模型,并将模型存储在Multipatch要素类中。所得三维巷道模型精度高,可以有效减少煤矿巷道建模中的工作量。
1 Multipath数据模型
Multipatch是ESRI空间数据库模型Geodatabase中提供的一种要素类型,属于矢量数据模型,通过一系列有序三维点构成三维平面,再由这些平面构成三维体。利用Multipatch 构建三维体的优点是可以把这个三维体作为一个矢量要素存储到Multipatch 要素类型的空间数据库表中。通常Multipatch是一系列三维表面的集合,它用于描述三维物体表面,包括3种最常用的三维表面类型,如三角条带(Triangle Strip)、三角扇(Triangle Fan)和组环(Rings)。目前,Multipath格式得到了许多三维建模软件的支持。
2 煤矿巷道三维建模方法
2.1 节点插入方法
巷道平面法向量始终平行于巷道中线与其在水平面投影形成的平面。采用巷道中线作为三维建模基础数据,需要采用类似缓冲区分析[2,3]的方法建立巷道两侧的边,对每一个巷道断面增加节点建立巷道模型。这里主要讨论拱形巷道节点添加方法,如图1所示,需先计算与巷道中线点对应的左右侧点的坐标A1(x1,y1,z1)、A2(x2,y2,z2),再计算出另外2个顶点的坐标B1(x1,y1,z′1)、B2(x2,y2,z′2)。根据式(1)给拱形顶增加节点Ci(xi,yi,z′i)拟合圆弧:
undefined
式中:i=1,…,n,n为采用节点替代圆弧插入节点的数目;γ为由B2点到Ci点逆时针转过的夹角。
对于相交的两条巷道,其拱形顶相交于一椭圆弧,沿椭圆弧顺次产生插入节点缝合相交点处的巷道模型。
2.2 点弧拓扑数据模型
巷道的断面通常包括长方形、梯形和拱形3种[4],难以处理的是线状数据的拐点和不同巷道线的相交点。线状数据的节点包括高程信息,会出现沿前进方向平面凹凸和垂向凹凸的情况。若进行巷道的自动化精细建模,必须对巷道折点进行特殊处理。对巷道交叉的地方,模型应该能够保证交叉点连通。在本文讨论中,对节点、弧段等进行了如下定义[5,6]:
(1) 结点:指巷道弧段的起点和终点,相交的点必为起点或终点。结点信息存储在点文件中,同时要为每个结点建立拓扑信息。一条巷道弧段的起点或终点不可能属于另一条巷道弧段内的节点,实际巷道的交叉点必为结点。
(2) 节点:对于一条弧段,除了结点外,该巷道弧段内的其他点被称为节点。结点与节点都在巷道的中线上,若一个点已被定义为结点,就不能再成为节点,如图2中的圆圈所标识的点所示。
(3) 弧段:直线段(相邻两点连成的线段)集合为一个弧段或链段,每个弧段包含一个起点和一个终点,也可以有许多中间点。
(4) 巷道线:一条巷道包括n条弧段。
(5) 点-弧拓扑:根据巷道在XOY平面内的投影,按逆时针方向建立点-弧拓扑编码。点弧拓扑要素实际上是点要素和线要素进行的拓展。
点弧拓扑数据集可以以点、线要素为基础进行拓展,也可以通过拓展几何网络数据生成。点弧拓扑数据应该包括以下内容:点数据包含结点ID、相交线数、拓扑编码;弧段数据包括弧段ID、起点ID、终点ID。起点和终点ID依赖于点数据的结点ID。拓扑编码建立了每个结点在XOY平面内的投影按逆时针方向邻接的弧段ID。图2为平面内巷道中线投影和缓冲巷道两侧边示意图,对图2示例巷道建立的编码如表1和表2所示。
2.3 数据预处理
煤矿生产中常使用的采掘工程平面图大多为CAD格式。为建立数字矿山GIS系统,需根据采掘工程平面图生成各种GIS专题地图。同时,需根据煤矿已有的文件记录和图形数据,提取煤矿的各种图层要素和属性信息。
首先将现有CAD格式数据转换为Geodatabase中的要素类,然后为巷道结点和节点添加高程信息,因不同煤矿的CAD数据又分为平面和三维2种,对二维巷道首先要增加相应的高程信息。CAD数据本身不包括空间参考信息,而且常采用示意图显示,在数据预处理阶段,需要对线状要素添加空间参考,并进行配准作为建立巷道点弧拓扑文件的底图。数据预处理阶段生成了采用GIS要素类表示的三维单线巷道。
整个矿井巷道三维模型生成工作流程如图3所示。
2.4 点弧拓扑数据集构建步骤
(1) 新建点弧段拓扑数据集,主要包括点和线要素(FeatureClass)。
(2) 编辑点要素,结点数据存储在点要素类中,给每个点要素添加结点编号,应注意不要遗漏巷道的相交点。
(3) 以结点编号作为标注,连接结点形成弧段,为弧段添加编号、为弧段添加起点和终点编号。增加诸如巷道编码等属性信息,通过巷道编码可以建立属性数据和即将建立的三维要素类的关联。此过程需注意巷道编码的规范。
(4) 拓扑检查,检查其中是否存在结点不在弧段上等错误,添加弧段编号作为标注,为结点添加相交线数目和拓扑编码信息,拓扑编码按逆时针方向建立。
在上述过程中,若遇到巷道尖角,在缓冲分析中需要进行特别处理。因竖井在水平面内投影为一个点,某些斜井的形状又不规则,需要对竖井和某些斜井进行单独处理。如图4所示,在处理距离过于接近的结点a和b时,需要将它们合并成一个点。
2.5 数据结构和算法步骤
在利用C#语言和ArcGIS Engine进行算法实现时,需要定义以下数据结构:
巷道三维建模算法流程如图5所示。
第一步:先读取点弧拓扑文件,将数据存入数据结构。
第二步:读取一条巷道。
第三步:遍历巷道上的每个点Pj,分别插入节点。
若Pj是巷道的起点:如果相交点数小于2,按圆弧插入节点,如果相交点数大于2,读取拓扑信息,按椭圆弧插入节点。
若Pj是巷道的终点:如果相交点数小于2,按圆弧插入节点;如果相交点数大于2,读取拓扑信息,按椭圆弧插入节点。
若Pj是中间节点:按圆弧插入节点。
第四步:绘制这一条巷道,读取插入节点集合数组,遍历生成Multipath巷道模型。
第五步:接着读取下一条巷道,重复第二~四步骤,直到结束。
3 实例
根据本文提出的巷道三维建模方法,采用C#+ArcEngine开发煤矿三维巷道自动建模程序,实现了算法功能,并对陕西省某煤矿的CAD图形和属性数据进行处理生成点弧拓扑数据,最终实现了煤矿巷道的三维自动化建模,可方便地建立煤矿巷道的三维模型。图6分别显示了对巷道拐点、3条巷道相交点和4条巷道相交点的处理。
4 结语
基于Multipath的煤矿巷道三维模型构建方法有效地减少了传统手工建模的工作量,为巷道交叉点添加拓扑信息,基于点弧数据模型建立三维巷道,具有很好的显示效果。
基于GIS建立三维巷道模型,减少了图形和属性信息管理与更新的困难,为实现二、三维一体化煤矿GIS系统奠定了基础。采用空间数据库管理煤矿数据,有利于充分利用现有各种矿区数据进行空间分析,有利于实现在网络环境下的煤矿信息共享。
参考文献
[1]王学伟,邵亚琴,汪云甲.基于ArcGIS Engine的矿井巷道三维自动建模方法的研究与实现[J].工矿自动化,2009,35(5):22-25.
[2]陈学工,张文艺,张驰伟.一种GIS缓冲区矢量生成算法及实现[J].计算机技术与发展,2007,17(3):13-17.
[3]张宏.地理信息系统算法基础[M].北京:科学出版社,2010.
[4]姚建海.煤矿三维巷道建模技术研究[J].太原科技大学学报,2009,30(1):80-86.
[5]石奉华.巷道三维可视化建模技术———以东滩煤矿为例[D].青岛:山东科技大学,2007.
[6]王建民.三维巷道建模及其应用研究[D].太原:太原理工大学,2005.
三维模型构建 篇10
三维实体的数字化是近年来发展起来的一种快速自动化成型技术, 它是实物仿形技术的基础。而要进行快速成型技术就要获得三维形体信息数据, 要么用CAD设计产品, 要么用三维数字扫描仪复制产品 (如图1) 。三维激光测量技术不但可以量取被测对象的长宽高, 实现无接触扫描, 还能够把扫描到的信息及时的转换成计算机能够处理的数据, 具有四个优点:一是获取数据速度快, 实时性强;二是数据量大, 且精度高;三是主动性强, 支持全天候工作;四是全数字化, 信息传输、加工、表达容易。
通过三维激光扫描系统能够快速获取区域的三维空间信息, 进行三维模型重建, 是三维空间数据获取的一种重要技术。本文以REVscan TM手持激光扫描仪为例, 结合三维激光扫描仪的工作原理, 分析和研究从三维数据获取到三维建模的整个流程。
1 手持式激光扫描原理
手持式激光扫描仪的工作原理是激光三角测距法, 简单的说就是将一激光线结构光投射到三维物面上, 利用CCD摄取物面上的二维变形线图像, 即获取三维点云数据和三维轮廓图像。手持式激光扫描系统包括数据采集系统和数据处理系统。数据采集系统一套VXscan数据处理软件, 主要包括一套手持式自定位扫描仪REVscan, 如图2所示。
该扫描仪的下端小圆孔为十字激光发射口, 激光从该孔中发射;中间红色按钮是触发器, 按住此按钮系统开始接受数据;上端两个大圆孔是CCD镜头, 接收反射回来的激光;每一个CCD镜头的周围是四个LED发光点, 用于屏蔽周围环境光对扫描精度的影响;启动VXscan软件, 并处于接受数据状态。按住触发器, 激光发射孔发射十字激光, LED发射红色屏蔽光。至少有3个定位点在系统的识别范围之内, 系统才开始接收数据。激光从发射孔发出, 由CCD镜头接收, 并在VXscan软件中以直观的曲面模型的形式表现出来。REVscan扫描仪的自定位功能可以自动记录定位点在扫描仪系统的空间位置, 可以通过移动、翻转所测零件以完成对零件的测量。VXscan软件系统通过保存为*.csf格式进行阶段性的测量;输出为*.stl格式可被大多数后期处理软件所通用。
2 三维扫描系统的工作流程
手持式激光扫描仪扫描仪的扫描流程可简单概括为:着色—贴标记点—扫描—输出点云—点云处理—曲面修复—反向建模。将举出两个典型的例子来介绍REVscan扫描仪的一些扫描特性和应用技巧。
2.1 三维数据获取
(1) 贴定位点:这是在扫描之前所要做的一项至关重要的工作。反光点必须以最小20毫米的距离随机地粘贴于工件表面。如果表面曲率变化较小, 距离可以达到100毫米。这些反光点使得系统可以在空间中完成自定位。定位点粘贴时必须离开边缘12毫米以上。 (2) 连接系统启动VXSCAN应用程序:在菜单中点击View—Surface, 在扩展面板配置激光强度与相机快门速度, 在菜单栏点击Configure—Sensor两种模式可供选择:手动和自动。手动模式:触发器对准被扫描面以调整激光强度和快门速度。自动模式:点击自动调整按钮/Auto Adjust, 然后将触发器对准被扫描面。 (3) 开始扫描:点后按下扫描头上的触发器开始扫描。一直按着触发器, 让十字激光线慢慢扫遍整个工件表面。扫描结果的质量受扫描次数与速度的直接影响, 扫描的越多精度越高。距离太近或太远都不能继续跟踪扫描。这意味着相机不再能通过反光点来进行定位或者反光点分布不合理。如遇不能跟踪扫描, 请将扫描头置于已被扫描过的区域再扣动触发器或重新粘贴定位点。 (4) 编辑扫描数据:设定微面模式, 删除被扫描工件的局部。点击菜单中View———Facets或树状图中的Facets节点, 通过点击Edit Facets按钮来选择编辑模式。处理后的效果如图3所示。
2.2 点云数据处理
(1) 杂点的处理:杂点就是测量错误的点或明显远离被测对象表面的孤立的点。对这样的点, 一般用“断开组件”连接的方式来进行处理, 选择点后按“删除”键进行删除。 (2) 噪声去除:在很多情况下都会引起噪声, 比如扫描仪受到震动、随机误差等, 一旦出现这些情况可以点击“减少噪声”功能进行去除, 进而保证点云数据的平滑性。 (3) 冗余点:冗余点是因拼接或测量角度等问题产生重叠的多余的点。应该把这些点检测出来, 然后进行必要的处理。 (4) 点云数量优化:由于点云数据数量很大, 应该优化点云数量。
2.3 三维曲面修复
(1) 构建三角网模型:这里的点云数据是由不规则离散点构成的, 需要构成被测对象的实际表。构建三角网模型能够恢复被测对象的拓扑关系的真实表面。 (2) 多边形的修补:如果点云的数据不完整, 应该及时的手工进行数据补充, 只有这样才能保证形成完整的三角网去除特征。 (3) 去除多余部分:发现错误的特征或者是不需要的特征进行去除工作。如果无法去除需要返回上一步进行修补, 然后再继续。 (4) 多边形数量的调整:如果形成的三角网模型点云密度很大, 应该对其进行简化, 反之如果密度不够, 应该对其进行细化处理。 (5) 多边形的平滑:使用平滑功能可以调整三角形的褶皱角度, 还能够在这个过程中对模型的局部或整体做平滑处理。 (6) 多边形检测与校正:总体上要对整个三角网模型进行一次检测, 以确定是否还有相交的三角形的地方。 (7) 提取轮廓线:可以自动提取轮廓线或者手工提取轮廓线。 (8) 编辑轮廓线:可以使用编辑轮廓线功能对错误或者不满意的轮廓线进行修理, 尽可能保持被测对象的自然特征。 (9) 绘制轮廓线:切换到绘制状态, 将编辑好额轮廓线连在一起, 调节好节点位置, 使轮廓线更加准确, 如图4。 (10) 构造曲面片:轮廓线是基准线, 曲面片的包围线是基于轮廓线扩展的。曲面片的构造是为了进一步构造网格。 (11) 修理曲面片:构造曲面片之后一些因素可能会影响到曲面片, 使其发生错误, 这时应该使用修理曲面片功能对其进行处理, 直到不再发现错误的曲面片, 就可以构造网格。 (12) 构造网格:基于曲面片生成网格, 带绿颜色的网格表示能比较好地拟合曲面, 带红色的网格是有错误的网格, 针对这种情况需要重新修理曲面片, 调整一下然后再构造网格。 (13) 拟合曲面:网格构造好之后就可以基于每一个曲面片进行曲面拟合工作, 生成NURBS曲面。 (14) 偏差分析:先选中查看偏差区域, 点击“拟合连接”图标, 系统将自动计算面与点间的偏差。 (15) 修复、修建缝合曲面:选中有问题的曲面, 采用修复曲面图标进行修复, 而后采用“修建缝合”图标对曲面进行缝合。各步处理的支架效果如图5所示。
2.4 参数导入建模
(1) 参数交换:选择曲面对象, 采用“曲面工具栏”上的“参数交换”图标, 点击“在CAD中创建特征成功”项, 将曲面导入CAD软件中。但要能顺利导入, 必须安装好相关CAD软件的插件。 (2) 参数修改:导入CAD软件后, 即可对曲面的参数进行修改, 在编辑中, 可以先导出大面, 再导出小面, 在参数对话框中选择“CUT”, 系统将自动裁剪新导入的曲面。保存文件后, 即完成了支架零件的逆向建模如图6。
3 结束语
手持式激光扫描仪突破了对使用空间和环境上的制约, 不仅为逆向工程的更广泛应用前景, 也为汽车工业带来了新的生产方式和设计思路。随着逆向工程中数字化扫描设备和CAD重建软件的功能和效率的不断提高, 逆向工程技术将得到更加广泛的应用。
参考文献
[1]柯映林等.反求工程CAD建模理论、方法和系统[M].北京:机械工业出版社, 2005.
[2]徐家川等.逆向工程中车身A级曲面的评价方法[J].北京:汽车技术, 2007 (4) :4-8.
[3]刘修国.基于激光扫描技术的三维零件重建[J].中国激光, 2011 (4) :46-48.
相关文章:
三维矿体模型02-20
三维矿井模型02-20
三维有限元应力分析02-20
三维模型处理02-20
三维模型检索02-20
三维立体模型02-20
内容分析法分析社会02-20
新自我分析swot分析02-20
软件需求分析案例分析02-20
职务分析过程方法分析02-20