00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #include "distance3d.h"
00020 #include <string.h>
00021
00022
00023 int main(int argc, char *argv[])
00024 {
00025 param par0, *ptp;
00026 carte_distance3d_t des;
00027 char NomFicSortant [50];
00028 ima3Du4 ima;
00029 ima3Du1 imaRes;
00030 unsigned x,y,z;
00031
00032
00033
00034 param_debut(argc, argv, &par0);
00035 ptp = &par0;
00036
00037 ptp = carte_distance3d_lect( &des, ptp, ">>distance:");
00038
00039
00040
00041
00042
00043
00044 param_fin(argc, argv, &par0);
00045
00046
00047
00048
00049 carte_distance3d_init( &des);
00050 printf("fin_init\n");
00051
00052
00053 ima.dimx = 100;
00054 ima.dimy = 100;
00055 ima.dimz = 100;
00056 allouer_ima3Du4(&ima);
00057
00058 for(z=0; z<ima.dimz; z++)
00059 for(y=0; y<ima.dimy; y++)
00060 for(x=0; x<ima.dimx; x++)
00061 ima.data[z][y][x] = 1000000;
00062
00063 ima.data[ima.dimz/2][ima.dimy/2][ima.dimx/2] = 0;
00064
00065
00066
00067 printf("debut_calc\n");
00068 carte_distance3d_calc( &des, &ima);
00069 printf("fin_calc\n");
00070
00071
00072
00073 imaRes.dimz = ima.dimz;
00074 imaRes.dimy = ima.dimy;
00075 imaRes.dimx = ima.dimx;
00076 imaRes.lgtete = 24;
00077 imaRes.dept = 8;
00078 allouer_ima3Du1(&imaRes);
00079
00080
00081 for(z=0; z<ima.dimz; z++)
00082 for(y=0; y<ima.dimy; y++)
00083 for(x=0; x<ima.dimx; x++)
00084 if( (ima.data[z][y][x]/43) <= 255 )
00085 imaRes.data[z][y][x] = (unsigned char)(ima.data[z][y][x]/43);
00086 else
00087 imaRes.data[z][y][x] = 255;
00088
00089 for(x=0; x<ima.dimx; x++)
00090 printf("%d--", ima.data[ima.dimz/2][ima.dimy/2][x]);
00091
00092
00093 write_volume_u1( "test_distance.lvf", &imaRes);
00094
00095
00096 }