【问题标题】:How can i show .obj in R Shiny?如何在 R Shiny 中显示 .obj?
【发布时间】:2022-08-02 21:12:24
【问题描述】:

我的目标是在 R Shiny 上显示带有 .obj 扩展名的鼠标图像。我还希望能够放大 - 缩小这个 3d 图像。但是,我无法将我在 R 中使用 rgl 运行的代码调整为 Shiny。

library(shiny)
library(rgl)

shinyApp(

  ui = fluidPage(
open3d()
shade3d(readOBJ(\"images/mice.obj\", material = list(color = \"green\", shininess = 1)))

  ),
  ###
 ShinyApp(ui = ui, server = server)

    标签: r shiny 3d rgl .obj


    【解决方案1】:

    要在 Shiny 应用程序中渲染 'rgl' 对象,您首先必须安装 'rgl' 的开发版本,因为当前发布版本有一个错误:

    remotes::install_github("dmurdoch/rgl")
    

    现在您可以进行如下操作:

    library(shiny)
    library(rgl)
    
    options(rgl.useNULL = TRUE)
    
    ui <- fluidPage(
    
        titlePanel("Dupin cyclide"),
    
        rglwidgetOutput("mesh")
    
    )
    
    server <- function(input, output, session){
    
        save <- options(rgl.inShiny = TRUE)
        on.exit(options(save))
    
        output$mesh <- renderRglwidget({
            try(rgl.close())
            mesh <- readOBJ("cyclide.obj")
            shade3d(mesh, color = "green")
            rglwidget()
        })
    
    }
    
    shinyApp(ui, server)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-05-23
      • 2018-06-14
      • 2017-03-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-07-23
      • 2019-03-06
      相关资源
      最近更新 更多