Quest3D - Русскоязычное сообщество

Quest3D => Логика => Тема начата: anval от 29 Мая 2009, 13:36:41



Название: [Логика]вывод значений с указанной точностью (переимен. округление?)
Отправлено: anval от 29 Мая 2009, 13:36:41
Всем привет.Как убрать округление?Мне нужны числа с 7 знаками после запятой.


Название: Re: округление?
Отправлено: Denil-Tornado от 29 Мая 2009, 19:08:30
Смотря что ты хочишь замутить и какие ноды ты используешь.


Название: Re: округление?
Отправлено: anval от 30 Мая 2009, 14:13:16
Видимо седьмой знак "прячется":).Т.к.при умножении на 10 000 000 он появляется.Так что посмотрим что получится...


Название: Re: округление?
Отправлено: mixey от 07 Сентября 2009, 22:34:40
На этот вопрос кто-нибудь знает ответ?
Мне для вывода данных нужны три знака после запятой! Внутри рассчетов в value много знаков, а когда выводишь текст, то происходит округление, как быть?


Название: Re: округление?
Отправлено: DimiS от 07 Сентября 2009, 23:15:54
есть два варианта: подождать выхода версии 4.3 -- там для Text Operator-а добавили возможность вывода чисел с указанной точностью
Или вручную -- разделить число на целую и дробную часть, дробную часть умножить на 10 в степени нужной тебе точности(на 1000 для 3-ёх знаков). И потом смержить три куска текста: целое от исходного значения + "."(ну или запятую) + целое от дробной части умноженной на 10 в степени N, где N -- количество знаков после запятой. Надеюсь доступно объяснил ;)


Название: Re: [Логика]вывод значений с указанной точностью (переимен. округление?)
Отправлено: mixey от 12 Сентября 2009, 18:06:56
Ога, все понятно, спасиба! Конечно удобнее подождать новую версию Квеста, но за не имением таковой сейчас, пользоваться  изощренными способами!  :D


Название: Re: [Логика]вывод значений с указанной точностью (переимен. округление?)
Отправлено: mixey от 07 Октября 2009, 00:00:44
Возникла неприятная проблема при таких выкрутасах!
Если взять число 2.0123, то алгоритм такой:
  • целое - 2, дробное - 0.0123
  • после умножения в дробной части выходит 123
  • и если соеденить через точку, то выйдет 2.123

Есть какой-то оптимальный способ решения данной проблемы или единственный вариант коннектить сложную систему проверок на нули?


Название: Re: [Логика]вывод значений с указанной точностью (переимен. округление?)
Отправлено: DimiS от 08 Октября 2009, 04:38:16
Да, чёто забыл про такой ньюанс.
Ну в общем прийдёцца делать проверку, и не такая она уж и сложная.
Могу ещё посоветовать попробовать сделать форматирование в луа скрипте, не уверен умеет ли он.
Ну а вобще версия 4.3 уже вышла, думаю кряк тоже уже на подходе)