15 using namespace visualization;
17 class GlobalColorMapSingleton {
19 GlobalColorMapSingleton() :
color_map_(new ColorMapJet) {
22 GlobalColorMapSingleton(
const GlobalColorMapSingleton &) =
delete;
23 GlobalColorMapSingleton &operator=(
const GlobalColorMapSingleton &) =
27 ~GlobalColorMapSingleton() {
33 static GlobalColorMapSingleton singleton;
43 namespace visualization {
45 return Eigen::Vector3d(value, value, value);
49 return Eigen::Vector3d(
JetBase(value * 2.0 - 1.5),
55 return Eigen::Vector3d(
Interpolate(value, 0.0, 0.0, 1.0, 1.0),
60 return Eigen::Vector3d(0.0,
Interpolate(value, 0.0, 0.0, 1.0, 1.0),
65 Eigen::Vector3d edges[4] = {
66 Eigen::Vector3d(1.0, 1.0, 1.0),
67 Eigen::Vector3d(1.0, 1.0, 0.0),
68 Eigen::Vector3d(1.0, 0.0, 0.0),
69 Eigen::Vector3d(0.0, 0.0, 0.0),
73 }
else if (value < 1.0 / 3.0) {
74 return Interpolate(value, edges[0], 0.0, edges[1], 1.0 / 3.0);
75 }
else if (value < 2.0 / 3.0) {
76 return Interpolate(value, edges[1], 1.0 / 3.0, edges[2], 2.0 / 3.0);
77 }
else if (value < 1.0) {
78 return Interpolate(value, edges[2], 2.0 / 3.0, edges[3], 1.0);
std::shared_ptr< const ColorMap > color_map_
Eigen::Vector3d GetColor(double value) const final
Function to get a color from a value in [0..1].
Eigen::Vector3d GetColor(double value) const final
Function to get a color from a value in [0..1].
See Matlab's Jet colormap.
double JetBase(double value) const
Eigen::Vector3d GetColor(double value) const final
Function to get a color from a value in [0..1].
See Matlab's Summer colormap.
Eigen::Vector3d GetColor(double value) const final
Function to get a color from a value in [0..1].
See Matlab's Winter colormap.
Eigen::Vector3d GetColor(double value) const final
Function to get a color from a value in [0..1].
double Interpolate(double value, double y0, double x0, double y1, double x1) const
ccGuiPythonInstance * GetInstance() noexcept
const std::shared_ptr< const ColorMap > GetGlobalColorMap()
Interface functions.
void SetGlobalColorMap(ColorMap::ColorMapOption option)
Generic file read and write utility for python interface.