Computer Assited Medical Intervention Tool Kit
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
VtkMeshComponentProperties.h
Go to the documentation of this file.
1 /*****************************************************************************
2  * $CAMITK_LICENCE_BEGIN$
3  *
4  * CamiTK - Computer Assisted Medical Intervention ToolKit
5  * (c) 2001-2013 UJF-Grenoble 1, CNRS, TIMC-IMAG UMR 5525 (GMCAO)
6  *
7  * Visit http://camitk.imag.fr for more information
8  *
9  * This file is part of CamiTK.
10  *
11  * CamiTK is free software: you can redistribute it and/or modify
12  * it under the terms of the GNU Lesser General Public License version 3
13  * only, as published by the Free Software Foundation.
14  *
15  * CamiTK is distributed in the hope that it will be useful,
16  * but WITHOUT ANY WARRANTY; without even the implied warranty of
17  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18  * GNU Lesser General Public License version 3 for more details.
19  *
20  * You should have received a copy of the GNU Lesser General Public License
21  * version 3 along with CamiTK. If not, see <http://www.gnu.org/licenses/>.
22  *
23  * $CAMITK_LICENCE_END$
24  ****************************************************************************/
25 #if defined(_WIN32) && !defined(__MINGW32__) // MSVC only
26 #pragma warning( disable : 4290)
27 #endif
28 
29 #ifndef VTK_MANAGER_Component_PROPERTIES_H
30 #define VTK_MANAGER_Component_PROPERTIES_H
31 
32 // SPECIFIC includes
33 #include "VtkMeshComponent.h"
34 using namespace camitk;
35 
36 // Camitk includes
37 #include "VtkMeshComponentAPI.h"
38 // QT includes
39 #include <QObject>
40 #include <QMap>
41 #include <QColor>
42 
48  Q_OBJECT
49 
51  //Q_PROPERTY( ShadingInterpolation interpolation READ getInterpolation WRITE setInterpolation )
52 
54  //Q_PROPERTY(QMap color READ getColor WRITE setColor )
55 
57  Q_PROPERTY( double ambient READ getAmbient WRITE setAmbient )
58 
59 
60  Q_PROPERTY( double diffuse READ getDiffuse WRITE setDiffuse )
61 
63  Q_PROPERTY( double specular READ getSpecular WRITE setSpecular )
64 
66  Q_PROPERTY( double specularPower READ getSpecularPower WRITE setSpecularPower )
67 
69  Q_PROPERTY( double opacity READ getOpacity WRITE setOpacity )
70 
72  //Q_PROPERTY(QMap ambientColor READ getAmbientColor WRITE setAmbientColor )
73 
75  //Q_PROPERTY(QMap diffuseColor READ getDiffuseColor WRITE setDiffuseColor )
76 
78  //Q_PROPERTY(QMap specularColor READ getSpecularColor WRITE setSpecularColor )
79 
81  Q_PROPERTY(QColor specularColor READ getSpecularColor WRITE setSpecularColor )
82 
84  //Q_PROPERTY( float lineWidth READ getLineWidth WRITE setLineWidth )
85 
87  //Q_PROPERTY( float pointSize READ getPointSize WRITE setPointSize )
88 
89 
90 public:
91 
94  FLAT,
96  PHONG
97  };
98 
103 
106 
107 // #################### GETTERS ###########################################
108 
110  //ShadingInterpolation getInterpolation() const;
111 
113  //QMap<double, QVariant> getColor() const;
114 
116  double getAmbient() const;
117 
119  double getDiffuse() const;
120 
122  double getSpecular() const;
123 
125  double getSpecularPower() const;
126 
128  double getOpacity() const;
129 
131  //QMap<QString, QVariant> getAmbientColor() const;
132 
134  //QMap<QString, QVariant> getDiffuseColor() const;
135 
137  QColor getSpecularColor() const;
138 
140  //double getLineWidth() const;
141 
143  //double getPointSize() const;
144 
145 // #################### SETTERS ###########################################
146 
148  //void setInterpolation( ShadingInterpolation input );
149 
151  //void setColor( const QMap<double, QVariant> input );
152 
154  void setAmbient( const double input );
155 
157  void setDiffuse( const double input );
158 
160  void setSpecular( const double input );
161 
163  void setSpecularPower( const double input );
164 
166  void setOpacity( const double input );
167 
169  //void setAmbientColor(const QMap<QString, QVariant> input );
170 
172  //void setDiffuseColor( const QMap<QString, QVariant> input );
173 
175  void setSpecularColor( const QColor input );
176 
178  //void setLineWidth( const double input );
179 
181  //void setPointSize( const double input );
182 
183 
184 protected:
185 
188 
190  //QMap<QString, QVariant> colorTable;
191 
193  //QMap<QString, QVariant> ambientColorTable;
194 
196  //QMap<QString, QVariant> diffuseColorTable;
197 
199  //QColor specularColorTable;
200 
201 };
202 
203 
204 
205 #endif // VTK_MANAGER_Component_PROPERTIES_H