diff --git a/src/Image.elm b/src/Image.elm index 40ae811..1ddd564 100644 --- a/src/Image.elm +++ b/src/Image.elm @@ -1,4 +1,4 @@ -module Image exposing (Image, bars, recurse, view, viewColor, waves) +module Image exposing (Image, bars, nyan, recurse, view, viewColor, waves) import Array exposing (Array) import Color.Transparent as Color exposing (Color) @@ -129,3 +129,53 @@ waves = Err problem -> Debug.todo (Debug.toString problem) + + +nyan : Image +nyan = + let + -- Transparent + t = + Color.fromRGBA { red = 255, green = 255, blue = 255, alpha = Color.transparent } + + -- White + w = + Color.fromRGBA { red = 255, green = 255, blue = 255, alpha = Color.opaque } + + -- Pink + p = + Color.fromRGBA { red = 255, green = 128, blue = 128, alpha = Color.opaque } + + -- Grey + g = + Color.fromRGBA { red = 128, green = 128, blue = 128, alpha = Color.opaque } + + -- Key (black) + k = + Color.fromRGBA { red = 43, green = 45, blue = 45, alpha = Color.opaque } + in + case + Grid.fromRowsAndColumns + [ List.repeat 18 t + , [ t, t, k, k, t, t, t, t, t, t, t, t, t, k, k, t, t, t ] + , [ t, t, k, g, k, t, t, t, t, t, t, t, k, g, g, k, t, t ] + , [ t, t, k, g, g, k, t, t, t, t, t, k, g, g, g, k, t, t ] + , [ t, t, k, g, g, g, k, k, k, k, k, g, g, g, g, k, t, t ] + , [ t, k, g, g, g, g, g, g, g, g, g, g, g, g, g, k, t, t ] + , [ t, k, g, g, g, g, g, g, g, g, g, g, g, g, g, k, t, t ] + , [ t, k, g, g, g, g, g, g, g, g, g, g, g, g, g, g, k, t ] + , [ t, k, g, g, g, w, k, g, g, g, g, g, w, k, g, g, k, t ] + , [ t, k, g, g, g, k, k, g, g, g, k, g, k, k, g, g, k, t ] + , [ t, k, g, p, p, g, g, g, g, g, g, g, g, g, p, p, k, t ] + , [ t, k, g, p, p, g, k, g, g, k, g, g, k, g, p, p, k, t ] + , [ t, t, k, g, g, g, k, k, k, k, k, k, k, g, g, k, t, t ] + , [ t, t, t, k, g, g, g, g, g, g, g, g, g, g, k, t, t, t ] + , [ t, t, t, t, k, k, k, k, k, k, k, k, k, k, t, t, t, t ] + , List.repeat 18 t + ] + of + Ok grid -> + grid + + Err problem -> + Debug.todo (Debug.toString problem) diff --git a/src/Main.elm b/src/Main.elm index 41a3df3..06eacad 100644 --- a/src/Main.elm +++ b/src/Main.elm @@ -196,7 +196,11 @@ view model = , Reset.borderBoxV201408 , h1 [ Html.text "Wave Function Collapse" ] , h2 [ Html.text "Source Image" ] - , [ ( "Waves", Image.waves ), ( "Bars", Image.bars ), ( "Recurse", Image.recurse ) ] + , [ ( "Waves", Image.waves ) + , ( "Bars", Image.bars ) + , ( "Recurse", Image.recurse ) + , ( "Nyan Cat", Image.nyan ) + ] |> List.map (\( name, image ) -> [ { width = 1, height = 1 }