首先,我是 C# 的新手!
我有一个包含大约 300 万行的文件。每行包含一个介于 0 和 1 之间的数字(小数点后 6 位)。
我想做的是为每个数字创建一个 RGB 值,具体取决于该数字在 0 和 1 之间的位置。例如,0 表示绿色,1 表示红色,所有介于两者之间的数字都将具有介于绿色和红色之间的 RGB 值,创建该值是为了表示它在色阶下的距离。
如何计算该 RGB 值?
最佳答案
嗯,最简单的方法是:
int red = (int)(Num * 255);
int green = (int)((1 - Num) * 255);
int blue = 0;
这样你就可以得到红色和绿色之间的渐变,绿色为 0,红色为 1。
不过,您似乎想要为从“好”到“坏”的值生成一个视觉标度。因为人们通常还想在中间放置黄色来表示“还可以”的值。这是相关代码:
int red, green, blue;
if ( Num < 0.5 )
{
red = (int)(Num * 2 * 255);
green = 255;
blue = 0;
}
else
{
red = 255;
green = (int)((2 - 2 * Num) * 255);
blue = 0;
}
关于c# - 根据导入的十进制值应用颜色值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37142419/