Files @ 2040107278aa
Branch filter:

Location: ATITD-Tools/Desert-Paint-Lab/PaintColor.cs - annotation

jmaltzen
Fixes #8 #9 #6 #3 : Order of ingredients should now match the paint bench. Basic brute-force recipe generation implementation. Fixed rounding error on the simulator. Give feedback when using the simulator if reactions are missing. Also: adds an interface for modifying ingredient settings for recipe generation, adds a help option to view missing recorded reactions
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
2040107278aa
2040107278aa
2040107278aa
2040107278aa
2040107278aa
2040107278aa
2040107278aa
2040107278aa
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
2040107278aa
2040107278aa
2040107278aa
2040107278aa
2040107278aa
2040107278aa
2040107278aa
2040107278aa
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
b9934660c784
using System;
namespace DesertPaintLab
{
	public class PaintColor
	{
		byte red;
		byte green;
		byte blue;

		string name;
		
		public byte Red
		{
			get
			{
				return red;	
			}
			set
			{
				red = value;	
			}
		}

		public byte Blue
		{
			get
			{
				return blue;	
			}
			set
			{
				blue = value;	
			}
		}
		
		public byte Green
		{
			get
			{
				return green;	
			}
			set
			{
				green = value;	
			}
		}
		
		public string Name
		{
			get
			{
				return name;
			}
			set
			{
				name = value;	
			}
		}
		
		public PaintColor()
		{
			name = "Undefined";
			red = 0;
			green = 0;
			blue = 0;
		}
		
		public PaintColor(string name, string hexRed, string hexGreen, string hexBlue)
		{
			this.name = name;
			red = (byte)System.Int32.Parse(hexRed,
				System.Globalization.NumberStyles.AllowHexSpecifier);
            green = (byte)System.Int32.Parse(hexGreen,
			    System.Globalization.NumberStyles.AllowHexSpecifier);
         	blue = (byte)System.Int32.Parse(hexBlue,
			    System.Globalization.NumberStyles.AllowHexSpecifier);	
		}
		
		public PaintColor(byte red, byte green, byte blue)
		{
			name = "Undefined";
			this.red = red;
			this.green = green;
			this.blue = blue;			
		}

        public PaintColor(PaintColor other)
        {
            name = other.name;
            red = other.red;
            green = other.green;
            blue = other.blue;
        }
				
		public int GetDistanceSquared(PaintColor otherColor)
		{
			return (int)(Math.Pow(this.red - otherColor.red, 2) +
				Math.Pow(this.green - otherColor.green, 2) +
				Math.Pow(this.blue - otherColor.blue, 2));
		}
		
		public void Clear()
		{
			red = 0;
			green = 0;
			blue = 0;
		}

        public void Set(PaintColor other)
        {
            this.red = other.red;
            this.green = other.green;
            this.blue = other.blue;
            this.name = other.name;
        }
		
		public override string ToString()
		{
			return "[" + name + ", " + red + ", " + green + ", " + blue + "]";
		}
		
	}
}