#include "Graphics.h"
#include <conio.h>
#include <Windows.h>
#include <iostream>
using namespace std;
void sample1(int, int);
void sample2(int, int);
void sample3(int, int);
void sample4(int, int);
void drawing();
void main(){
	
	drawing();
	_getch();
}

void drawing(){
	Graphics::fontsize(8, 8);
	Graphics::fullscreen();
	cout << "Please maximize the window and press any key to continue";
	_getch();
	system("cls");
	Graphics::clr(15);
	Graphics::square(2, 2, 89, 89);
	Graphics::clr(0);

	Graphics::square(2, 2, 3, 3);
	Graphics::square(88, 88, 3, 3);
	Graphics::square(88, 2, 3, 3);
	Graphics::square(2, 88, 3, 3);

	Graphics::clr(10);

	Graphics::fsquare(3, 35, 87, 21);
	Graphics::fsquare(35, 3, 21, 87);

	Graphics::clr(0);

	Graphics::square(4, 36, 85, 19);
	Graphics::square(36, 4, 19, 85);

	Graphics::clr(12);

	for (int i = 0; i < 6; i++)
	{
		for (int j = 0; j < 3; j++)
		{
			Graphics::square(
				(i*6) + 5, (j*6) + 37,4,4
				);
		}
	}

	Graphics::clr(11);

	for (int i = 0; i < 3; i++)
	{
		for (int j = 0; j < 6; j++)
		{
			Graphics::square(
				(i * 6) + 38, (j * 6) + 5, 4, 4
				);
		}
	}

	Graphics::clr(13);

	for (int i = 0; i < 6; i++)
	{
		for (int j = 0; j < 3; j++)
		{
			Graphics::square(
				(i * 6) + 54, (j * 6) + 38, 4, 4
				);
		}
	}
	
	Graphics::clr(10);

	for (int i = 0; i < 3; i++)
	{
		for (int j = 0; j < 6; j++)
		{
			Graphics::square(
				(i * 6) + 38, (j * 6) + 54, 4, 4
				);
		}
	}
	Graphics::setColor(255, 255, 255);

	Graphics::drawFillCircle(44, 44, 28);
	Graphics::drawFillCircle(700, 700, 28);
	Graphics::drawFillCircle(700, 45, 28);
	Graphics::drawFillCircle(45, 700, 28);

	sample1(100, 100);
	sample1(200, 200);
	sample1(200, 100);
	sample1(100, 200);

	sample2(540, 540);
	sample2(640, 640);
	sample2(640, 540);
	sample2(540, 640);

	sample3(100, 540);
	sample3(200, 640);
	sample3(200, 540);
	sample3(100, 640);

	sample4(540, 100);
	sample4(640, 200);
	sample4(640, 100);
	sample4(540, 200);
}

void sample1(int x,int y){
	Graphics::setColor(255, 0, 0);
	Graphics::drawCircle(x, y, 30);
	Graphics::setColor(255, 30, 30);
	Graphics::drawCircle(x, y, 29);
	Graphics::setColor(255, 60, 60);
	Graphics::drawCircle(x, y, 28);
	Graphics::setColor(255, 90, 90);
	Graphics::drawCircle(x, y, 27);
	Graphics::setColor(255, 120, 120);
	Graphics::drawCircle(x, y, 26);
	Graphics::setColor(255, 150, 150);
	Graphics::drawCircle(x, y, 25);
	Graphics::setColor(255, 160, 160);
	Graphics::drawCircle(x, y, 24);
	Graphics::setColor(255, 170, 170);
	Graphics::drawCircle(x, y, 23);
	Graphics::setColor(255, 180, 180);
	Graphics::drawCircle(x, y, 22);
	Graphics::setColor(255, 190, 190);
	Graphics::drawFillCircle(x, y, 18);
}

void sample2(int x, int y){
	Graphics::setColor(0, 255, 0);
	Graphics::drawCircle(x, y, 30);
	Graphics::setColor(30, 255, 30);
	Graphics::drawCircle(x, y, 29);
	Graphics::setColor(60, 255, 60);
	Graphics::drawCircle(x, y, 28);
	Graphics::setColor(90, 255, 90);
	Graphics::drawCircle(x, y, 27);
	Graphics::setColor(120, 255, 120);
	Graphics::drawCircle(x, y, 26);
	Graphics::setColor(150, 255, 150);
	Graphics::drawCircle(x, y, 25);
	Graphics::setColor(160, 255, 160);
	Graphics::drawCircle(x, y, 24);
	Graphics::setColor(170, 255, 170);
	Graphics::drawCircle(x, y, 23);
	Graphics::setColor(180, 255, 180);
	Graphics::drawCircle(x, y, 22);
	Graphics::setColor(190, 255, 190);
	Graphics::drawFillCircle(x, y, 18);
}

void sample3(int x, int y){
	Graphics::setColor(0, 0, 255);
	Graphics::drawCircle(x, y, 30);
	Graphics::setColor(30, 30, 255);
	Graphics::drawCircle(x, y, 29);
	Graphics::setColor(60, 60, 255);
	Graphics::drawCircle(x, y, 28);
	Graphics::setColor(90, 90, 255);
	Graphics::drawCircle(x, y, 27);
	Graphics::setColor(120, 120, 255);
	Graphics::drawCircle(x, y, 26);
	Graphics::setColor(150, 150, 255);
	Graphics::drawCircle(x, y, 25);
	Graphics::setColor(160, 160, 255);
	Graphics::drawCircle(x, y, 24);
	Graphics::setColor(170, 170, 255);
	Graphics::drawCircle(x, y, 23);
	Graphics::setColor(180, 180, 255);
	Graphics::drawCircle(x, y, 22);
	Graphics::setColor(190, 190, 255);
	Graphics::drawFillCircle(x, y, 18);
}

void sample4(int x, int y){
	Graphics::setColor(255, 255, 0);
	Graphics::drawCircle(x, y, 30);
	Graphics::setColor(255, 255, 30);
	Graphics::drawCircle(x, y, 29);
	Graphics::setColor(255, 255, 60);
	Graphics::drawCircle(x, y, 28);
	Graphics::setColor(255, 255, 90);
	Graphics::drawCircle(x, y, 27);
	Graphics::setColor(255, 255, 120);
	Graphics::drawCircle(x, y, 26);
	Graphics::setColor(255, 255, 150);
	Graphics::drawCircle(x, y, 25);
	Graphics::setColor(255, 255, 160);
	Graphics::drawCircle(x, y, 24);
	Graphics::setColor(255, 255, 170);
	Graphics::drawCircle(x, y, 23);
	Graphics::setColor(255, 255, 180);
	Graphics::drawCircle(x, y, 22);
	Graphics::setColor(255, 255, 190);
	Graphics::drawFillCircle(x, y, 18);
}