86 #include <vtkObjectFactory.h>
112 std::vector< std::string > v_lutNames;
113 v_lutNames.push_back(
"B/W");
114 v_lutNames.push_back(
"B/W Inverse");
115 v_lutNames.push_back(
"Spectrum");
116 v_lutNames.push_back(
"HotMetal");
117 v_lutNames.push_back(
"GEColor");
118 v_lutNames.push_back(
"Flow");
119 v_lutNames.push_back(
"LONI");
120 v_lutNames.push_back(
"LONI2");
121 v_lutNames.push_back(
"Asymmetry");
122 v_lutNames.push_back(
"P-Value");
123 v_lutNames.push_back(
"ROI");
124 v_lutNames.push_back(
"Random");
131 vtkLookupTable *lut = 0;
184 std::cout <<
"Unknown Lookup Table" << std::endl;
193 vtkLookupTable *bwLut = vtkLookupTable::New();
195 bwLut->SetTableRange (0, 1);
196 bwLut->SetSaturationRange (0, 0);
197 bwLut->SetHueRange (0, 0);
198 bwLut->SetValueRange (0, 1);
206 vtkLookupTable *bwLut = vtkLookupTable::New();
208 bwLut->SetTableRange (0, 1);
209 bwLut->SetSaturationRange (0, 0);
210 bwLut->SetHueRange (0, 0);
211 bwLut->SetValueRange (1, 0);
219 vtkLookupTable *lut = vtkLookupTable::New();
221 lut->SetNumberOfTableValues(256);
224 for (
int i = 0; i < 256; i++ )
226 lut->SetTableValue(i, (
double)
Spectrum[i] / 255.0, (
double)
Spectrum[256 + i] / 255.0,
227 (
double)
Spectrum[256 * 2 + i] / 255.0, 1.0);
235 vtkLookupTable *lut = vtkLookupTable::New();
237 lut->SetNumberOfTableValues(256);
240 for (
int i = 0; i < 256; i++ )
242 lut->SetTableValue(i, (
double)
HotMetal[i] / 255.0, (
double)
HotMetal[256 + i] / 255.0,
243 (
double)
HotMetal[256 * 2 + i] / 255.0, 1.0);
251 vtkLookupTable *lut = vtkLookupTable::New();
253 lut->SetNumberOfTableValues(256);
256 for (
int i = 0; i < 256; i++ )
258 lut->SetTableValue(i,
260 (
double)
GEColor[256 + i] / 255.0,
261 (
double)
GEColor[256 * 2 + i] / 255.0,
270 vtkLookupTable *lut = vtkLookupTable::New();
272 lut->SetNumberOfTableValues(256);
275 for (
int i = 0; i < 256; i++ )
277 lut->SetTableValue(i,
278 (
double)
Flow[i] / 255.0,
279 (
double)
Flow[256 + i] / 255.0,
280 (
double)
Flow[256 * 2 + i] / 255.0,
289 vtkLookupTable *lut = vtkLookupTable::New();
291 lut->SetNumberOfTableValues(203);
294 for (
int i = 0; i < 203; i++ )
296 lut->SetTableValue(i, (
double)
LONI[i][0], (
double)
LONI[i][1], (
double)
LONI[i][2], 1.0);
304 vtkLookupTable *lut = vtkLookupTable::New();
306 lut->SetNumberOfTableValues(120);
309 for (
int i = 0; i < 120; i++ )
311 lut->SetTableValue(i, (
double)
LONI2[i][0], (
double)
LONI2[i][1], (
double)
LONI2[i][2], 1.0);
319 vtkLookupTable *lut = vtkLookupTable::New();
321 lut->SetNumberOfTableValues(256);
324 for (
int i = 0; i < 256; i++ )
334 vtkLookupTable *lut = vtkLookupTable::New();
336 lut->SetTableRange (0, 1);
337 lut->SetSaturationRange (1.0, 1.5);
338 lut->SetHueRange (0.666, 0.8333);
340 lut->SetValueRange (0.5, 1.0);
348 vtkLookupTable *lut = vtkLookupTable::New();
350 lut->SetNumberOfTableValues (256);
351 lut->SetTableValue (0, 0.0, 0.0, 0.0, 0.0);
353 lut->SetTableValue (1, 1.0, 0.0, 0.0, 0.5);
354 lut->SetTableValue (2, 0.0, 1.0, 0.0, 0.5);
355 lut->SetTableValue (3, 0.0, 0.0, 1.0, 0.5);
356 lut->SetTableValue (4, 1.0, 1.0, 0.0, 0.5);
357 lut->SetTableValue (5, 0.0, 1.0, 1.0, 0.5);
358 lut->SetTableValue (6, 1.0, 0.0, 1.0, 0.5);
360 lut->SetTableValue (7, 1.0, 0.5, 0.0, 0.5);
361 lut->SetTableValue (8, 0.0, 1.0, 0.5, 0.5);
362 lut->SetTableValue (9, 0.5, 0.0, 1.0, 0.5);
363 lut->SetTableValue (10, 1.0, 1.0, 0.5, 0.5);
364 lut->SetTableValue (11, 0.5, 1.0, 1.0, 0.5);
365 lut->SetTableValue (12, 1.0, 0.5, 1.0, 0.5);
411 for (
int i = 12; i < 256; i++ )
413 if ( i % 12 == 0 ) { lut->SetTableValue (i, 1.0, 0.0, 0.0, 0.5); }
414 else if ( i % 12 == 1 )
416 lut->SetTableValue (i, 0.0, 1.0, 0.0, 0.5);
418 else if ( i % 12 == 2 )
420 lut->SetTableValue (i, 0.0, 0.0, 1.0, 0.5);
422 else if ( i % 12 == 3 )
424 lut->SetTableValue (i, 1.0, 1.0, 0.0, 0.5);
426 else if ( i % 12 == 4 )
428 lut->SetTableValue (i, 0.0, 1.0, 1.0, 0.5);
430 else if ( i % 12 == 5 )
432 lut->SetTableValue (i, 1.0, 0.0, 1.0, 0.5);
434 else if ( i % 12 == 6 )
436 lut->SetTableValue (i, 1.0, 0.5, 0.0, 0.5);
438 else if ( i % 12 == 7 )
440 lut->SetTableValue (i, 0.0, 1.0, 0.5, 0.5);
442 else if ( i % 12 == 8 )
444 lut->SetTableValue (i, 0.5, 0.0, 1.0, 0.5);
446 else if ( i % 12 == 9 )
448 lut->SetTableValue (i, 1.0, 1.0, 0.5, 0.5);
450 else if ( i % 12 == 10 )
452 lut->SetTableValue (i, 0.5, 1.0, 1.0, 0.5);
454 else if ( i % 12 == 11 )
456 lut->SetTableValue (i, 1.0, 0.5, 1.0, 0.5);
465 vtkLookupTable *lut = vtkLookupTable::New();
467 lut->SetNumberOfTableValues(30);
473 for (
int i = 0; i < 30; i++ )
478 lut->SetTableValue(i,
479 static_cast< double >( r ) / 255.,
480 static_cast< double >( g ) / 255.,
481 static_cast< double >( b ) / 255.,
491 vtkLookupTable *lut = vtkLookupTable::New();
493 lut->SetTableRange (0., 1.);
494 if ( ( iHSV[0] >= 0. ) && ( iHSV[0] <= 1. ) )
496 lut->SetHueRange (iHSV[0], iHSV[0]);
500 std::cout <<
"iHSV[0] < 0 or > 1" << std::endl;
504 if ( ( iHSV[1] >= 0. ) && ( iHSV[1] <= 1. ) )
506 lut->SetSaturationRange (iHSV[1], iHSV[1]);
510 std::cout <<
"iHSV[1] < 0 or > 1" << std::endl;
514 if ( ( iHSV[2] >= 0. ) && ( iHSV[2] <= 1. ) )
516 lut->SetValueRange (0., iHSV[2]);
520 std::cout <<
"iHSV[2] < 0 or > 1" << std::endl;
static vtkLookupTable * GetPValueLookupTable(void)
Get the PValue lookup table.
static vtkLookupTable * GetLookupTable(const int &iIndex)
Get the indexed lookup table.
static vtkLookupTable * GetFlowLookupTable(void)
Get the Spectrum lookup table.
static vtkLookupTable * GetGEColorLookupTable(void)
Get the GE Color lookup table.
vtkCxxRevisionMacro(vtkFillImageWithPolyData,"$Revision: 490 $")
static vtkLookupTable * GetRandomLookupTable()
Get the Random lookup table.
static vtkLookupTable * GetHSVBasedLookupTable(double iRGB[3])
Get one HSV based lookup table.
static vtkLookupTable * GetLONI2LookupTable(void)
Get the LONI2 lookup table.
static const int Flow[3 *256]
static vtkLookupTable * GetROILookupTable(void)
Get the ROI lookup table.
static const double LONI2[120][3]
static vtkLookupTable * GetBWLookupTable(void)
Get the BW lookup table.
Define and manage all the lookup tables available in GoFigure2.
static vtkLookupTable * GetHotMetalLookupTable(void)
Get the Hot Metal lookup table.
static const double LONI[203][3]
static const int Spectrum[256 *3]
static const int RandomColors[90]
static vtkLookupTable * GetLONILookupTable(void)
Get the LONI lookup table.
static const double AsymmetryLUT[256][3]
static const int GEColor[3 *256]
static vtkLookupTable * GetBWInverseLookupTable(void)
Get the BWInverse lookup table.
static vtkLookupTable * GetSpectrumLookupTable(void)
Get the Spectrum lookup table.
static vtkLookupTable * GetAsymmetryLookupTable(void)
Get the Asymmetry lookup table.
vtkStandardNewMacro(vtkFillImageWithPolyData)
static std::vector< std::string > GetAvailableLookupTables(void)
Get the available lookup table.