ParaView
pqScalarsToColors.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: ParaView
4  Module: pqScalarsToColors.h
5 
6  Copyright (c) 2005-2008 Sandia Corporation, Kitware Inc.
7  All rights reserved.
8 
9  ParaView is a free software; you can redistribute it and/or modify it
10  under the terms of the ParaView license version 1.2.
11 
12  See License_v1.2.txt for the full ParaView license.
13  A copy of this license can be obtained by contacting
14  Kitware Inc.
15  28 Corporate Drive
16  Clifton Park, NY 12065
17  USA
18 
19 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
20 ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
21 LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
22 A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHORS OR
23 CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
24 EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
25 PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
26 PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
27 LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
28 NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
29 SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30 
31 =========================================================================*/
32 #ifndef pqScalarsToColors_h
33 #define pqScalarsToColors_h
34 
35 #include "pqProxy.h"
36 #include <QList>
37 #include <QPair>
38 #include <QVariant>
39 
40 class pqRenderViewBase;
42 class pqScalarsToColorsInternal;
43 
45 class PQCORE_EXPORT pqScalarsToColors : public pqProxy
46 {
47  Q_OBJECT
48 public:
49  pqScalarsToColors(const QString& group, const QString& name,
50  vtkSMProxy* proxy, pqServer* server, QObject* parent=NULL);
51  virtual ~pqScalarsToColors();
52 
55  pqScalarBarRepresentation* getScalarBar(pqRenderViewBase* ren) const;
56 
58  bool getScalarRangeLock() const;
59 
63  void setScalarRange(double min, double max);
64 
68  QPair<double, double> getScalarRange() const;
69 
71  bool getUseLogScale() const;
72 
73  enum Mode
74  {
75  MAGNITUDE = 0,
76  COMPONENT = 1
77  };
78 
79  // Set the color mode (component/magnitude) and
80  // component to color by. When mode is magnitude, component is ignored.
81  void setVectorMode(Mode mode, int component);
82 
83  // Returns the vector mode and component used by the Lookup table.
84  // When vector mode is MAGNITUDE, value returned by
85  // getVectorComponent() is indeterminate.
86  Mode getVectorMode() const;
87  int getVectorComponent() const;
88 
91  void updateScalarBarTitles(const QString& component);
92 
94  {
95  GROW_ON_MODIFIED, /* only when a pipeline object is explicitly modified */
96  GROW_ON_UPDATED /* any time the pipeline updates */
97  };
98 
102 
107  static void setColorRangeScalingMode(int);
108  static int colorRangeScalingMode(int default_value=GROW_ON_MODIFIED);
109 
110 signals:
113  void componentOrModeChanged();
114 
115 public slots:
116  // This method checks if this LUT is used by any display,
117  // if not, it hides all the scalars bar showing this LUT.
118  void hideUnusedScalarBars();
119 
121  void setScalarRangeLock(bool lock);
122 
124  void build();
125 
126 protected slots:
129  void checkRange();
130 
131 private:
132  pqScalarsToColorsInternal* Internal;
133 };
134 
135 #endif
pqScalarsToColors is a represents a vtkScalarsToColors proxy.
pqScalarBarRepresentation is created for "ScalarBarWidgetRepresentation" proxies. ...
This class represents any registered Server Manager proxy.
Definition: pqProxy.h:52
pqRenderViewBase is an abstract base class for all render-view based views.
pqServer (should be renamed to pqSession) is a pqServerManagerModelItem subclass that represents a vt...
Definition: pqServer.h:62