00001 /* *********************************************************************************** 00002 Writer: Sebastien Bloc 00003 Copyright: 2004 00004 eMail: sebastien.bloc@free.fr 00005 URL: http://mignonsoft.free.fr 00006 00007 This program is free software; you can redistribute it and/or 00008 modify it under the terms of the GNU General Public License 00009 as published by the Free Software Foundation; either version 2 00010 of the License, or (at your option) any later version. 00011 00012 This program is distributed in the hope that it will be useful, 00013 but WITHOUT ANY WARRANTY; without even the implied warranty of 00014 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00015 GNU General Public License for more details. 00016 http://www.gnu.org/copyleft/gpl.html 00017 *********************************************************************************** */ 00018 00023 #ifndef INCLUDE_REGION_H 00024 #define INCLUDE_REGION_H 00025 00026 #include "trigo.h" 00027 00028 typedef Point3D<double> Pt_3D_Double; 00029 00036 class Region 00037 { 00038 public: 00039 BOOL enable; 00040 BOOL computeMinMax; 00041 MyList<Pt_3D_Double> points; 00042 int xMin,xMax; // boite englogante 2d de l'univers 3d 00043 int yMin,yMax; 00044 int zMin,zMax; 00045 int nbOr; // nb Or de region 00046 HRGN hRgnBase; 00047 00048 public: 00049 Region(); 00050 void Reset(int deltaXwin=0,int deltaYwin=0); 00051 BOOL Use(HWND hWnd); 00052 void NormalizeSens(POINT *tabPoints,int nbPt); 00053 void SetMinMax(POINT *tabPoints,int nbPt); 00054 BOOL AddElem(Point2D<GLdouble> pos,GLdouble *modelMatrix,GLdouble *projMatrix,GLint *viewPort); 00055 }; 00056 00057 #endif