19
パワーメーターの赤と緑の間の色を生成しますか?
私はJavaゲームを書いていて、あなたが何かを撮影するのがどれだけ難しいかについてパワーメーターを実装したいと思います。 0〜100のintをとる関数を作成する必要があります。その数値の高さに基づいて、緑(パワースケールで0)と赤(パワースケールで100)の間の色を返します。 音量調節のしくみに似ています: 緑と赤の間で色を生成するために、色の赤、緑、青のコンポーネントに対してどのような操作を行う必要がありますか? だから、私は言うことができるgetColor(80)、それはオレンジ色(R、G、Bの値)getColor(10)を返すか、より緑/黄色のRGB値を返します。 新しい色のR、G、B値のコンポーネントを増やす必要があることはわかっていますが、色が緑から赤に変化するときに何が上または下になるかはわかりません。 進捗: HSV / HSBカラースペースを使用することになりました。 私が使用した関数は: public Color getColor(double power) { double H = power * 0.4; // Hue (note 0.4 = Green, see huge chart below) double S = 0.9; // Saturation double B = 0.9; // Brightness return Color.getHSBColor((float)H, (float)S, (float)B); } 「パワー」は0.0〜1.0の数値です。0.0は明るい赤を返し、1.0は明るい緑を返します。 …