如何在数据点上创建 3D 多边形/网格? [英] How do I create a 3D polygon/mesh over data points?
问题描述
我有一个数据点数组,Points = [X,Y,Z]
,其中 X
,Y
&Z
是 n-by-1
向量.x
、y
和 z
值是黑盒的结果.
I have an array of data points, Points = [X,Y,Z]
, where X
,Y
& Z
are n-by-1
vectors. The x
, y
and z
values are the result of a blackbox.
以下是这些点的示例:
图.3D 点
我想生成如下所示的内容:
I want to generate something that looks like this:
图.网格绘制
如果你画不出来,它就像一个变形的圆柱体.凸包不起作用,因为几何中存在会被忽略的凹陷.
If you can't make the drawing out, it's something like a deformed cylinder. A convex hull does not work because there are dips in the geometry that would be ignored.
推荐答案
我正在寻找的解决方案是 Matlab 中的 boundary
函数,它可以在点周围创建收缩包装".很难找到这个解决方案,因为虽然研究 &文献将其称为凹壳",Matlab 将其称为非凸多边形",因此对前者的搜索没有找到任何结果.网格物体
The solution I was looking for was the boundary
function in Matlab which creates a "shrink wrap" around the points.
It was hard to find this solution because while research & literature refers to this as a "Concave Hull", Matlab refers to it as "Nonconvex polygons" so searches for the former did not turn up anything.
Meshed Object
这篇关于如何在数据点上创建 3D 多边形/网格?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!