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

curve.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_CURVE_H
00024 #define INCLUDE_CURVE_H
00025 
00026 #include "3d.h"
00027 #include "coordonate.h"
00028 #include "texture.h"
00029 
00033 class Curve
00034 {
00035 private:
00036         // variable avec les valeurs precalculé
00037         Point2D<int> oldNbCut;
00038         GLdouble *tabSommets;
00039         GLdouble *tabCoorTextures;
00040         GLuint *tabQuads;
00041         Coordonate<GLdouble> oldCenter; // centre de l'incurvation
00042         void UnAlloc();
00043         int numList;
00044 
00045 public:
00046         Point2D<int> nbCut;     // nb de decoupe en X et Y
00047         Coordonate<GLdouble> center; // centre de l'incurvation
00048 
00049 public:
00050         Curve();
00051         ~Curve();
00052         void Zero();
00053         void operator=(Curve &source);
00054         BOOL Set(GLdouble zCenter,int nbCutXY);
00055         BOOL Set(GLdouble zCenter,int nbCutX,int nbCutY);
00056         BOOL IsActive();
00057         void Refresh();
00058         BOOL Draw(Point2D<double> size,Texture *texture);
00059 };
00060 
00061 #endif

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