1

我想要做的是将图形导出为 STL、U3D,任何能让我更进一步将这些图作为 3D PDF 包含在 LaTeX 文档中的东西。根据我所做的阅读,使用此插件或通过STL 转换将表面/箭筒转换为 U3D 很简单。

但是,这两种方法似乎都无法转换像我这样的三维线:

temp = [15.2697 671.323 -9.91231;
26.9127 766.25  -9.73684;
40.6373 863.993 -9.50037;
56.4426 963.955 -9.21152;
74.4579 1069    -8.96309;
94.902  1177    -8.75421;
117.824 1287    -8.48337;
143.176 1400    -8.20126;
171.07  1515    -7.93761;
201.032 1629    -7.66941;
232.849 1742    -7.57231;
265.95  1855    -7.5369;
298.406 1964    -7.4525;
334.686 2073    -7.3278;
294.999 1942    -7.4535;
235.956 1723    -7.90447;
203.222 1576    -8.31706;
180.908 1462    -8.70754];
plot3(temp(:,1),temp(:,2),temp(:,3));

首先,对我来说,使用 STL 方法听起来是不可能的,因为我必须对无法三角化的数据进行三角剖分(与表面相比)。

然而,我上面提到的第一个附加组件认为这是一个颤动图,然后没有说它需要一个表面或一个补丁对象(尽管自述文件确实建议线条也是可能的)。

然而,总的来说,这两种方法对于在 Matlab 中应该有驱动程序的东西来说都太复杂了。我是否缺少针对此问题的明显简单解决方案?

4

1 回答 1

0

我设法通过使用Export figure to 3D interactive PDF with aline而不是plot3. 查看我的台词时质量有相当大的损失,其中并不少见的中断在plot3版本中不存在,但这至少解决了最初的问题。

目前,这将是我建议任何人处理此问题的方式。对于一个工作示例,以下内容应该有所帮助:

line(temp(:,1),temp(:,2),temp(:,3))

使用与以前相同的数据集。

最后,请注意,至少对于 Matlab R2016b,链接的 U3D 转换器无法正常工作,需要进行一些手动编辑(直到源代码得到修复)。作者的 Github 站点详细介绍了这些更改。

于 2016-12-01T12:30:08.737 回答