ScalarMapperFilledContoursUniform.h
1 //##################################################################################################
2 //
3 // Ceetron Desktop Components
4 // Component: Visualization
5 //
6 // --------------------------------------------------------------------------------------------
7 // Copyright (C) 2014, Ceetron AS
8 // This is UNPUBLISHED PROPRIETARY SOURCE CODE of Ceetron AS. The contents of this file may
9 // not be disclosed to third parties, copied or duplicated in any form, in whole or in part,
10 // without the prior written permission of Ceetron AS.
11 //##################################################################################################
12 
13 #pragma once
14 
15 #include "CeeVisualization/Base.h"
16 #include "CeeVisualization/ScalarMapperContinuousDomain.h"
17 #include "CeeVisualization/ColorTableFactory.h"
18 
19 #include <vector>
20 
21 namespace cee {
22 namespace vis {
23 
24 //==================================================================================================
25 //
26 //
27 //
28 //==================================================================================================
30 {
31 public:
34 
35  double rangeMinimum() const;
36  double rangeMaximum() const;
37  void setRange(double min, double max);
38 
39  void setColors(const std::vector<Color3f>& colorArray);
40  void setColors(ColorTableFactory::ColorTable colorTable, unsigned int levelCount);
41 
42  virtual Vec2f mapToTextureCoordinate(double scalarValue) const;
43  virtual Color3f mapToColor(double scalarValue) const;
44 
45  virtual bool updateTexture(Image* image) const;
46 
47  virtual double normalizedValue(double domainValue) const;
48  virtual double domainValue(double normalizedPosition) const;
49 
50  virtual unsigned int version() const;
51 
52  virtual std::vector<double> tickValuesHint() const;
53 
54 private:
55  CEE_PRIVATE_IMPL(ScalarMapperFilledContoursUniform);
56  CEE_DISALLOW_COPY_AND_ASSIGN(ScalarMapperFilledContoursUniform);
57 
58  virtual cvf::ScalarMapperContinuousDomain* internal_cvfScalarMapper();
59 };
60 
61 } // namespace vis
62 } // namespace cee
Stores an RGBA image with 8 bits per pixel.
Definition: Image.h:25
Namespace cee contains all functionality and structures under the Core component. ...
Definition: AppComponent.cpp:26
Maps scalar values to texture coordinates/colors using a filled contours style color map with levels ...
Definition: ScalarMapperFilledContoursUniform.h:29
Base class for scalar mappers that implement normalizedValue / domainValue.
Definition: ScalarMapperContinuousDomain.h:38
ColorTable
The predefined color schemes supported by the color table factory.
Definition: ColorTableFactory.h:31
Class for storing an RGB color triplet.
Definition: Color3f.h:25
Vector class for a 2D float vector.
Definition: Vec2f.h:24