私は正常に動作している C# で Mandlebrot Fractal を設計しています...質問は、カラー サイクリングと呼ばれるものを実際にすべての RGB カラーを循環させたいということです...ビットマップをしたがって、各ピクセルを通過しますか???? どうすればこれを達成できますか?? これに何時間も取り組んでいますが、本当にわかりません。
ありがとう
@Pyritie に同意し、RGB ではなく HSV を使用します。例については、この質問を参照してください。
次に、次のコードを試して、ビットマップのパレット カラーを設定します。
var bitmap = new Bitmap(width, height, width, PixelFormat.Format8bppIndexed);
ColorPalette palette = bitmap.Palette;
palette.Entries[0] = Color.Black;
for (int i = 1; i < 256; i++)
{
// set to whatever colour here...
palette.Entries[i] = Color.FromArgb((i * 7) % 256, (i * 7) % 256, 255);
}
bitmap.Palette = palette;
元のクレジットは Jon Skeet のもので、彼の TPL デモからのものだと思います。
RGB の代わりにHSVを使用すると、3 つの値を管理しようとする代わりに 1 つの値をインクリメント (およびモジュロ) するだけなので、おそらく色の循環がはるかに簡単になります。