问题标签 [dat.gui]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
3531 浏览

dat.gui - 在 dat.gui 中为属性名称创建别名

我正在尝试在 three.js 项目中使用 dat.gui 来允许打开和关闭场景中各种元素的可见属性。从功能上讲,这很好用。但是,我遇到的问题是因为我正在为场景中每个孩子的可见属性创建一个复选框,我最终得到了一长串标记为“可见”的复选框。

基本上,这是:

结果是这样的:

所有 gui 元素都正确引用了每个孩子的可见属性,但对用户没有太大帮助。

是否有提供将显示给用户的别名而不是属性名称(我想使用元素的名称或 id)?

0 投票
1 回答
1836 浏览

javascript - OrbitControls 和 dat.gui 文本不起作用

我正在使用带text属性的 three.js 和 dat.gui。

另外,我的场景中有 OrbitControls:

cameraControl = new THREE.OrbitControls(camera); cameraControl.update();

但是这种场景有一个问题。GUI 上的文本不起作用。您不能在该框中输入任何内容。而且我已经调试过了,问题是由OrbitControls引起的。

你知道解决它的方法或解决方法吗?谢谢!

0 投票
1 回答
2700 浏览

javascript - 如何控制 dat.gui 中的复选框?

我正在使用 dat.gui 为应用程序提供一个界面来控制类似于以下示例的场景:

http://workshop.chromeexperiments.com/examples/gui/#1--Basic-Usage

问题:

我需要向复选框添加一个操作,并向复选框旁边的文本(显示大纲)添加另一个操作。

在此处输入图像描述

例如,场景中有一段文字。当我单击复选框时,它必须显示/隐藏文本,当我单击“displayOutline”时,它必须放大到文本。但是,在上面的链接中,当您单击文本或复选框时,会发生一项操作。我无法向文本和复选框添加不同的操作。

代码:

问题:

如何向复选框和复选框旁边的文本添加不同的操作?

感谢您的帮助。

0 投票
2 回答
2523 浏览

javascript - 取消选中 dat.gui 中的复选框

当我更改下拉菜单的选项时,我希望取消选中所有复选框。这是我放在下拉菜单更改时调用的函数中的代码:

这确实取消选中该复选框。但是,要重新选中复选框,需要单击两次。dat.gui 似乎仍然认为该复选框已选中,因此只需单击一下即可取消选中它,再单击一下即可选中它。

如何让 dat.gui 更新复选框?

编辑:这是问题的当前状态。

使用此代码,由于 .listen() 调用并将变量设置为 false,因此未选中该复选框。但是,仍然需要单击两次才能显示检查 - 一次“取消选中”复选框,一次检查它。

0 投票
2 回答
1337 浏览

javascript - 无法在 Three.js 中初始化 dat.GUI

当我运行我的代码时,我在这一行中收到以下错误:

错误:无法获取“getItem”属性空引用或未定义。

我导入了库,我不知道出了什么问题,这是我的代码:

0 投票
2 回答
1950 浏览

javascript - Three.js:无法更改 dat.GUI 中的值

我有一个 dat.GUI 的实例。我向该实例添加了一个“组合框”以选择可能的值。当我运行我的应用程序时,dat.GUI 与组合框一起出现,但有一个问题:我无法更改它的默认值(我的 gui 被冻结),这是我的代码:

¿我做错了什么?我需要能够使用我的 GUI 更改值。

0 投票
1 回答
96 浏览

dat.gui - 如何在 dat.gui 中屏蔽用户进入文本字段(即密码字段)

我在需要用户名/密码的 web 应用程序中使用 dat.gui。像普通的网络应用程序一样,我想在用户输入密码时将密码屏蔽为“*******”。

我知道文本字段上的 onChange 事件将在用户修改文本时返回当前值;但无法弄清楚如何将输入的值替换为“****”

0 投票
1 回答
243 浏览

javascript - dat.GUI 创建多个同名按钮

我尝试使用 dat.GUI 创建多个具有相同名称“ShowCoord”的按钮,这可能吗?我目前拥有的是:

我现在显示了正确的 currObj['name'] 和 currObj['numVertices']。但是所有的“ShowCoord”按钮只包含最后一个 subObj 的信息(所以即使我点击不同的按钮,console.log("i is " + subObj['index']) 每次都会打印出 148)。我怎样才能让它工作?非常感谢!

0 投票
1 回答
1272 浏览

javascript - 使用 dat.gui 在three.js 中的多个3d 模型之间切换

我正在尝试在我的 three.js 场景中呈现的多个 3d 模型(加载了 OBJMTLLoader.js)之间切换。I'm using dat.gui to create a dropdown list of model names and when one is chosen, the scene will add the respective obj model to the scene and remove the original one.

在这里,我正在加载 2 个单独的模型并将第二个模型添加到场景中,然后设置 dat.gui 控件:

然后,addControls 函数:

两个模型都已加载,但只有一个模型添加到场景中。更改“模板”控件时是否可以添加其他模型?我尝试创建一个单独的函数 updateboard() 并在渲染函数中调用它,如下所示:

但它没有用。我还尝试在渲染函数中设置一个 if 语句:

但它也没有奏效。任何帮助将不胜感激!或者,如果您能找出一个也有帮助的例子!提前致谢。

0 投票
0 回答
607 浏览

javascript - json加载场景中的不透明度和真实透明度

我正在使用 three.js 和 dat.gui 来构建一个界面来修改一些加载的 json 对象的透明度。

我使用了材质创建所需的所有选项:

我可以使用 dat.gui 修改不透明度,但加载的对象之一似乎没有真正的透明度。相反,当我将不透明度设置为 0 时,它会在其他物体的表面留下黑洞。

我会留下两张截图。

http://i.stack.imgur.com/lxAZQ.png
http://i.stack.imgur.com/iWzch.png

你能帮我理解如何解决这个问题吗?