三个js中dat.gui输入框显示浮点值

Display float value in input field of dat.gui in three js

我添加了内缝英寸值 31.8 作为默认值,但它显示 32。这是我的代码。

var params = { Inseam: 0, inseamarea:31.8, }; var gui = new GUI(); var folder = gui.addFolder( 'Morph Targets' );

          folder.add( params, 'Inseam', -1, 1 ).step( 0.1 ).onChange( function ( value ) {                    
              params.inseamarea = 31.8 +(1.4 * value);                    
          } );
          folder.add(params, "inseamarea", 31.8).name("Inseam Inch ").listen();

我想要浮点数的值,但它以整数形式显示。 我发现了一个 link 并跟随了它。 https://jsfiddle.net/prisoner849/514d4kmy/ 这是我的 fiddel link,我在同一个地方添加了我的代码。 https://jsfiddle.net/kwdphca0/

您应该简单地使用 step(),例如:

folder.add(params, "inseamarea", 31.8).step(0.1).name("Inseam Inch ").listen();

https://github.com/dataarts/dat.gui/blob/master/API.md#numbercontroller--datcontrollerscontroller :

if minimum and maximum specified increment is 1% of the difference otherwise stepValue is 1

编辑:如果你想禁用这个控制器:

let ctrl = folder.add(params, "inseamarea", 31.8).step(0.1).name("Inseam Inch ").listen();
ctrl.domElement.style.pointerEvents = "none";