美好的一天,我想寻求有关如何在 MATLAB 中将 3D 坐标 (x,y,z) 转换为 .STL 文件的帮助。
下面是我在 MATLAB 中模拟和获得的一些 3D 坐标,并将其存储在 .txt 文件中。
P =
14 0 25
16 0 20
15 4 24
10 3 6
7 5 37
5 7 3
7 0 37
3 1 37
5 1 4
...
(many more)
请注意,第一列包含 x 坐标,第二列包含 y 坐标,第三列包含 z 坐标。
我探索了以下方法:
tri = delaunayTriangulation(P)
tetramesh(tri)
我得到如下的 3D 对象:
并且
TR = delaunay(P(:,1), P(:,2);
output = trimesh(TR,P(:,1),P(:,2),P(:,3));
对于两者,我都尝试使用 stlwrite() 函数将其导出到 .stl 文件中,但不幸的是,我一直都失败了。
失败1:四面体
DT = delaunayTriangulation(x,y,z);
tetramesh(DT);
错误信息:
Error using stlwrite (line 33)
Tetrahedron triangulation is not supported.
Error in Wong_STL (line 173)
stlwrite(DT,'FinalOutputTrimesh.stl')
失败2:修剪
DT = delaunay(x,y,z);
trimesh(DT,x,y,z);
错误信息:
Error using stlwrite (line 25)
Input argument must be a triangulation object.
Error in Wong_STL (line 161)
stlwrite(DT,'FinalOutputTrimesh.stl')
现在,我正在尝试解决如下问题,但我不知道如何找到 T。
P = (x,y,z)
T = ??? ??? ???
TR = triangulation(T, P);
stlwrite(TR,'tritext.stl','text')
我需要知道如何找到 T,以便能够将 3D 坐标导出到 STL 文件。
有人可以分享他/她关于如何解决这个3D 坐标转换为 .stl 文件问题的知识吗?