comparison layer/ColourScale.cpp @ 1362:d79e21855aef

Add mechanism for saving/loading colour maps by name/id rather than by numerical index, for future compatibility when adding to or changing the supported colour maps. Add two new colour maps (and one old one). Write out backward-compatible numerical indices for use when reloading in older versions. Also add a mechanism to invert the colour map, though I don't think it turns out useful enough to include in the UI.
author Chris Cannam
date Thu, 18 Oct 2018 13:21:56 +0100
parents a34a2a25907c
children
comparison
equal deleted inserted replaced
1361:2e3b3fadba27 1362:d79e21855aef
25 25
26 int ColourScale::m_maxPixel = 255; 26 int ColourScale::m_maxPixel = 255;
27 27
28 ColourScale::ColourScale(Parameters parameters) : 28 ColourScale::ColourScale(Parameters parameters) :
29 m_params(parameters), 29 m_params(parameters),
30 m_mapper(m_params.colourMap, 1.f, double(m_maxPixel)) 30 m_mapper(m_params.colourMap, m_params.inverted, 1.f, double(m_maxPixel))
31 { 31 {
32 if (m_params.minValue >= m_params.maxValue) { 32 if (m_params.minValue >= m_params.maxValue) {
33 SVCERR << "ERROR: ColourScale::ColourScale: minValue = " 33 SVCERR << "ERROR: ColourScale::ColourScale: minValue = "
34 << m_params.minValue << ", maxValue = " << m_params.maxValue << endl; 34 << m_params.minValue << ", maxValue = " << m_params.maxValue << endl;
35 throw std::logic_error("maxValue must be greater than minValue"); 35 throw std::logic_error("maxValue must be greater than minValue");