前回は花火を打ち上げましたが、今回はちょっとだけ実用性のあるアイコン向けの32×32の画像を作ってみます。
画風としては「インクの滲み」
ユーザーが黒で書いた線画をにじませた感じを狙っています
前回と同じように作ってください
Dim X As Integer Dim Y As Integer Sub xxx() NEXT_ZERO: R = Rnd() * 250 G = Rnd() * 250 B = Rnd() * 250 If R + G * B = 0 Then GoTo NEXT_ZERO LOOP_I = Rnd() * 7 For i = 0 To LOOP_I Y = Y + 1 If Cells(Y + 1, X).Interior.Color = 0 Or Y > 32 Then Exit For End If Cells(Y, X).Interior.Color = RGB(R, G, B) R = R * 1.2 G = G * 1.2 B = B * 1.2 Next i End Sub Sub yyy() For X = 2 To 32 For Y = 2 To 32 R = 0 G = 0 B = 0 If Cells(Y, X).Interior.Color <> 0 Then For sy = -1 To 1 For sx = -1 To 1 lColorValue = Cells(Y + sy, X + sx).Interior.Color R = R + lColorValue Mod 256 G = G + Int(lColorValue / 256) Mod 256 B = B + Int(lColorValue / 256 / 256) Next sx Next sy R = R / 9 G = G / 9 B = B / 9 End If Cells(Y, X).Interior.Color = RGB(R, G, B) Next Y Next X End Sub Sub ボタン1_Click() LOOPS = Rnd() * 5 For l = 0 To LOOPS For X = 1 To 32 For Y = 1 To 32 If Cells(Y, X).Interior.Color = RGB(0, 0, 0) Then Call xxx End If Next Y Next X Call yyy Next l End Sub '反転 Sub colRV() For X = 1 To 32 For Y = 1 To 32 lColorValue = Cells(Y, X).Interior.Color R = 255 - lColorValue Mod 256 G = 255 - Int(lColorValue / 256) Mod 256 B = 255 - Int(lColorValue / 256 / 256) Cells(Y, X).Interior.Color = RGB(R, G, B) Next Y Next X End Sub
シートのセルを正方形にして、左上(A1)から32×32の範囲に黒(R,G,B=0,0,0)で線画を書きます
ボタン1を押すとインクが滲んだような状況になります。
連続してボタンを押すと徐々に滲みが濃くなります
全体的に色が暗めになりますので、マクロの実行で「colRV」を実行すると色が反転できます。
今回もAIというほどではないですが、まあ世の中のAIの多くがこんな感じじゃないかなとw
関係者から怒られそうですが
次回はもう少しちゃんとした話ができればと思っています。
▼この記事がいいね!と思ったらブックマークお願いします