00001 00012 #include "BinToHardCandy.h" 00013 00014 using namespace hippodraw; 00015 00016 int BinToHardCandy::reds[256] = 00017 { 4, 4, 5, 7, 9, 11, 12, 14, 15, 16, 17, 17, 18, 18, 18, 17, 00018 16, 15, 14, 13, 11, 13, 8, 5, 3, 1, 0, 3, 5, 7, 13, 12, 13, 15, 17, 18, 00019 19, 19, 19, 19, 19, 18, 16, 14, 12, 9, 5, 2, 2, 6, 11, 17, 23, 29, 36, 00020 42, 49, 56, 64, 71, 78, 85, 93, 100, 106, 113, 119, 125, 130, 135, 139, 00021 143, 146, 149, 150, 151, 152, 151, 150, 148, 145, 142, 138, 133, 127, 00022 121, 114, 107, 99, 90, 82, 73, 63, 54, 44, 35, 25, 16, 6, 1, 13, 18, 25, 00023 32, 38, 44, 48, 52, 55, 56, 57, 57, 56, 53, 50, 45, 39, 33, 25, 16, 6, 00024 3, 15, 27, 40, 53, 67, 81, 96, 111, 126, 141, 156, 170, 185, 199, 212, 00025 225, 237, 248, 252, 242, 234, 227, 222, 217, 214, 212, 212, 213, 216, 00026 220, 225, 232, 240, 249, 251, 239, 226, 213, 198, 183, 167, 150, 133, 00027 116, 98, 81, 64, 47, 30, 14, 1, 15, 29, 42, 54, 64, 73, 81, 87, 91, 94, 00028 95, 95, 92, 88, 82, 75, 66, 55, 42, 28, 13, 3, 21, 40, 60, 81, 103, 125, 00029 147, 170, 193, 216, 239, 249, 228, 207, 187, 168, 151, 134, 119, 106, 00030 95, 85, 77, 71, 67, 65, 66, 68, 72, 79, 87, 98, 110, 124, 140, 158, 177, 00031 197, 219, 241, 245, 221, 196, 171, 145, 120, 95, 70, 46, 23, 1, 19, 39, 00032 57, 74, 89, 102, 112, 121, 127, 127}; 00033 int BinToHardCandy::greens[256] = 00034 { 51, 51, 58, 65, 72, 79, 85, 92, 99, 105, 111, 117, 124, 00035 129, 135, 141, 146, 152, 157, 162, 167, 171, 176, 180, 184, 188, 191, 00036 195, 198, 201, 203, 206, 208, 210, 212, 213, 214, 215, 216, 216, 216, 00037 216, 216, 215, 215, 213, 212, 210, 209, 206, 204, 201, 199, 195, 192, 00038 189, 185, 181, 177, 172, 168, 163, 158, 153, 148, 142, 137, 131, 125, 00039 119, 113, 106, 100, 93, 87, 80, 73, 67, 60, 53, 46, 39, 32, 25, 18, 11, 00040 4, 2, 9, 16, 22, 29, 36, 42, 49, 55, 61, 68, 74, 79, 85, 91, 96, 101, 00041 106, 111, 116, 120, 125, 129, 133, 136, 140, 143, 146, 149, 151, 153, 00042 155, 157, 159, 160, 161, 162, 162, 162, 162, 162, 162, 161, 160, 159, 00043 157, 155, 153, 151, 148, 146, 143, 139, 136, 132, 128, 124, 120, 115, 00044 111, 106, 101, 95, 90, 84, 79, 73, 67, 61, 54, 48, 42, 35, 28, 22, 15, 00045 8, 1, 5, 12, 19, 26, 33, 40, 47, 54, 61, 67, 74, 81, 88, 94, 101, 107, 00046 113, 120, 126, 131, 137, 143, 148, 154, 159, 164, 168, 173, 177, 181, 00047 185, 189, 193, 196, 199, 202, 204, 207, 209, 211, 212, 214, 215, 216, 00048 216, 216, 216, 216, 216, 215, 214, 213, 212, 210, 208, 206, 203, 201, 00049 198, 194, 191, 187, 184, 180, 175, 171, 166, 161, 156, 151, 146, 140, 00050 135, 129, 123, 117, 111, 104, 98, 91, 85, 78, 71, 64, 57, 50, 44, 37, 00051 30, 23, 23}; 00052 int BinToHardCandy::blues[256]= 00053 { 116, 116, 105, 94, 84, 74, 64, 55, 46, 38, 30, 24, 18, 12, 00054 8, 5, 2, 0, 0, 0, 1, 3, 6, 13, 14, 20, 26, 33, 41, 50, 59, 68, 78, 88, 00055 99, 109, 120, 131, 142, 153, 163, 174, 184, 193, 202, 211, 218, 226, 00056 232, 238, 243, 247, 250, 252, 253, 253, 253, 251, 249, 246, 241, 236, 00057 230, 224, 216, 208, 200, 190, 181, 171, 160, 150, 139, 128, 117, 106, 00058 96, 85, 75, 65, 56, 47, 39, 31, 24, 18, 13, 9, 5, 2, 0, 0, 0, 1, 3, 5, 00059 9, 14, 19, 25, 32, 40, 48, 57, 67, 76, 87, 97, 108, 119, 130, 140, 151, 00060 162, 172, 182, 192, 201, 209, 217, 225, 231, 237, 242, 246, 249, 252, 00061 253, 254, 253, 252, 249, 246, 242, 237, 231, 225, 217, 209, 201, 192, 00062 182, 172, 162, 151, 140, 130, 119, 108, 97, 87, 76, 67, 57, 48, 40, 32, 00063 25, 19, 14, 9, 5, 3, 1, 0, 0, 0, 2, 5, 9, 13, 18, 24, 31, 39, 47, 56, 00064 65, 75, 85, 96, 106, 117, 128, 139, 150, 160, 171, 181, 190, 200, 208, 00065 216, 224, 230, 236, 241, 246, 249, 251, 253, 253, 253, 252, 250, 247, 00066 243, 238, 232, 226, 218, 211, 202, 193, 184, 174, 163, 153, 142, 131, 00067 120, 109, 99, 88, 78, 68, 59, 50, 41, 33, 26, 20, 14, 13, 6, 3, 1, 0, 0, 00068 0, 2, 5, 8, 12, 18, 24, 30, 38, 46, 55, 64, 74, 84, 94, 105, 105}; 00069 BinToHardCandy:: 00070 BinToHardCandy ( const char * name ) 00071 : BinToColorMap ( name ) 00072 { 00073 m_reds.resize ( 256); 00074 m_greens.resize ( 256 ); 00075 m_blues.resize ( 256 ); 00076 00077 for ( int i = 0; i < 256; i++ ) { 00078 m_reds [i] = reds[i]; 00079 m_greens[i] = greens[i]; 00080 m_blues [i] = blues[i]; 00081 } 00082 } 00083 00084 BinToHardCandy::BinToHardCandy ( const BinToHardCandy & bin_to_color ) 00085 : BinToColorMap ( bin_to_color ) 00086 { 00087 } 00088 00089 BinToColor * BinToHardCandy::clone () const 00090 { 00091 return new BinToHardCandy ( *this ); 00092 } 00093