Files
barnsley-fern-go/main.go

43 lines
752 B
Go
Raw Normal View History

2025-03-25 23:55:13 +03:00
package main
import (
"fmt"
2025-03-26 00:51:46 +03:00
"io"
2025-03-25 23:55:13 +03:00
"os"
)
func main() {
2025-03-26 00:51:46 +03:00
s := parseSettings()
2025-03-25 23:55:13 +03:00
2025-03-26 00:51:46 +03:00
var processor func(*settings, io.Writer) error
switch s.OM {
case outputpng:
processor = createBarnsleyFernPng
case outputvideo:
processor = createBarnsLeyFernVideo
default:
fmt.Println("неизвестный тип вывода:", s.OM)
return
}
file, err := os.Create(s.Fname)
2025-03-25 23:55:13 +03:00
if err != nil {
fmt.Println("ошибка открытия файла", err)
return
}
defer func() {
if err := file.Close(); err != nil {
fmt.Println("ошибка закрытия файла", err)
}
}()
2025-03-26 00:51:46 +03:00
if err := processor(s, file); err != nil {
fmt.Println("ошибка создания объекта:", err)
2025-03-25 23:55:13 +03:00
return
}
fmt.Println("done...")
}