using System.Collections.Generic;
static int imageWidth = 1000;
static int imageHeight = 1000;
static int minPlanetSize = 10;
static int maxPlanetSize = 100;
static int planetPadding = 100;
static int amountOfPlanets = 100;
static int padding = 100;
static List<(int x, int y, int size)> planets = new List<(int,int,int)>();
public static void Main()
MagickImage mooiFototje = new MagickImage(MagickColor.FromRgb(0,0,0), imageWidth, imageHeight);
ChangeRandomPixelsToWhite(mooiFototje);
WriteImageToConsole(mooiFototje);
private static void CreateThePlanets()
Random rng = new Random();
for (int i = 0; i < amountOfPlanets; i++)
for (int j = 0; j < 10000; j++)
x = rng.Next(padding, imageWidth-padding);
y = rng.Next(padding, imageWidth-padding);
size = rng.Next(minPlanetSize, maxPlanetSize+1);
foreach(var planet in planets)
var deltaX = Math.Abs(planet.x - x);
var deltaY = Math.Abs(planet.y - y);
var distance = Math.Sqrt(deltaX * deltaX + deltaY * deltaY);
if (distance < size + planet.size + planetPadding)
private static void DrawPlanet(MagickImage image, int x, int y, int size)
Random rng = new Random();
for (int i = 0 ; i < 10; i++)
new DrawableFillColor(MagickColor.FromRgb((byte)rng.Next(0,256),(byte)rng.Next(0,256),(byte)rng.Next(0,256))),
new DrawableCircle(x, y, x + size, y + size));
private static void ChangeRandomPixelsToWhite(MagickImage image)
Random rng = new Random();
var pixels = image.GetPixels();
for (int i = 0; i < 10000; i++)
int x = rng.Next(0, imageWidth);
int y = rng.Next(0, imageHeight);
pixels.SetPixel(x, y, new byte[] {255, 255, 255});
private static void WriteImageToConsole(MagickImage image)
string tempImageName = "temp.jpg";
image.Write(tempImageName);
var str = System.Convert.ToBase64String(File.ReadAllBytes(tempImageName));