13

GUI要素を削除するこの関数を見つけましたが、時代遅れだと思います。これまでのところ、dat.GUI() 全体であろうと、dat.GUI() に追加された要素であろうと、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);
}

しかし、エラーが返されます: undefined のメソッド 'removeChild' を呼び出すことができないため、autoPlaceContainer が間違っていると推測しています。

この関数の元の作成者は、次のメモを残しました。

パラメーター gui は削除する DAT.GUI を表し、parent は親コンテナーです。DAT.GUI をインスタンス化するときに domElement を指定しなかった場合、親を渡す必要はありません。

4

5 に答える 5

12
var gui = new dat.GUI();
item = gui.add(text, 'message');

削除するには:

gui.remove(item);

アイテムがフォルダー内にある場合は、次のことを行う必要があります。

folder.remove(item);
于 2014-01-19T19:37:35.327 に答える
-1

dat.gui.js ファイルの remove 関数を変更します。「slice」は「splice」になりたいです。

答えはここにあります: https://github.com/ulyssesp/dat.gui/commit/86f43c0be5db08c9a6d7339aa8287620306fb0b5

于 2015-04-03T18:54:53.470 に答える