00001 /* 00002 * lib-controler-gmap : Le contrôleur de 3-G-cartes, surcouche de lib-controler. 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 lib-controler-gmap 00009 * 00010 * This program is free software: you can redistribute it and/or modify 00011 * it under the terms of the GNU Lesser 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 Lesser General Public License for more details. 00019 * 00020 * You should have received a copy of the GNU Lesser General Public License 00021 * along with this program. If not, see <http://www.gnu.org/licenses/>. 00022 */ 00023 00024 //****************************************************************************** 00025 #ifdef MODULE_SPAMOD 00026 //****************************************************************************** 00027 #ifndef PARAMETER_SPAMOD_HH 00028 #define PARAMETER_SPAMOD_HH 00029 //****************************************************************************** 00030 #include "parameter.hh" 00031 #include "spamod-api.hh" 00032 //****************************************************************************** 00040 namespace GMap3d 00041 { 00042 class CParameterSpamod: public CParameter 00043 { 00044 public: 00049 00052 CParameterSpamod(int ANbRef = 0); 00053 CParameterSpamod(const CParameterSpamod &); 00054 CParameter * copy() const; 00055 00058 virtual ~CParameterSpamod(); 00059 00061 00066 00071 virtual void save(std::ostream&); 00072 00077 virtual void load(std::istream&); 00078 00083 virtual void reinit(); 00084 00086 00088 00090 void setViewMode(TSpamodViewMode AMode); 00091 TSpamodViewMode getViewMode() const; 00092 void setNextViewMode(); 00093 00095 bool getEuclidianParam(int AIndex); 00096 void setEuclidianParam(int AIndex, bool AValue); 00097 00099 bool getAnalyticParam(int AIndex); 00100 void setAnalyticParam(int AIndex, bool AValue); 00101 00103 bool getVoxelParam(int AIndex); 00104 void setVoxelParam(int AIndex, bool AValue); 00105 00107 bool getK2Param(int AIndex); 00108 void setK2Param(int AIndex, bool AValue); 00109 00111 00113 virtual int getType() const; 00114 00116 friend std::ostream& operator << (std::ostream&, const CParameterSpamod &); 00117 friend std::istream& operator >> (std::istream&, CParameterSpamod &); 00118 00119 private: 00121 TSpamodViewMode FViewMode; 00122 00123 /* Paramètres de la vue euclidienne: 00124 * FEuclidianParam[0]: affichage fil de fer, 00125 * FEuclidianParam[1]: affichage faces pleines. 00126 */ 00127 bool FEuclidianParam[2]; 00128 00129 /* Paramètres de la vue analytique 00130 * FAnalyticParam[0]: affichage des sommets, 00131 * FAnalyticParam[1]: affichage des arêtes, 00132 * FAnalyticParam[2]: affichage des face, 00133 * FAnalyticParam[3]: transparence 00134 */ 00135 bool FAnalyticParam[4]; 00136 00137 /* Paramètres de la vue voxel: 00138 * FVoxelParam[0]: affichage des sommets, 00139 * FVoxelParam[1]: affichage des arêtes, 00140 * FVoxelParam[2]: affichage des faces. 00141 */ 00142 bool FVoxelParam[3]; 00143 00144 /* Paramètres de la vue K2: 00145 * FK2Param[0]: affichage des pointels, 00146 * FK2Param[1]: affichage des lignels, 00147 * FK2Param[2]: affichage des surfels. 00148 */ 00149 bool FK2Param[3]; 00150 }; 00151 00152 } // namespace GMap3d 00153 //****************************************************************************** 00154 #endif // PARAMETER_SPAMOD_HH 00155 //****************************************************************************** 00156 #endif // MODULE_SPAMOD 00157 //******************************************************************************