我跟踪本教程,通过Meshlab将POV图形导出到STL文件中。我还尝试过将其导出为OBJ格式。从POV图形的创建到Meshlab的导出,一切似乎都很好。
但是,我尝试用readSTL和readOBJ函数在R中呈现rgl包的图形,问题就在这里。
实际上,导出的STL文件是空的:
solid STL generated by MeshLab
endsolid vcg因此,当然,rgl::readSTL在R中不呈现任何内容。
OBJ文件不是空的,但它不包含任何面(只有顶点和顶点法线):
####
#
# OBJ File Generated by Meshlab
#
####
# Object blob.obj
#
# Vertices: 8437
# Faces: 0
#
####
vn -0.900372 -0.267658 -0.343060
v -4.000525 2.600000 -0.833225
......在R中运行rgl::readOBJ之后,渲染只是一个白色的场景,什么都没有。即使没有脸,我们也能得到一些分数。
也许我搞错了这一步。你知不知道:
STL文件?readOBJ得到点?OBJ文件中的faces?rgl的另一种方法吗?更新
我找到了一种在OBJ文件中获取人脸的方法:代替在Meshlab中进行屏蔽的Poisson曲面重建,就像在tuto中所说的,我做曲面重建:球旋转。
但是,rgl::readOBJ会生成以下错误:
Error in order(vlinks[[i]][, 2]) : argument 1 is not a vector同样的过程允许导出一个非空的STL文件.但是,rgl::readSTL会生成以下错误:
Error in matrix(NA, 3 * n, 3) : invalid 'nrow' value (too large or NA)
In addition: Warning message:
In matrix(NA, 3 * n, 3) : NAs introduced by coercion to integer range发布于 2018-03-25 15:46:55
好吧我找到了。
blob.ascSTL。检查“二进制编码”(默认选项),因为rgl::readSTL只读取二进制STL文件,而不是ASCII文件。rgl::readSTL了。这样做是可行的:

https://stackoverflow.com/questions/49477327
复制相似问题