“面插值为多面体 (Multipatch)”(3D 分析)的工作原理

使用不规则三角网 (TIN) 或 terrain 数据集和面要素类作为输入,面插值为多面体 (Multipatch) 工具可生成多面体要素类。每个面内的表面部分被提取为基于多面体的要素。多面体会在其几何(包括内部区域和周长)中捕获 TIN 或 terrain 数据集表面的 3D 制图表达。输入记录中的属性被传递到输出。

每个输入面都在 TIN 或 terrain 数据集表面上描绘其边界轮廓。使用线性插值法获取高度。在每个输入折点以及边界线与表面三角形边和结点的任意相交位置都可以进行采样。此自然增密会使用最少量的样本捕获线性表面的完整定义。然后,提取位于该面内的所有结点。这些结点会在基于内存的新 TIN 中被重新三角形化,并且 3D 面边界被强制作为裁剪面。此新 TIN 的三角形提取为一系列条带,这些条带用来定义基于多面体的要素。

{max_strip_size} 参数指定在多面体构造中使用的任意三角条带中所允许的折点最大值。虽然 ArcGIS 没有任何特殊的大小限制或首选项,但有些 3D 显卡可能会有。三角条带可以直接作为 3D 图形应用程序接口 (API) 的输入,以实现渲染的功能。默认的 {max_strip_size} 值是 1024。

{z_factor} 用来将 z 值从一种测量单位转换为另一种(例如,从英尺转换为米)。在多面体构造期间,从输入 TIN 或 terrain 中派生出的高度会乘以此因子。

当面区域内的 3D 表面需要被视为要素时,面插值为多面体 (Multipatch) 工具就会发挥作用。在 ArcScene 中优化面重叠就是其用处之一。用户希望面的周长和内部区域均与表面保持一致。问题是面仅由其边界线来定义。未在 3D 空间中定义其内部。因此,面不会如人们所预期的那样进行渲染。其中一种解决方法就是像在 ArcGlobe 中进行动态操作一样,将面栅格化并叠加这些栅格。另一种方法是使用此工具将面转换为多面体(内部区域在 3D 空间中定义的几何),然后渲染多面体。

相关主题


7/10/2012