aboutsummaryrefslogtreecommitdiff
path: root/Sources/Patterns/TileDesign.swift
diff options
context:
space:
mode:
authorRuben Beltran del Rio <ruben@unlimited.pizza>2023-04-26 16:25:43 +0200
committerRuben Beltran del Rio <ruben@unlimited.pizza>2023-04-26 16:25:43 +0200
commit8b0b5b394e5eca8538956fecbaa70ca66fdde24b (patch)
treed627bb4c4870f43dbc926df5d65dcc84cd2c53de /Sources/Patterns/TileDesign.swift
parent08da0038960b2b37c88e793c9b8dbe33e7884af5 (diff)
Add the files
Diffstat (limited to 'Sources/Patterns/TileDesign.swift')
-rw-r--r--Sources/Patterns/TileDesign.swift163
1 files changed, 163 insertions, 0 deletions
diff --git a/Sources/Patterns/TileDesign.swift b/Sources/Patterns/TileDesign.swift
new file mode 100644
index 0000000..5541102
--- /dev/null
+++ b/Sources/Patterns/TileDesign.swift
@@ -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
+ ]
+ }
+ }
+}