通过 shiny + rgl 捕获坐标

Capture coordinates through shiny + rgl

是否可以使用 identify3d() 或类似的东西来捕获通过 renderRglwidget 渲染的 rgl 场景中的地标坐标?我在 shiny 中使用以下代码进行渲染:

#server
observeEvent(input$mspec3D, {
    tt1 <- out2[[6]][out2[[6]][,3] == input$mspec3D, ][1]
    tt1 <- as.numeric(tt1)

    tt2 <- out2[[6]][out2[[6]][,3] == input$mspec3D, ][2]
    tt2 <- as.numeric(tt2)

    tt1 <- out2[[1]][[tt1]]
    tt2 <- out2[[1]][[tt2]]

    output$webgl3D <- renderRglwidget ({
        try(rgl.close())
        points3d(tt1, size=3, col="dimgray", box=FALSE)
        points3d(tt2, size=3, col="dodgerblue", box=FALSE)
        axes3d()
        rglwidget()
    })
})

#ui
rglwidgetOutput('webgl3D', width = "1200px", height = "400px")

是的,虽然它目前仅在开发版本中。您可以从 R-forge 或 Github 获取它,请参阅 . You need to use crosstalk

请参阅 rgl 开发版本中 WebGL 插图中的讨论。