Blob Blame Raw

#include <math.h>

#include <helianthus.h>

#include "drawing.h"


static Animation texture;


void drawingInit() {
	background(colorByName("yellow"));
	texture = createAnimationEx("data/sprite/bricks-tile.png", TRUE, TRUE);
}


void drawingDraw() {
	saveState();

	double x = 512;
	double y = 512 - 64;
	
	strokeWidth(20);
	
	fill(colorByName("red"));
	stroke(colorByName("blue"));
	rect(x, y, 48*2, 48);
	x += 48*2 + 16;
	
	fill(colorByName("#C71585AA"));
	stroke(colorByName("0 0 1 0.5"));
	ellipse(x, y, 48*2, 48);
	x += 48*2 + 16;
	
	fill(colorByName("green"));
	stroke(colorByName("magenta"));
	regularPolygon(x + 24, y + 24, 6, 48);
	x += 64;
	
	stroke(colorByName("brown"));
	point(x, y);
	stroke(colorByName("cyan"));
	line(x, y + 48, x + 48, y);
	stroke(colorByName("brown"));
	arc(x, y, 48, 48, 0, 90);
	x += 64;
	
	stroke(colorByName("gray"));
	moveTo(x, y + 24);
	arcPath(x, y, 48, 48, 180, 360);
	lineTo(x + 48, y + 48);
	lineTo(x, y + 48);
	strokePath();
	x += 64;
	
	fill(colorByName("red"));
	fillTexture(texture, 0, 0, 32, 32, FALSE);
	stroke(colorByName("transparent"));
	moveTo(x, y + 24);
	arcPath(x, y, 48, 48, 180, 360);
	lineTo(x + 48, y + 48);
	lineTo(x, y + 48);
	lineTo(x + 24, y + 24);
	closePath();

	restoreState();
}