使用R rgl包生成了一个3D场景。
- 我可以通过rgl函数将它保存为RTL和OBJ格式,但这些函数不支持颜色。
- 我可以将其保存为WebGL格式,但是我找不到WebGL转换为.u3d格式的方法,也没有任何办法将WebGL内容插入到由LaTeX生成的.pdf文件中。
我可以将其保存为PLY格式,然后导出为.u3d格式(例如使用Meshlab),但会出现以下错误:
Error in if (sum(normals[1:3, it[j, i]] * normal) < 0) normals[, it[j, : missing value where TRUE/FALSE needed
我真的不知道该如何解决。
这里有一个示例文件,可用于重现此问题。要复现,只需在工作目录中下载该文件,执行R并运行:
library(rgl)
load("alps3d.Rdata") #This loads the alps3d variable
plot3d(alps3d)
writePLY("alps3d.ply")
我该如何将3D场景保存为一种格式,以便在使用LaTeX的.pdf文件中集成?
writePLY("alps3d.ply", withNormals = F)
来避免这个错误。对于这个特定的模型,它似乎只有平面几何,并没有顶点法线也不会带来太大的问题。所以你最终得到一个包含几何和颜色信息的PLY文件。然而... MeshLab不会从PLY文件中读取任何颜色信息。因此,使用MeshLab转换为U3D也不是可行的方法。 - WhiteViking