From 6f6a1201d871252107735be508cfdb0d11460b0a Mon Sep 17 00:00:00 2001 From: semblanceofsense Date: Sat, 1 Feb 2025 11:08:10 -0700 Subject: [PATCH] Fix pixel size --- internal/getmaze/getmaze.go | 10 +++++++--- internal/outputmaze/outputmaze.go | 5 +++-- 2 files changed, 10 insertions(+), 5 deletions(-) diff --git a/internal/getmaze/getmaze.go b/internal/getmaze/getmaze.go index 4509093..2c36ede 100644 --- a/internal/getmaze/getmaze.go +++ b/internal/getmaze/getmaze.go @@ -56,14 +56,14 @@ func GetMaze(imagepath string) (Maze, error) { image, err := png.Decode(imagereader) if err != nil { - fmt.Println("Here") return *new(Maze), err } psize := DeterminePixelSize(image) for y := image.Bounds().Min.Y; y < image.Bounds().Max.Y; y += psize { newRow := make([]Point, 0) - for x := image.Bounds().Min.X; x < image.Bounds().Max.X; x+= psize { + for x := image.Bounds().Min.X; x < image.Bounds().Max.X; x += psize { + fmt.Print(x); fmt.Print(" "); fmt.Println(y) typ := 0 switch image.At(x, y) { case color.RGBA{ R: 255, G: 0, B: 0, A: 255 }: @@ -106,8 +106,12 @@ func PrintMaze(maze Maze) { func DeterminePixelSize(image image.Image) int { var x, y int color := image.At(x, y) - for (color == image.At(x, y)) { + for { + if color != image.At(x, y) { + break + } x++ + y++ } return x } diff --git a/internal/outputmaze/outputmaze.go b/internal/outputmaze/outputmaze.go index 53ac304..1411d42 100644 --- a/internal/outputmaze/outputmaze.go +++ b/internal/outputmaze/outputmaze.go @@ -40,8 +40,9 @@ type Changeable interface { } func updateColor(image image.Image, p getMaze.Point, color color.Color) error { - for i := p.Y * 10; i < p.Y * 10 + 10; i++ { - for ii := p.X * 10; ii < p.X * 10 + 10; ii++ { + psize := getMaze.DeterminePixelSize(image) + for i := p.Y * psize; i < p.Y * psize + psize; i++ { + for ii := p.X * psize; ii < p.X * psize + psize; ii++ { if cimg, ok := image.(Changeable); ok { cimg.Set(ii, i, color) } else {