我正试图找到一种方法,用rgl轻松地将点云(描述复杂曲面)转换为网格对象。我知道外面有啮合软件,但是有谁知道是否可以在R中完成呢?谢谢!
编辑:一个恐龙的例子
library(datasauRus)
library(dplyr)
library(rgl)
dino <- datasauRus::datasaurus_dozen %>%
filter(dataset == "dino") %>%
select(-dataset)
dino <- rbind(dino, dino)
dino$z <- c(rep(0,142), rep(1,142))
plot3d(dino)
dino_mesh <- rgl::as.mesh3d(
x = dino$x, y = dino$y, z = dino$z)
plot3d(dino_mesh)
# --> This conversion to a 3D mesh did not work well发布于 2021-12-11 09:55:07
演示点并不定义3D表面:它们只是二维的直线绘制。但是你仍然可以通过加入相应的点来做一个网格。
index <- rep(c(1, 143, 144, 1, 144, 2), 141) + rep(0:140, each=6)
mesh <- mesh3d(dino, triangles = index)
open3d()
shade3d(mesh, col = "gray")
aspect3d(1, 1, 0.2)它产生了这样的结果:

填充边会更困难,因为在数据集中没有什么应该关闭的指示。
https://stackoverflow.com/questions/70297573
复制相似问题