我发现这个函数是用来删除gui元素的,但我认为它已经过时了。到目前为止,我还找不到其他人知道如何删除gui的任何部分,无论是整个dat.GUI()还是只是添加到dat.GUI()的一个元素。第一个可能足以满足我的需要(只需将dat.GUI()一起删除),但其中任何一个都会非常有用!
应该删除一个dat.GUI()
gui = new dat.GUI();..。
removeGui(gui);
function removeGui(gui, parent)
{
if(!parent)
{
parent = dat.GUI.autoPlaceContainer;
}
parent.removeChild(gui.domElement);
}但是返回错误:不能调用未定义的方法'removeChild‘,所以我猜测autoPlaceContainer是错误的。
此函数的原始作者留下了以下注释:
其中,参数gui表示要删除的父容器,DAT.GUI是父容器,如果在实例化DAT.GUI时没有指定domElement,则不需要传递父容器。
发布于 2014-01-20 03:37:35
var gui = new dat.GUI();
item = gui.add(text, 'message');要删除:
gui.remove(item);如果您的项目在文件夹中,则必须执行以下操作:
folder.remove(item);发布于 2016-07-07 12:45:54
如果想要删除整个dat.GUI元素及其所有侦听器,可以使用gui.destroy()
如果想要重置dat.GUI的值,可以使用datGUI.__controllers.forEach(controller => controller.setValue(controller.initialValue));
发布于 2021-01-21 08:37:41
您可以尝试使用以下命令隐藏它:
gui.hide()https://stackoverflow.com/questions/16321031
复制相似问题