Tag: qhull

用xyz坐标绘制三维表面图

我希望有经验的人可以帮助如何从xyz数据准备形状文件。 一个精心准备的数据集的一个很好的例子可以在这里看到彗星Churyumov-Gerasimenko,虽然没有提供创build形状文件的前面的步骤。 我试图更好地理解如何将一个曲面应用到给定的一组XYZ坐标。 使用笛卡尔坐标直接与R包“rgl”,但形状环绕似乎更困难。 我find了R程序包geometry ,它提供了一个QHULL函数的接口。 我试图用这个来计算Delaunay三angular面,然后我可以在rgl中rgl 。 我无法找出与函数delaunayn相关的一些选项,可能控制这些方面计算的最大距离。 我希望这里的某个人可能会对xyz数据的表面build设有所改进。 使用“斯坦福兔子”数据集的示例: library(onion) library(rgl) library(geometry) data(bunny) #XYZ point plot open3d() points3d(bunny, col=8, size=0.1) #rgl.snapshot("3d_bunny_points.png") #Facets following Delaunay triangulation tc.bunny <- delaunayn(bunny) open3d() tetramesh(tc.bunny, bunny, alpha=0.25, col=8) #rgl.snapshot("3d_bunny_facets.png") 这个答案让我相信Qhu的R实现可能会有问题。 另外,我现在已经尝试了各种设置(例如delaunayn(bunny, options="Qt") ),效果不大。 在这里列出了 Qhull选项 编辑: 这是一个额外的(更简单的)球体的例子。 即使在这里,面的计算并不总是find最近的相邻顶点(如果你旋转球,你会看到一些穿过内部的方面)。 library(rgl) library(geometry) set.seed(1) n <- 10 rho <- 1 theta […]