00001
00011 #ifndef __VISUGL_H__
00012 #define __VISUGL_H__
00013
00014 #include <math.h>
00015 #include <stdio.h>
00016 #include <stdlib.h>
00017 #include <GL/glut.h>
00018 #include <inrimage/image.h>
00019 #include "interpolation.h"
00020 #include "utils.h"
00021
00022
00024 #define NB_SUBDIV_INIT 32
00025
00026 #define ECHELLE_VERT_INIT 0.5
00027
00028 #define ECHELLE_VERT_MAX 20.0
00029
00030 #define ECHELLE_NORMALES 0.1
00031
00032 #define DISTANCE_INIT 4.0
00033
00034 #define DISTANCE_MAX 50.0
00035
00036 #define TRUE 1
00037
00038 #define FALSE 0
00039
00040
00041
00046 typedef struct vertex_ vertex;
00047
00052 struct vertex_;
00053
00054
00055
00060 typedef struct image_GL_ image_GL;
00061
00066 struct image_GL_;
00067
00078 void chargeImage(char * image,int * num_plans,struct nf_fmt *gfmt,int nb_voulu,float marge,int time_flag);
00079
00093 void chargeSurface2D(struct image * img,char * nom,int * num_plans,Fort_int lfmt_in[9],int time_flag);
00094
00110 void chargeFamilleSurfaces(struct image * img,char * nom,int * num_plans,int nb_voulu,float marge,Fort_int lfmt[9],int time_flag);
00111
00120 void initGL();
00121
00122
00123
00131 void affichage();
00132
00142 void clavier(unsigned char touche,int x,int y);
00143
00154 void souris(int bouton,int etat,int x,int y);
00155
00166 void mouvement(int x,int y);
00167
00174 void redim(int l,int h);
00175
00176
00177
00186 void creeRepere();
00187
00194 void creeLampes();
00195
00205 void creeTerrain(int time_flag);
00206
00214 void creeNormales(vertex *T);
00215
00223 void drawVertex(int i,int j,vertex *T);
00224
00225 #endif