Отображать значение с плавающей запятой в поле ввода dat.gui в трех js

введите здесь описание изображения

Я добавил значение внутреннего шва 31,8 дюйма в качестве значения по умолчанию, но оно показывает 32. Это мой код.

var params = {Внутренний шов: 0, внутренний шов: 31.8, }; var gui = новый графический интерфейс(); var folder = gui.addFolder('Цели морфинга');

          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();

Мне нужно значение в формате с плавающей запятой, но оно отображается в виде целого числа. Я нашел ссылку, по которой я следовал. https://jsfiddle.net/prisoner849/514d4kmy/ и это моя ссылка на фиддел, куда я добавил мой код там же. https://jsfiddle.net/kwdphca0/


person Deepak3301086    schedule 06.12.2019    source источник


Ответы (1)


Вы должны просто использовать 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 :

если минимальное и максимальное указанное приращение составляет 1% от разницы, в противном случае stepValue равно 1

РЕДАКТИРОВАТЬ: Если вы хотите отключить этот контроллер:

let ctrl = folder.add(params, "inseamarea", 31.8).step(0.1).name("Inseam Inch ").listen();
ctrl.domElement.style.pointerEvents = "none";
person soju    schedule 06.12.2019
comment
Я пробовал по-вашему. но возникает проблема, что я хочу отображать здесь расчетное значение, а не значение, которое увеличивается в соответствии с шагом - person Deepak3301086; 06.12.2019
comment
Я не понимаю вашего комментария... inseamarea будет обновляться в зависимости от значения Inseam, как и предполагалось. - person soju; 06.12.2019
comment
Извините за недопонимание. Да, это работает для меня. Большое спасибо. - person Deepak3301086; 06.12.2019
comment
Возможно ли, что пользователь не может вручную изменить значение поля inseamarea. Я имею в виду, можем ли мы отключить это текстовое поле. - person Deepak3301086; 06.12.2019
comment
stackoverflow.com/questions/38602189/ - person soju; 06.12.2019