Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members | Related Pages

region.h

Go to the documentation of this file.
00001 /* ***********************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-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 #include <gl/gl.h>                   // Header for OpenGL32 Lib
00028 #include "myList.h"
00029 
00030 typedef Point3D<double> Pt_3D_Double;
00031 
00038 class Region
00039 {
00040 public:
00041         BOOL    enable;
00042         BOOL    computeMinMax;
00043         MyList<Pt_3D_Double> points;
00044         int             xMin,xMax; // boite englogante 2d de l'univers 3d
00045         int             yMin,yMax;
00046         int             zMin,zMax;
00047         int             nbOr; // nb Or de region
00048         HRGN    hRgnBase;
00049 
00050 public:
00051         Region();
00052         void Reset(int deltaXwin=0,int deltaYwin=0);
00053         BOOL Use(HWND hWnd);
00054         void NormalizeSens(POINT *tabPoints,int nbPt);
00055         void SetMinMax(POINT *tabPoints,int nbPt);
00056         BOOL AddElem(Point2D<GLdouble> pos,GLdouble *modelMatrix,GLdouble *projMatrix,GLint *viewPort);
00057         BOOL Compute(Point2D<GLdouble> pos,GLdouble *modelMatrix,GLdouble *projMatrix,GLint *viewPort,Point3D<double> *pt);
00058 
00059 };
00060 
00061 #endif

Generated on Fri Aug 20 19:19:49 2004 for 3d Controls by doxygen 1.3.6