00001 // This is core/vil/vil_color_table.h 00002 #ifndef vil_color_table_h_ 00003 #define vil_color_table_h_ 00004 //: 00005 // \file 00006 // \brief Color tables for applying false color to greyscale images. 00007 // \author brooksby@research.ge.com 00008 // \date 08 Nov 2005 00009 // \verbatim 00010 // Modifications 00011 // 8 Nov 2005 Initial port from TargetJr. 00012 // \endverbatim 00013 // 00014 // This file provides a way to load color tables directly, rather than computing them. 00015 // It was created from the predefined color tables in IDL. It provides a way of adding 00016 // pseudo-color to data for visualization purposes. 00017 // 00018 // These tables are provided courtesy of Research Systems Incorporated (RSI), 00019 // Boulder, CO and are used with permission. RSI is the developer of IDL. 00020 // 00021 // The number (ie REDx, GREENx, BLUEx) refer to the color table numbers from IDL. 00022 // The IDL descriptions are as follows. I don't claim the names make sense, but 00023 // at least they are unique and give a hint as to how they may display. 00024 // 00025 // - Nr Name 00026 // - 0 Black & White Linear 00027 // - 1 Blue/White Linear 00028 // - 2 Green-Red-Blue-White 00029 // - 3 Red Temperature 00030 // - 4 Blue-Green-Red-Yellow 00031 // - 5 Standard Gamma-II 00032 // - 6 Prism 00033 // - 7 Red-Purple 00034 // - 8 Green/White Linear 00035 // - 9 Green/White Exponential 00036 // - 10 Green-Pink 00037 // - 11 Blue-Red 00038 // - 12 16 Level 00039 // - 13 Rainbow 00040 // - 14 Steps 00041 // - 15 Stern Special 00042 // - 16 Haze 00043 // - 17 Blue-Pastel 00044 // - 18 Red-Pastel 00045 // - 19 Hue Sat Lightness 1 00046 // - 20 Hue Sat Lightness 2 00047 // - 21 Hue Sat Value 1 00048 // - 22 Hue Sat Value 2 00049 // - 23 Purple-Red + Stripes 00050 // - 24 Beach 00051 // - 25 Mac Style 00052 // - 26 Eos A 00053 // - 27 Eos B 00054 // - 28 Hardcandy 00055 // - 29 Nature 00056 // - 30 Ocean 00057 // - 31 Peppermint 00058 // - 32 Plasma 00059 // - 33 Blue-Red 2 00060 // - 34 Rainbow 2 00061 // - 35 Blue Waves 00062 // - 36 Volcano 00063 // - 37 Waves 00064 // 00065 // To understand how these color maps appear, compile and run the example 00066 // program vil_color_tables.cxx. This executable will produce a color image 00067 // for each of these tables representing a ramp from 0 to 255. 00068 00069 #include <vil/vil_rgb.h> 00070 #include <vxl_config.h> // for vxl_byte 00071 00072 enum color_theme {BWLIN1=0, BWLIN2, GRBW, REDTEMP, BGRY, GAMMA_II, PRISM, RED_PURPLE, 00073 GWLIN, GWEXP, GREENPINK, BLUERED, SIXTEENLEVEL, RAINBOW1, STEPS, STERN, 00074 HAZE, BLUE_PASTEL, RED_PASTEL, HSL1, HSL2, HSV1, HSV2, PURPLE_RED_STRIPES, 00075 BEACH, MAC, EOS_A, EOS_B, HARD_CANDY, NATURE, OCEAN, PEPPERMINT, PLASMA, 00076 BLUERED2, RAINBOW2, BLUE_WAVES, VOLCANO1, WAVES1}; 00077 00078 vil_rgb<vxl_byte> color_value(int theme, int color_index); 00079 00080 #endif