我想弄清楚如何将 1 到 50 之间的数字转换为可在此处使用的灰度颜色:

g.setColor(MyGreyScaleColour);

1 表示最亮(白色),50 表示最暗(黑色)。

例如
Color intToCol(int colNum)
{
code here
}

有什么建议么?

最佳答案

Java 使用 RGB 颜色,其中每个分量(红色、绿色、蓝色)的范围为 0-255。当所有组件具有相同的值时,您最终会得到一个白-黑-灰颜色。接近 255 的组合会更白,接近 0 的组合会全黑。下面的函数将返回浅灰色,白色的数量随输入相应地缩放。

Color intToCol(int colNum)
{
  int rgbNum = 255 - (int) ((colNum/50.0)*255.0);
  return new Color (rgbNum,rgbNum,rgbNum);
}

10-05 21:11
查看更多