1. 首页
  2. 编程语言
  3. C++ 
  4. 隐式建模-ieee standard 829-2008

隐式建模-ieee standard 829-2008

上传者: 2024-07-27 07:04:01上传 PDF文件 17.45MB 热度 8次

第七章构建模型我们已经看了如何使用源对象(阅读器和程序对象)来创建几何(看44页的“创建简单的模型”)VTK提供了一些其他的技术来产生更复杂的模型。本章提到的这些技术包括建模,挤压成形,和来自非没有组织的点的表面重新构造。如果你使用缺少拓扑或者几何结构形式的数据工作,VTK可以把这个信息表示为区域数据(使用vtkDataObject),区域数据接着可以被操作以产生可以使用本章技术显示的数据集(看194页的“使用区域数据工作”)。一个n维的财政记录可以通过挑选三个变量作为独立变量来压缩成三维的。这里描述的技术——Delaunay三角剖分,Gaussian splatting,和表面重新构造——可以被用来创建适合标准方法的可视化结构。你也可能希望参考clipping部分(111页的“clip数据”),和剪切(96页的“剪切”),和其它修改和创建几何的方法。

7.1隐式建模是使用3D造型(等值面生成)来创建多边形表面网络的一种技术。造型应用于一个vtkImageData数据集(一个规则的体),它的标量值被合成地产生。这些标量使用卷积/采样技术结合布尔集操作来创建(这样想卷积操作:标量域定义为体中每个点到例如一个点,线,或者多边形的一个用户定义的种子几何的距离。类似地,采样操作是体中每个点处一个用户定义的隐式函数的赋值)。定义隐式函数这里是使用某些线来产生一个复杂,多边形表面的一个例子。线被组织成拼写单词“HELLO”而且用于产生种子几何。这个脚本中产生的是线产生作为产生元素的单词“HELLO”。生成高斯脉冲3D AMR数据集的VTK示例代码提供了如何通过计算得到类似效果的实际代码示例。vtkImplicitModeller类计算从线(采用到任何线的近距离)到输出结构化点数据集上的点之间的距离,而且把这个作为标量赋给数据集。输出接着被反馈给vtkContourFilter,它产生了一个多边形等值面。(等值面是来自生成元素的距离)在vtkImplicitModeller中有一对重要的参数。MaximumDistance实例变量控制了离生成元素多远处执行距离计算。这个实例变量,表达为栅格长度的一个片断,对计算的速度有重大的影响:更小的值更快的计算,但是如果值小的话,等值面可能不匀称或者分裂。SampleDimensions实例变量控制了输出结构化点数据集的分辨率,而且Mode|Bounds控制了空间中数据集的位置和规模。采样隐式函数其它的强大的建模技术是隐式函数的使用。隐式函数有以下形式F(x,y,z)=constant球体,圆锥体,椭圆形,平面,和许多其它的有用的几何实体可以使用隐式函数来描述。一个半径为R,中心在原点上的球体S可以使用等式描述。当F(x,y,z)=0时,等式精确地描述了S。当F(x,y,z)<0时,我们描述一个。

你有没有想过用类似的方法在自己项目中进行建模?探索更多技术细节和实际案例,可以参考等值线等值面FlexMC算法等值面构造。你可以更深入地理解如何利用VTK进行隐式建模,从而在你的3D项目中创造出更复杂和精细的模型。

下载地址
用户评论