全て、
配列のインデックスに基づいて一意の色を生成するための優れたアルゴリズムはありますか?
もちろん、これはUIで使用され、多数の動的ボタンの背景色を設定します。
現在、.Net(および私の頭の上にあるJava)では、次のメソッドがサポートされています。
Color.FromArgb
Color.FromName
FromArgbは、argbカラーを含む32ビット整数を取ることができます。
ただし、アルゴリズムによるアプローチでは、配列内のアイテムの数によっては、一部の色の順序が類似しすぎる可能性があります。また、前景色が背景に似ている場合もあります。
私が考えることができる唯一の方法は、事前定義された色のセットを含むある種の色配列を作成することです。もちろん、これは手動のコード作業ですが、この方法で、狭い範囲で異なる色のセットを取得できます。最後に向かってシーケンスを繰り返す前に、互いに視覚的に異なるようにします。
もう1つの方法は、次を使用して色の配列を生成することです。
Enum.GetValues(typeof(KnownColor)
助言がありますか?
乾杯