Example #1
0
void Colour::approach(Colour c) {
	if (abs(c.red - red) <= 2 && abs(c.green - green) <= 2 && abs(c.blue - blue) <= 2) {
		red = c.red;
		green = c.green;
		blue = c.blue;

		return;
	}

	if (c.brightness() > brightness()) {
		red = (c.red + red * 2) / 3;
		green = (c.green + green * 2) / 3;
		blue = (c.blue + blue * 2) / 3;
	} else {
		red = (c.red + red * 2) / 3;
		green = (c.green + green * 2) / 3;
		blue = (c.blue + blue * 2) / 3;
	}
}