pixelweaver/main.go

39 lines
1.2 KiB
Go
Raw Normal View History

2022-04-24 14:24:54 +02:00
package main
import (
"flag"
"image"
2022-04-24 14:24:54 +02:00
_ "image/jpeg"
_ "image/png"
)
func main() {
// command line arguments
flag.StringVar(&ConfigRegister.Method, "blending", "darken", "Blending methods : darken, lighten, fuckyfun")
flag.StringVar(&ConfigRegister.OutputDir, "output", "./", "Output directory")
2022-05-01 09:48:37 +02:00
flag.StringVar(&ConfigRegister.InputDir, "input", "/home/gator/Photos", "Input directory. Where to look the images from")
flag.StringVar(&ConfigRegister.BaseImage, "base-img", "", "Path to the base image to work with. Random image if not set")
flag.StringVar(&ConfigRegister.Dimensions, "dimensions", "800x600", "Out image dimensions. <width>x<height>")
flag.Parse()
// set output's width and height
ConfigRegister.SetOutputDimensions()
2022-04-24 14:24:54 +02:00
// get two random images and load them
var img1 image.Image
if ConfigRegister.BaseImage != "" {
img1 = loadImage(ConfigRegister.BaseImage)
} else {
img1 = loadImage(getRandomImage())
}
2022-05-01 09:15:49 +02:00
img2 := loadImage(getRandomImage())
2022-04-24 14:24:54 +02:00
// pool of workers unionizing, ready to blend a new picture using the power of friendship
var pool blendWorkerPool
pool.InitWorkerPool()
2022-04-24 14:24:54 +02:00
// main blending routine
pool.BlendImages(img1, img2)
2022-04-24 14:24:54 +02:00
}