Loading draw/spaceinvaders/spaceinvaders.go +13 −3 Original line number Diff line number Diff line Loading @@ -2,6 +2,7 @@ package spaceinvaders import ( "image/color" "log" "math" "net/http" Loading @@ -21,13 +22,17 @@ func SpaceInvaders(w http.ResponseWriter, key string, colors []color.RGBA, size quadrantSize := size / squares middle := math.Ceil(float64(squares) / float64(2)) colorMap := make(map[int]color.RGBA) // style of space invader background canvas.Gstyle(draw.FillFromRGBA(colors[0])) for yQ := 0; yQ < squares; yQ++ { y := yQ * quadrantSize colorMap = make(map[int]color.RGBA) for xQ := 0; xQ < squares; xQ++ { x := xQ * quadrantSize fill := draw.FillFromRGBA(colors[0]) fill := "" if _, ok := colorMap[xQ]; !ok { colorMap[xQ] = selectColor(colorMap, key, colors, middle, xQ, yQ, squares) } Loading Loading @@ -65,10 +70,15 @@ func SpaceInvaders(w http.ResponseWriter, key string, colors []color.RGBA, size if hasLegOrFoot(invader, lowBodyIndex, xQ, yQ) { fill = draw.FillFromRGBA(colorMap[xQ]) } log.Println(fill) if len(fill) > 0 { canvas.Rect(x, y, quadrantSize, quadrantSize, fill) } else { canvas.Rect(x, y, quadrantSize, quadrantSize) } } } canvas.Gend() canvas.End() } Loading Loading
draw/spaceinvaders/spaceinvaders.go +13 −3 Original line number Diff line number Diff line Loading @@ -2,6 +2,7 @@ package spaceinvaders import ( "image/color" "log" "math" "net/http" Loading @@ -21,13 +22,17 @@ func SpaceInvaders(w http.ResponseWriter, key string, colors []color.RGBA, size quadrantSize := size / squares middle := math.Ceil(float64(squares) / float64(2)) colorMap := make(map[int]color.RGBA) // style of space invader background canvas.Gstyle(draw.FillFromRGBA(colors[0])) for yQ := 0; yQ < squares; yQ++ { y := yQ * quadrantSize colorMap = make(map[int]color.RGBA) for xQ := 0; xQ < squares; xQ++ { x := xQ * quadrantSize fill := draw.FillFromRGBA(colors[0]) fill := "" if _, ok := colorMap[xQ]; !ok { colorMap[xQ] = selectColor(colorMap, key, colors, middle, xQ, yQ, squares) } Loading Loading @@ -65,10 +70,15 @@ func SpaceInvaders(w http.ResponseWriter, key string, colors []color.RGBA, size if hasLegOrFoot(invader, lowBodyIndex, xQ, yQ) { fill = draw.FillFromRGBA(colorMap[xQ]) } log.Println(fill) if len(fill) > 0 { canvas.Rect(x, y, quadrantSize, quadrantSize, fill) } else { canvas.Rect(x, y, quadrantSize, quadrantSize) } } } canvas.Gend() canvas.End() } Loading