00001 /* 00002 * Moka : Un modeleur de 3-G-cartes. 00003 * Copyright (C) 2004, Moka Team, Université de Poitiers, Laboratoire SIC 00004 * http://www.sic.sp2mi.univ-poitiers.fr/ 00005 * Copyright (C) 2009, Guillaume Damiand, CNRS, LIRIS, 00006 * guillaume.damiand@liris.cnrs.fr, http://liris.cnrs.fr/ 00007 * 00008 * This file is part of Moka 00009 * 00010 * This program is free software: you can redistribute it and/or modify 00011 * it under the terms of the GNU General Public License as published by 00012 * the Free Software Foundation, either version 3 of the License, or 00013 * (at your option) any later version. 00014 * 00015 * This program is distributed in the hope that it will be useful, 00016 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00017 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00018 * GNU General Public License for more details. 00019 * 00020 * You should have received a copy of the GNU General Public License 00021 * along with this program. If not, see <http://www.gnu.org/licenses/>. 00022 */ 00023 00024 #ifndef OPTIONSINTERPOLATION_QT_HH 00025 #define OPTIONSINTERPOLATION_QT_HH 00026 00027 //--------- Include autres classes developees ---------- 00028 #include "controler-gmap.hh" 00029 00030 //--------------------- Include QT -------------------- 00031 #include <QtGui/QSpinBox> 00032 #include <QtGui/QCheckBox> 00033 #include <QtGui/QComboBox> 00034 #include <QtGui/QLabel> 00035 #include <QtGui/QTabWidget> 00036 #include <QtGui/QGroupBox> 00037 00038 00039 class Window ; 00040 00041 00045 class OptionsInterpolation : public QWidget 00046 { 00047 Q_OBJECT 00048 00049 public: 00050 00057 OptionsInterpolation ( Window * parent , QTabWidget * parentTab ) ; 00058 00063 ~OptionsInterpolation ( ) ; 00064 00068 void update ( ) ; 00069 00070 // Accesseurs 00071 void setSizeX(int); 00072 void setSizeY(int); 00073 void setSizeZ(int); 00074 00075 void setSmoothMethod(int); int getSmoothMethod() const; 00076 const CTransformationMatrix & getSmoothMatrix() const; 00077 00078 void setInterpolationMerges(bool); bool getInterpolationMerges() const; 00079 void setInterpolationSews (bool); bool getInterpolationSews () const; 00080 00081 void setSmoothMerges(bool); bool getSmoothMerges() const; 00082 void setSmoothSews (bool); bool getSmoothSews () const; 00083 00084 00085 public slots: 00086 void callbackSizeX(); 00087 void callbackSizeY(); 00088 void callbackSizeZ(); 00089 00090 void callbackInterpolationMerges(); 00091 void callbackInterpolationSews(); 00092 00093 void callbackSmoothMethod(); 00094 00095 void callbackSmoothMerges(); 00096 void callbackSmoothSews(); 00097 00098 00099 00100 private: 00101 00102 // Pointeur su la fenetre principale 00103 Window * FParent ; 00104 bool FUpdate ; 00105 00106 QLabel * FNbDiv [3] , * FAffMethode ; 00107 QSpinBox * FSaisieNbDiv [3] ; 00108 00109 QCheckBox * FFusionInterpolation , * FCoudreInterpolation , 00110 * FFusionLissage , * FCoudreLissage ; 00111 00112 QComboBox * FSaisieMethode ; 00113 00114 QGroupBox * FNbSubdivision, * FAffInterpolation , * FAffLissage ; 00115 } ; 00116 00117 #endif