- ベストアンサー
3つの値を1つの値に
今色を使ったプログラムを組んでいて、RGBの3値を利用しています。 例えば R:157 G:0 B:0 と R:0 G:0 B:157 これらのRGB値を1つの値に計算し、 二つが違う色であることを判別したい場合 どのような計算方法を利用すればいいでしょうか。 よろしくお願い致します。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
R,G,Bの値の範囲が0~255である場合、 10進数で計算するなら下記などはいかがでしょうか。 COL = R * 1000000 + G * 1000 + B ただしこれだと桁数が異常に大きくなるのと、16進数の方が色々扱いやすいので、 COL = R * 10000H + G * 100H + B の方が良いかもしれませんね。 COLから各色を抽出するにも16進数の方が便利でしょう。 ご参考に。
その他の回答 (1)
- lisyaoran
- ベストアンサー率50% (202/398)
回答No.2
前の方が仰る通り、16進数8bitで扱うのが望ましいかと思います。 例1は9D0000 例2は00009D となるため、簡単に比較することができます。
お礼
参考にさせて頂きます。 お二方、早々と返答ありがとうございました。