在matlab中绘制3D云的表面

兹隆

我有 3D 点云。我需要将它们绘制为曲面。我尝试了使用 meshdrid、griddata、scatteredInterpolant、trisurf-delaunay 的变体。什么都行不通。我知道这个问题讨论了很多,但似乎我不明白一些重要的细节。我现在拥有的代码:

load('coords.mat')
figure()
subplot(1,2,1)
plot3(x,y,z,'.')
axis off
view(3)

subplot(1,2,2)
C=gray(numel(x)); % unsuccessful attempt
[~,idx]=sort(z);  %      to have 
C=C(idx,:);       %    illumination
scatter3(x,y,z,50,C,'filled')
axis off
view(3)

产生以下图像: 在此处输入图片说明

你可以帮帮我吗:

1)找到一种方法来绘制它与表面功能。

并且因为表面内可能有一些点(可能是我的问题)

2)如何去除“不可见”的点?

我需要针对不同情况的解决方案,图片和数据只是一个例子。

Mat 文件可以在这里下载

聚苯乙烯

如果它很重要 - 我获得这些点的坐标作为随机贝塞尔曲线的旋转。

更新

如果上面的数据太大,我会生成另一个点数较少的集合:

在此处输入图片说明

坐标在这里

阿尔乔姆·埃梅利亚年科

你从哪里得到这些数据?它表示为向量,但如果将其重塑为矩阵,则可以使用该surf函数。试试这个代码:

z=reshape(z,100,100);
y=reshape(y,100,100);
x=reshape(x,100,100);
surf(x,y,z)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

绘制3D表面图

来自分类Dev

从数据绘制3D表面

来自分类Dev

在Matlab中绘制3d贝壳

来自分类Dev

在Matlab中绘制3D曲面

来自分类Dev

在Matlab中绘制3D平面?

来自分类Dev

在f(x,y,z)消失的3D中绘制表面

来自分类Dev

matplotlib中的3d表面

来自分类Dev

R中的3D表面图

来自分类Dev

如何在Matlab中快速绘制3D向量?

来自分类Dev

在Matlab中绘制给定方程的3D平面

来自分类Dev

如何在Matlab中绘制圆形3D图

来自分类Dev

在Matlab中的3D空间中绘制线条

来自分类Dev

如何从Matlab中的线段绘制3D对象

来自分类Dev

如何使颜色条引用3D图中的标记而不是Matlab中的表面

来自分类Dev

如何使颜色条引用3D图中的标记而不是Matlab中的表面

来自分类Dev

Matlab绘制多条3D线

来自分类Dev

3D表面JavaFX

来自分类Dev

使用python中的matplotlib创建3D表面图

来自分类Dev

如何在matplotlib中旋转3D表面

来自分类Dev

在python中的3D表面上覆盖纹理

来自分类Dev

3D中的凸包的表面积

来自分类Dev

在R中的3D表面图中更改颜色比例

来自分类Dev

如何在matplotlib中旋转3D表面

来自分类Dev

Python 中的 3D 表面颜色图

来自分类Dev

在Matlab中绘制正方形表面

来自分类Dev

在MATLAB中以不同的高度在3D轴上绘制不同的2D椭圆图

来自分类Dev

在MATLAB中从2D地图绘制体积3D数据?

来自分类Dev

R:处理csv散点数据以绘制3D表面

来自分类Dev

在符合其表面的 3D 模型上绘制一条线