diff --git a/README.md b/README.md index 4799e6e..cbed2da 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@ # barnsley-fern-go Implementation of Barnsley Fern in Go -![Barnsley Fern](https://raw.githubusercontent.com/dmfed/barnsley-fern-go/main/barnsley_fern.png "Fern") +![Barnsley Fern](https://code.uint32.ru/dmitry/barnsley-fern-go/src/branch/main/barnsley_fern.png "Fern") From the root of the repository ```bash diff --git a/barnsley-fern.go b/barnsley-fern.go index d059afc..ff39457 100644 --- a/barnsley-fern.go +++ b/barnsley-fern.go @@ -8,7 +8,6 @@ import ( "image/png" "math/rand" "os" - "time" ) func createImage(h, v int) *image.RGBA { @@ -85,17 +84,23 @@ func main() { ) flag.Parse() - rand.Seed(time.Now().UnixNano()) - img = createImage(*h, *v) fillBackground(img, color.White) drawBarnsleyFern(img, color.RGBA{0, 153, 0, 255}, *dots) - if f, err = os.Create(filename); err != nil { + f, err = os.Create(filename) + if err != nil { fmt.Printf("не удалось создать файл %s: %v", filename, err) - } else if err = png.Encode(f, img); err != nil { - fmt.Printf("не удалось сохранить изображение: %v", err) + return } + + defer f.Close() + + if err = png.Encode(f, img); err != nil { + fmt.Printf("не удалось сохранить изображение: %v", err) + return + } + fmt.Println("done...") } diff --git a/barnsley_fern.png b/barnsley_fern.png index a4964c1..12f3979 100644 Binary files a/barnsley_fern.png and b/barnsley_fern.png differ diff --git a/go.mod b/go.mod new file mode 100644 index 0000000..69ed724 --- /dev/null +++ b/go.mod @@ -0,0 +1,3 @@ +module code.uint32.ru/dmitry/barnsley-fern-go + +go 1.24.1