diff options
Diffstat (limited to 'Sources/Patterns/Tile.swift')
| -rw-r--r-- | Sources/Patterns/Tile.swift | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/Sources/Patterns/Tile.swift b/Sources/Patterns/Tile.swift new file mode 100644 index 0000000..c27fcf9 --- /dev/null +++ b/Sources/Patterns/Tile.swift @@ -0,0 +1,35 @@ +import SwiftUI + +struct Tile: View { + + let pixelSize: CGFloat = 2.0; + + let design: TileDesign + + private var pixels: [Int] { + design.pixels() + } + + var body: some View { + VStack(spacing: 0) { + ForEach(0 ..< 8) { i in + HStack(spacing: 0) { + ForEach(0 ..< 8) { j in + Rectangle() + .frame(width: pixelSize, height: pixelSize) + .foregroundColor(pixels[(i % 8) * 8 + j % 8] == 0 + ? .black + : .white + ) + } + } + } + } + } +} + +struct Tile_Previews: PreviewProvider { + static var previews: some View { + Tile(design: .grid) + } +} |