Java将一系列浮点值映射到图形显示

时间:2014-12-15 07:52:04

标签: java floating-point-conversion

我想取一系列漂浮值(主题),将其更改并将其映射到静态范围的颜色0 - 255,以便在屏幕上显示。

主题范围的值以浮点数最小值0.056582272开头至最大值0.34371486

当运行计算更改时间超过最小值0.0791025到最大值4.5757337

如果我使用

进行映射

数字/ 255 *最大

代码中的

thecol=elements[x][y][subject]*255/largest;

当我在屏幕上弹出它们时,你会看到开头的颜色,然后是最后的颜色,但两者之间没有任何颜色。

1 个答案:

答案 0 :(得分:0)

您没有考虑计算范围的最小值。

float rangeSize = largest - smallest;
float mappedTo0to1 = (value - smallest) / rangeSize; // Map to range 0 - 1.
int mappedResult = (int) (mappedTo0to1 * 255); // Map to range you want. (0 - 255).

验证这些函数的技巧是查看可能的最低和最高输入值。