diff options
Diffstat (limited to 'image.go')
| -rw-r--r-- | image.go | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/image.go b/image.go new file mode 100644 index 0000000..fe9b67f --- /dev/null +++ b/image.go @@ -0,0 +1,26 @@ +package main + +import ( + "fmt" + "os" +) + +type Pixel struct { + r, g, b int +} + +type Frame [HEIGHT][WIDTH]Pixel + +func (frame Frame) Save(filename string) { + f, err := os.Create(filename) + if err != nil { + panic(nil) + } + defer f.Close() + f.WriteString(fmt.Sprintf("P3\n%d %d\n255\n", WIDTH, HEIGHT)) + for _, row := range frame { + for _, pixel := range row { + f.WriteString(fmt.Sprintf("%d %d %d ", pixel.r, pixel.g, pixel.b)) + } + } +} |
