]> git.r.bdr.sh - rbdr/patterns/blobdiff - Sources/Patterns/TileDesign.swift
Add the files
[rbdr/patterns] / Sources / Patterns / TileDesign.swift
diff --git a/Sources/Patterns/TileDesign.swift b/Sources/Patterns/TileDesign.swift
new file mode 100644 (file)
index 0000000..5541102
--- /dev/null
@@ -0,0 +1,163 @@
+public enum TileDesign: CaseIterable {
+  case grid
+  case dottedGrid
+  case stitch
+  case curvedTile
+  case brick
+  case tile
+  case shadowGrid
+  case circles
+  case trees
+  case shingles
+  case wicker
+  case rhombus
+  case balls
+  
+  func pixels() -> [Int] {
+    switch self {
+    case .grid:
+      return [
+        1, 0, 1, 0, 1, 0, 1, 0,
+        0, 1, 0, 1, 0, 1, 0, 1,
+        1, 0, 1, 0, 1, 0, 1, 0,
+        0, 1, 0, 1, 0, 1, 0, 1,
+        1, 0, 1, 0, 1, 0, 1, 0,
+        0, 1, 0, 1, 0, 1, 0, 1,
+        1, 0, 1, 0, 1, 0, 1, 0,
+        0, 1, 0, 1, 0, 1, 0, 1
+      ]
+    case .dottedGrid:
+      return [
+        1, 1, 1, 1, 0, 1, 1, 1,
+        1, 1, 1, 1, 1, 1, 1, 1,
+        0, 1, 0, 1, 0, 1, 0, 1,
+        1, 1, 1, 1, 1, 1, 1, 1,
+        1, 1, 1, 1, 0, 1, 1, 1,
+        1, 1, 1, 1, 1, 1, 1, 1,
+        0, 1, 1, 1, 0, 1, 1, 1,
+        1, 1, 1, 1, 1, 1, 1, 1,
+     ]
+    case .stitch:
+      return [
+        1, 1, 1, 1, 1, 1, 1, 1,
+        1, 1, 1, 1, 1, 1, 1, 1,
+        1, 0, 1, 1, 1, 1, 1, 1,
+        0, 1, 0, 1, 1, 1, 1, 1,
+        1, 1, 1, 1, 1, 1, 1, 1,
+        1, 1, 1, 1, 1, 1, 1, 1,
+        1, 1, 1, 1, 1, 0, 1, 1,
+        1, 1, 1, 1, 0, 1, 0, 1,
+     ]
+    case .curvedTile:
+      return [
+        1, 1, 1, 1, 1, 1, 1, 0,
+        1, 1, 1, 1, 1, 1, 0, 0,
+        0, 1, 1, 1, 1, 0, 1, 1,
+        1, 0, 1, 1, 0, 1, 1, 1,
+        1, 1, 0, 0, 1, 1, 1, 1,
+        1, 1, 1, 1, 0, 0, 1, 1,
+        1, 1, 1, 1, 1, 1, 0, 1,
+        1, 1, 1, 1, 1, 1, 1, 0,
+     ]
+    case .brick:
+      return [
+        0, 1, 1, 1, 1, 1, 1, 1,
+        0, 0, 0, 0, 0, 0, 0, 0,
+        1, 1, 1, 1, 0, 1, 1, 1,
+        1, 1, 1, 1, 0, 1, 1, 1,
+        1, 1, 1, 1, 0, 1, 1, 1,
+        0, 0, 0, 0, 0, 0, 0, 0,
+        0, 1, 1, 1, 1, 1, 1, 1,
+        0, 1, 1, 1, 1, 1, 1, 1,
+     ]
+    case .tile:
+      return [
+        1, 1, 1, 1, 1, 0, 1, 1,
+        1, 1, 1, 1, 0, 1, 1, 1,
+        1, 1, 1, 0, 0, 0, 1, 1,
+        1, 1, 0, 1, 1, 1, 0, 1,
+        0, 0, 1, 1, 1, 1, 1, 0,
+        0, 1, 1, 1, 1, 1, 1, 1,
+        1, 1, 1, 1, 1, 1, 1, 0,
+        1, 1, 1, 1, 1, 1, 0, 1,
+     ]
+    case .shadowGrid:
+      return [
+        1, 1, 1, 1, 0, 1, 0, 0,
+        0, 0, 0, 0, 0, 1, 0, 0,
+        1, 1, 1, 1, 1, 1, 1, 1,
+        0, 0, 0, 0, 0, 1, 0, 0,
+        0, 0, 0, 0, 0, 1, 0, 0,
+        1, 1, 1, 1, 0, 1, 0, 0,
+        1, 1, 1, 1, 0, 1, 0, 0,
+        1, 1, 1, 1, 0, 1, 0, 0,
+     ]
+    case .circles:
+      return [
+        1, 1, 1, 1, 1, 1, 1, 0,
+        0, 1, 1, 1, 1, 1, 0, 1,
+        1, 0, 1, 1, 1, 0, 1, 1,
+        1, 1, 0, 0, 0, 1, 1, 0,
+        1, 0, 1, 1, 1, 0, 1, 1,
+        0, 1, 1, 1, 1, 1, 0, 1,
+        1, 1, 1, 1, 1, 1, 1, 0,
+        1, 1, 1, 1, 1, 1, 1, 0,
+     ]
+    case .trees:
+      return [
+        1, 0, 1, 0, 1, 0, 1, 0,
+        0, 1, 1, 1, 1, 1, 0, 1,
+        1, 1, 1, 1, 1, 1, 1, 0,
+        1, 1, 1, 1, 1, 1, 1, 0,
+        1, 0, 1, 0, 1, 0, 1, 0,
+        1, 1, 0, 1, 0, 1, 1, 1,
+        1, 1, 1, 0, 1, 1, 1, 1,
+        1, 1, 1, 0, 1, 1, 1, 1,
+     ]
+    case .shingles:
+      return [
+        1, 1, 1, 1, 0, 1, 1, 1,
+        1, 1, 1, 1, 0, 1, 1, 1,
+        1, 1, 1, 0, 1, 0, 1, 1,
+        0, 0, 0, 1, 1, 1, 0, 0,
+        0, 1, 1, 1, 1, 1, 1, 1,
+        0, 1, 1, 1, 1, 1, 1, 1,
+        1, 0, 1, 1, 1, 1, 1, 0,
+        1, 1, 0, 0, 0, 0, 0, 1
+     ]
+    case .wicker:
+      return [
+        0, 0, 0, 0, 0, 1, 1, 1,
+        1, 0, 0, 0, 1, 0, 1, 1,
+        1, 1, 0, 1, 1, 1, 0, 1,
+        1, 0, 1, 1, 1, 0, 0, 0,
+        0, 1, 1, 1, 0, 0, 0, 0,
+        1, 1, 1, 0, 1, 0, 0, 0,
+        1, 1, 0, 1, 1, 1, 0, 1,
+        1, 0, 0, 0, 1, 1, 1, 0
+     ]
+    case .rhombus:
+      return [
+        1, 1, 1, 1, 1, 1, 1, 1,
+        0, 1, 1, 1, 1, 1, 1, 1,
+        1, 0, 1, 1, 1, 1, 1, 0,
+        0, 1, 0, 1, 1, 1, 0, 1,
+        1, 0, 1, 0, 1, 0, 1, 0,
+        0, 1, 0, 1, 1, 1, 0, 1,
+        1, 0, 1, 1, 1, 1, 1, 0,
+        0, 1, 1, 1, 1, 1, 1, 1
+     ]
+    case .balls:
+      return [
+        1, 0, 0, 0, 1, 0, 0, 0,
+        0, 1, 1, 1, 0, 1, 1, 0,
+        0, 1, 1, 1, 0, 0, 0, 0,
+        0, 1, 1, 1, 0, 0, 0, 0,
+        1, 0, 0, 0, 1, 0, 0, 0,
+        0, 1, 1, 0, 0, 1, 1, 1,
+        0, 0, 0, 0, 0, 1, 1, 1,
+        0, 0, 0, 0, 0, 1, 1, 1
+     ]
+    }
+  }
+}