网站大量收购独家精品文档,联系QQ:2885784924

等值线等值面的生成.ppt

  1. 1、本文档共61页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
对于规则网格数据,其体元是一个六面体单元,若采用空间八叉树来表示这种体数据,则可以加快运算速度。 Marching Cube方法的另一个重要问题是抽取的等值面三角片数量巨大,有时一个体元可以生成多达12个三角片,当三维数据的数据量很大时,三角片的数量也非常大。这给等值面的绘制和交互操作带来很大困难。Schroeder提出了在不影响图形质量的情况下,通过对原等值面三角片网重排结点,合并简化,生成最优化意义下的Delaunay三角化网,可以有效加快图形的实时显示,这对于Marching Cube方法的实用是非常有意义的。 Marching Cubes (MC)方法 3.MC方法存在的问题 (1) MC方法构造的三角面片是三维等值面的近似表示 首先,在MC方法中,等值面与体元边界的交点是基于函数值在体元边界上呈线性变化这一假设而求出的。当数据密度高、体元很小时,这一假设接近于实际情况。但是,在稀疏数据中,体元较大,如果仍然认为函数值在体元边界上呈线性变化,将会产生较大误差。这时,需要根据不同的具体情况对函数值沿体元边界的变化作其它适当的假设,才能较准确地求出等值面。 其次,即使函数值沿体元边界作线性变化这一假设符合实际,那么通过线性插值求得的交点位置是准确的,但是,将体元中同一个面上两条相邻边上的交点简单地用直线连接起来也是一种近似(如下图所示)。 为了说明这一问题,需要引入当体元各边界上函数值均为线性变化时的等值面模型。如图3.5所示,P(x, y, z)为小体元中的任意点,体元中的数据沿x, y, z三个方向均是线性变化的。如果点P1,P2为点P沿y轴在立方体两个面上的投影,P11、P12、P21、P22分别为P1,P2点沿z轴在立方体平面上的投影。设V为y轴上的坐标分量,f为函数值,那么,通过三次线性插值,可得: (1) 其中P1,P2两点的值可由P11,P12和P21,P22插值求得,而P11、P12、P21、P22四个点的值又可以由它们所在体元内的一条边上的两个顶点插值得到。这样,通过三次线性插值运算,就可以求得P(x, y, z)点的函数值,(1)式可具体展开为: 其中系数ai ( i= 0, …7 )取决于体元8个顶点处的函数值,如果给定的等值面的值为Ft,那么,等值面就被定义为满足如下方程的点的集合 (2) 改变Ft的值,就可以得到不同等值面的表达式。 由上述等值面方程可以方便地求出某等值面与体元边界面的交线方程。不失一般性,设某边界面所在平面的方程为z=z0,代入方程式(2),可得 (3) 上式可进一步表示为: (4) 显然,上述方程表示的是一条双曲线,即等值面与体元中某一个面的交线是一条双曲线或其中的一支。如果用一条直线来表示这条双曲线,则会引起误差(如图所示)。如果体元很小,这一误差是可以忽略不记的。对于稀疏的三维数据,这种近似引起的误差是难以接受的,可通过自适应剖分算法将三角形按给定的逼近精度递归地分成子三角形,使这些子三角形的顶点满足方程(3),且子三角形与等值面的最大距离小于给定的容差。 Marching Cubes (MC)方法 (2) 连接方式上的二义性 Marching Cubes方法可以看成是二维等值线网格序列法在三维空间中的推广。在网格序列法中,如果矩形网格单元4个顶点中有两个顶点的值大于等值线的值,另两个顶点的值小于等值线的值,且这两个顶点交叉分布,那么等值线的连接就出现二义性。同理,在Marching Cubes方法中,如果正六面体单元的6个矩形表面中出现与此相同的情形,那么该正六面体单元中的等值

文档评论(0)

cjp823 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:7060131150000004

1亿VIP精品文档

相关文档