gpt4 book ai didi

rgl.postscript 当 rgl.useNULL = TRUE

转载 作者:行者123 更新时间:2023-12-04 00:33:30 25 4
gpt4 key购买 nike

rgl.postscript() 不应该用于 headless 服务器,即当 options(rgl.useNULL = TRUE) 时?我知道 rgl.snapshot() 不起作用。

library(rgl)
options(rgl.useNULL = TRUE)
open3d()
x <- sort(rnorm(1000))
y <- rnorm(1000)
z <- rnorm(1000) + atan2(x, y)
plot3d(x, y, z, col = rainbow(1000))
rgl.postscript("test.pdf",fmt="pdf")

这给了我“在 rgl.postscript("test.pdf", fmt = "pdf") 中:Postscript 转换失败”。

最佳答案

在某些情况下它可以这样做,但目前没有。一个问题是,如果 rgl 是用空设备启动的,它甚至不会在 OpenGL 函数中链接,而 rgl.postscript() 会使用其中的一些。

编辑:对不起,“无链接”是我想要的。目前它确实需要链接,但它不会运行初始化代码,因此它应该在没有显示可用的上下文(例如 headless 服务器)中工作。

在 headless 服务器上,您可以使用 Xvfb 作为“虚拟帧缓冲区”。我对它没有很多经验,但我想我听说它不能正确处理 rgl.snapshot。我希望 rgl.postscript 能够工作。

原则上,您也可以在 WebGL 中进行渲染,然后使用其他一些工具将输出转换为您想要的格式。不知道有没有这样的工具。

关于rgl.postscript 当 rgl.useNULL = TRUE,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36682656/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com