下载
加入VIP
  • 专属下载特权
  • 现金文档折扣购买
  • VIP免费专区
  • 千万文档免费下载

上传资料

关闭

关闭

关闭

封号提示

内容

首页 基于STL文件的模型及应用

基于STL文件的模型及应用.doc

基于STL文件的模型及应用

那段伤
2017-09-30 0人阅读 举报 0 0 暂无简介

简介:本文档为《基于STL文件的模型及应用doc》,可适用于综合领域

基于STL文件的模型及应用()长安大学学报自然科学版VolNo第卷第期Jan年月()JournalofCnhgπaanUnivesrityNaurtalScienceEnditio()文章编号:基于STL文件的模型及应用,峰,陈纪荔,李占利(西安科技大学计算机科学技术系,西安西北第二民族学院信息与)计算科学系,银川长安大学现代教育与网络信息中心,西安摘要:针对模型输入数据的特性,就STL文件的模型的显示与组织分离进行了研究。根据STL文件的特点以及应用需要,设计了邻接表和索引表作为数据结构,并在此基础上采用矢量逼近的方法给出了模型不同组织间的分割算法,最后利用OpenGL的图形渲染功能在VC下显示了STL文件格式的模型及其分离后的部分。结果表明,新设计的算法拓扑结构合理,实用性较强。关键词:计算机工程STL文件分割OpenGL拓扑结构中图分类号:TP文献标识码:AModelandApplicationofStereoLithography(STL)Files,JIFeng,CHENLi,LIZhanli(DepartmentofComputerScienceandTechnology,Xi’anUniversityofScienceandTechnology,Xi’an,ChinaDepartmentofInformationandComputationScience,TheSecondNorthwestInstituteforEthnicMinorities,Yinchuan,ChinaModernEducationandNetworkInformation)Center,Chang’anUniversity,Xi’an,ChinaAbstract:ThemodeldisplayandtissuedivisionarestudiedbasedoninputtingdataAccordingtothepropertiesofSTLmodelandthefollowingdealingrequirements,theadjacencylistandindexlistaredesignedasdatastructure,thendifferenttissuedividingalgorithmispresentedwithvectorapproximationFinally,thispaperrealizesSTLfilesmodeldisplayanddivisionresultdisplayinVCusingOpenGLTheresultsindicatethisnewtopologicalstructureisrationalandpracticalfigs,refsKeywords:computerengineeringSTLfiledivisionOpenGLtopologicalstructure泛地应用于科学计算可视化、计算机动画、虚拟现实引言及快速成形等技术之中。在开发与STL相关的软件时,首先要读取数据进行模型显示,对模型进行结()即为三维实体模型STLStereolithography构分析、组织分离、实体分割,由于模型尺寸限制和文件经过三角化处理后得到的模型文件,是为快速组织特性的不同,有时需要将一个实体模型分成若()原型制造RPM服务的文件格式,由美国D干个实体模型,即将描述一个实体模型的STL格式SYSTEM公司于年制定的一个接口协议,被的数据文件分成描述若干个实体模型的多个STL工业界认为是目前的准标准。STL格式文件被广格式的数据文件,而后分别对这些实体模型的STL收稿日期:()基金项目:陕西省自然科学基金项目F()作者简介:纪峰,男,宁夏灵武人,西北第二民族学院讲师,西安科技大学工学硕士研究生nnn为该三角面片的单位法矢量的户给定数据文件进行处理。目前,几乎所有的快速成型系ijk()统和大部分CAE系统都采用STL作为与CAD系个分量值vvvi=,,为三角面片个ixiyiz统的数据交换格式。虽然CAD软件能够对一个三顶点的三维坐标值。维CAD模型进行分割,然而现在的大多数CAD二进制STL文件用固定的字节数来给出三角软件无法对STL文件格式描述的CAD模型再进行面片的几何信息。文件的起始字节是文件头,分割处理。由于许多用户直接提供STL文件,因可以放入任何文字信息。紧随着的字节整数用来此不便利用CAD软件来实现实体模型的分割。在描述实体的三角面片个数。后面的内容就是逐个给读取STL文件时,如果按照一般遍历比较法滤除出每个三角面片的几何信息。每个三角面片占用固冗余顶点效率非常低下,无法达到工程应用的要定的字节:个字节浮点数用来描述三角面求,且在实体分割时也不便采用边界信息。鉴于片的法矢量,个字节浮点数分别用来描述三角STL格式缺少面片之间的拓扑信息且有大量的冗面片的个顶点的坐标,每个三角面片的最后字()余数据,甚至有许多错误和缺陷,同时考虑到节用来描述三角面片的属性信息暂时没有用。(本文模型约个三STL文件只是无序地列出构成实体表面的所输入文件的庞大数据量)角面片、组织分割过程中的查找、排序以及其他有三角形的几何信息,不包含任何三角形之间的拓后续相关处理要求,如何设计数据的拓扑结构对模扑邻接信息。然而,在许多基于STL的应用系统型正确显示和组织分离便显得尤为重要。本文给出中,建立三角面片之间的拓扑关系是十分必要的。了基于STL格式的模型显示和组织分割方法,能STL文件拓扑关系的建立很容易实现实体的分割。STL文件数据量非常大,一个表面较复杂的实STL文件格式,所以体模型由几万甚至几十万个三角形面片构成STL是一种用许多空间三角形小平面来逼近数据的冗余现象比较严重,如果仅仅是简单地照原CAD实体的数据模型,这种文件格式是将CAD原样提取数据,就会占用大量地计算机资源,降低计算表面离散化为三角形面片。不同精度时有不同的三速度,同时也无法有效地对模型进行错误诊断和修角形网格划分。STL文件中每个三角形面片有复,使得后续的处理计算量增大。因此从文件中提个数据项表示,即三角形的个顶点坐标和三角形取数据时必须进行数据筛选,去除冗余信息,同时建面片的外法线矢量,STL文件是多个三角形面片的立拓扑关系。建立拓扑关系时,算法时间消耗在顶集合,数据结构非常简单,而且与CAD系统无关。点查找合并过程和边查找合并过程中。采用直接提STL文件有ASCII及二进制两种形式。()(取数据时,其算法复杂度为OFF为实体模型的ASCIISTL文件格式)三角面片个数。当实体模型的三角面片较多时,时solid〈name〉间消耗相当可观。本文根据虚拟牙齿矫正系统后续facetnormalnnnijk处理的需要进行拓扑结构安排。outerloop读入STL文件数据根据文件中的数据排列规则,利用VisualCvertexvvvxyz第一个三角面片()()文件类中的打开fopen、关闭fclose、文件随机vertexvvvxyz()读写fseek等函数可以读取相关数据,以供程序vertexvvvxyz使用。另外,读取STL文件时,只需要读取STL文endloop件中表示向量和三角形顶点的相应数据,不需要读endfacet文件中的其他信息。依次按逆时针方向读入各个三角形面片的顶点坐标值至三角形面片顶点坐标facetnormal表。由于三角形面片外法向矢量可以通过右手螺旋法则由顶点坐标值计算出来,因此可不用存储外endfacet法向矢量,以节省存储空间。如果后续处理需用到法向矢量时,可利用以下的外法向矢量计算公式endsolid〈name〉格式说明:正体字为关键字,由文件格式定()()义,均为小写〈name〉为三维实体模型名称,由用=nivyvyvzvz()()()处在于它同时包含了三角形序号和边序号信息。在vvvvzzyy邻接边表中,第x项的值就是边x对应的邻接边)()(n=vvvvjxzzx()(ID。由此对任意一个三角形面片的任意一条边都vvv)()zzxvx)(能立刻查到与之相邻的三角形面片。(vvn=v)xykxvy经过上述冗余数据处理和结构重建后,不仅减()(v)()xvvxvyy少了顶点坐标的存储需求,节省了的内存,并且冗余顶点数据处理(将三角形顶点坐标标量化即将三角形顶点坐标转STL文件为网格模型中的每个三角面片记录)换成顶点索引ID,使得查找时间大为节省,有利于其个顶点的坐标信息,其数据冗余主要表现在三提高后继处理的速度。角面片中顶点和边的重复存储。例如,一个具有个三角面片的网格模型,STL文件中就使用OpenGL显示了个顶点数据,而实际上不重复的顶点仅有OpenGL是一个有强大三维图形绘制功能的个。因此,对于读入的STL文件在使用前必()APIApplicationProgrammingInterface函数库,须进行预处理,即对其构成每个三角面片的顶点进它提供了直接渲染三角形面片的方法,因而利用行重复性判断,只有判断不重复的顶点才能作为新OpenGL来实现STL格式实体的真实感图形显示,的记录添加到最终的顶点存储结构中。重合顶点合可以得到很好的效果。具体绘制算法为并和结构重建可依照以下方法进行:()forinti=i<NUMBERi()对三角形面片顶点坐标表使用快速分类算{法进行排序。()glbeginGLTRIANGLES开始第i个()查找各重合顶点并归并为一个顶点,将归并三角形面片绘制后的顶点坐标存入新建的模型顶点坐标表中。)(glVertexfvmtriangleiV定义()为新建的模型顶点坐标表建立三角面片顶第i个三角形面片的第一个顶点坐标点索引表,用来存储各三角形面片顶点在模型顶点)(glVertexfvmtriangleiV定义坐标表中的索引,索引的ID值为新建的模型顶点坐第i个三角形面片的第二个顶点坐标(标表中三角面片顶点编号因为对STL文件的后续)(glVertexfvmtriangleiV定义处理只关心顶点的邻接关系,因而无须查找具体三第)i个三角形面片的第三个顶点坐标角面片。()()glend结束第i个三角形面片绘制对新建的模型顶点坐标表中的每个顶点找}出与其相邻的顶点,建立顶点邻接边表只存顶点的若将函数glbegin的参数GLTRIANGLES换索引号。为GLLINELOOP则可实现网状造型,可清晰地()删除读入的原三角形面片顶点坐标表。观察该实体是如何由众多三角形面片组成。同时可边归并(以利用OpenGL的图形操作函数如glTranslate平(边归并其实是指半边的归并半边结构:将共)))((移、glRotate旋转、glScale缩放等函数来控制享边分成一对半边,因为共享一条边的两相邻三角图形的操作。形面片由于外法向量的缘故,其走向是不同的,也就是说同一条边在两个不同的三角形中虽然位置不变,但它们的方向相反,两个半边的方向取决与它们应用实例)所在环的走向,冗余边的归并过程其实就是两个半本文采用的STL格式的模型是由陕西省自然边的匹配过程。具体归并过程为:查找上述建立的科学基金引入的一个牙齿模型,该项目要对牙齿矫点邻接表中的重合边来建立邻接边表。对三角形面正过程中的软组织变形进行模拟。牙冠部分可看做片的每条边按其两顶点ID值使用快速分类算法进刚体,其旋转、移动碰撞不发生形变,而牙龈部分行排序,从而找到各重合边,并建立邻接边表。为每在牙冠的牵拉作用下会发生形变,其形变要求符合个三角形的每条边都建立惟一的ID号,如对第i个活性软组织的特性,即要求对牙龈软组织建立变形模型。因此需要对STL文件格式的牙齿模型进行组织分割,即把原实体模型分为上下两部分。分割((()))三角形的第j条边i,,,n,j,,,()()其ID为ij,使用这种ID编码的好时如果采用平面与实体相交的方式处理则误差较,减少了用于查找、排序所用节省了模型的存储空间大,因为牙龈与牙冠的边界线不一定在同一平面的时间,提高了运算速度。()上,而且个体差异比较大。本文采用手动拾取边界为系统后续开发奠定了基础,使得实时模拟()点的方式寻找边界轮廓线。手动点取PickSTL网模型的变形移动过程成为可能。()格的顶点,作为牙齿和牙龈的分割轮廓线的结点,对用矢量逼近判断方法给出了组织分割算法,从分离后的显示结果来看,达到了较为理想的效果。于顺序相邻的个结点,程序自动搜索最佳逼近其()连线在STL模型表面上的边路径,并对照显示。算本方法对快速成型技术中的拓扑结构建立、法为:实体分割和虚拟手术系统中的组织分割都有较好的()先点取第一个点F,把F点同时标记为A。借鉴意义。()取点形成一个矢量AB,从点A开始,选择参考文献:一个与点A有边连接关系点C,使得矢量AC与矢量References:AB的点积最大,差积的模最小。赵吉宾,刘伟军,王越超基于STL文件的实体分割()从C点开始,选择一个与点C有边连接关系()算法研究J机械科学与技术,,:点D,使得矢量AD与矢量AB的差积的模最小。()()若D与B为同一个点转到,否则C=DZHAOJibin,LIUWeijun,WANGYuechaoStudy()转到。ontheAlgorithmsforDividingSolidModelBasedon()若B点与开始所选的F点为同一个点,则STLFileJMechanicalScienceandTechnology,找到闭合的边界轮廓线,把构成轮廓线的点列存储(),:()到一个循环链表当中,否则A=B转到。赵歆波,张定华,熊光彩,等基于散列的STL拓扑依照上述算法找到的边界轮廓线,将牙齿实体()信息重建方法J机械科学与技术,,:模型分割为牙冠与牙龈上下两部分,位于上半部分ZHAOXinbo,ZHANGDinghua,XIONGGuang的三角形记录到一个文件中将分割线以下的三角cai,etalAMethodforRebuildingTopologicalStruc形记录到另一个文件中这样就可以对牙龈部分进tureofMeshinSTLFileBasedonHashingJMe行建模处理,而且对牙冠部分进行单独显示,见()chanicalScienceandTechnology,,:图、图。张卫国,李占利分层方向的多目标优化模型J长()安大学学报:自然科学版,,:ZHANGWeiguo,LIZhanliMultiObjectiveOptimizationModelforFabricationOrientationJJournalofChang’anUniversity:NaturalScienceEdition,(),:严蔚敏,吴伟民数据结构MC语言版北京:清华图STL牙齿模型的平视图大学出版社,YANWeimin,WUWeiminDataandStructureMCLanguageEditionBeijing:TsinghuaUniversityPress,乔林,费广正OpenGL程序设计M北京:清华大学出版社,QIAOLin,FEIGuangzhengOpenGLProgramDesignMBeijing:TsinghuaUniversityPress,图组织分离后牙冠部分的平视图MarianoAlcaniz,CarlosMontserrat,VicenteGrau,结语FranciscoChinesta,AntonioRamon,SalvadorAlbalatAnAdvancedSystemfortheSimulationandPlan()结合STL文件自身的特点、缺陷及应用需ningofOrthodonticTreatmentJMedicalImage求,选取了较为理想的拓扑结构,处理了冗余数据,()Analysis,,:

用户评价(0)

关闭

新课改视野下建构高中语文教学实验成果报告(32KB)

抱歉,积分不足下载失败,请稍后再试!

提示

试读已结束,如需要继续阅读或者下载,敬请购买!

文档小程序码

使用微信“扫一扫”扫码寻找文档

1

打开微信

2

扫描小程序码

3

发布寻找信息

4

等待寻找结果

我知道了
评分:

/11

基于STL文件的模型及应用

VIP

在线
客服

免费
邮箱

爱问共享资料服务号

扫描关注领取更多福利