00001 /* 00002 * lib-spamod : Visualisation des objets en discret. 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-spamod 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 * Fichier : Analytic_View.h * 00026 * Auteur : DEXET Martine * 00027 *----------------------------------------------------------------------------* 00028 * Ce fichier contient la spécification de la classe Analytic_View. Cette * 00029 * classe permet d'afficher les éléments constituant la vue analytique d'un * 00030 * objet. * 00031 * * 00032 *****************************************************************************/ 00033 00034 00035 #ifndef ANALYTIC_VIEW_H 00036 #define ANALYTIC_VIEW_H 00037 00038 #include "g-map.hh" 00039 #include "vertex.hh" 00040 00041 00042 00043 /****************************************************************************** 00044 * Classe AnalyticView * 00045 *****************************************************************************/ 00046 00047 namespace GMap3d 00048 { 00049 00050 class Analytic_View { 00051 00052 public: 00053 00054 // Constructeur. 00055 Analytic_View(CGMap * GM); 00056 00057 // Destructeur. 00058 ~Analytic_View(); 00059 00060 // Creation des listes d'affichage des sommets. 00061 void Create_Vertices_Faces(); 00062 00063 // Création des listes d'affichage des faces. 00064 void Create_Edges_Faces(); 00065 00066 // Creation des listes d'affichage des faces. 00067 void Create_Faces(); 00068 00069 // Affichage des facettes des sommets. 00070 void Vertices_Draw(); 00071 00072 // Affichage des facettes des arêtes. 00073 void Edges_Draw(); 00074 00075 // Affichage des facettes des faces. 00076 void Faces_Draw(); 00077 00078 00079 private: 00080 00081 // G-carte devant être visualisée. 00082 CGMap * G; 00083 00084 // Champ direct info 00085 int directInfo; 00086 00087 // Affichage des polygones contenus dans une liste de points. 00088 void Draw_List(std::list<CVertex*> *l, int nbPoints) const; 00089 }; 00090 00091 } // namespace GMap3d 00092 00093 #endif