[英]Using playwidget with customized scene update functions (like play3d)
play3d
支持自定义场景更新功能,即,您基本上可以在帧之间做任何您想做的事情,包括添加/更新形状,表面,照明或视点。 请参阅demo(flag)
,其中demo(flag)
的表面每帧都会重绘。
playwidget
有点受限制。 它仅支持可以传递以更新par3d
par3dinterp
样式的控件。 如果要更改par3d
可用元素之外的3d图的属性,例如添加形状,我不知道如何实现。
有没有办法使playwidget
行为类似于play3d
?
谢谢。
至少有三种方法可以做到这一点。
如果更改的数量非常有限(例如标志示例的简单版本),则可以一次绘制所有框架,并将除一个对象之外的所有对象设置为alpha = 0
,使其不可见。 然后根据播放器更改哪个帧的alpha = 1
。
另一种方法是编写Javascript。 Legacy WebGL Methods
小插图中的第一个示例就是这样做的。 请注意,JavaScript中rgl对象的内部结构可能会发生变化,因此可能很难维护。
最后一种方法是使用Shiny。 在R代码中进行更改,然后重新绘制场景。 demo("shinyDemo", "rgl")
执行此操作。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.