Files @ 334157513064
Branch filter:

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

Jason Maltzen
Change IsRed / IsGreen / IsBlue tests to be a little more tolerant of brighter pixels - was not detecting green clipped high correctly with the new brighter background texture.
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
cca1f914411a
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
63ce80f17b8c
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 + "]";
		}
		
	}
}