Commit a488a1f8 authored by Achraf BOUJIDA's avatar Achraf BOUJIDA
Browse files

sdl labyrinthe + graphviz

parent 9d30446a
graph G {
6--7;
5--3;
5--6;
2--9;
1--2;
7--0;
9--3;
6--0;
6--2;
6--1;
}
graph G {
4--3;
1--5;
1--4;
0--3;
1--2;
}
graph G {
0;
1--2;
0--3;
0--1;
2--4;
}
graph G {
1--2;
0--3;
0--1;
2--4;
1--2;
2--0;
}
......@@ -163,6 +163,20 @@ void affichergraphe(graphe_t graphe)
printf("\n ----------------- \n");
}
void tracer_graphe(graphe_t graphe, char* fichier)
{
FILE* fic = NULL;
fic = fopen(fichier, "w");
if (fic != NULL)
{
fprintf(fic, "graph G {\n");
for (int k=0; k<graphe.nombrearrete;k++)
{
fprintf(fic,"%d--%d;\n",graphe.arrete[k].i,graphe.arrete[k].j);
}
fprintf(fic, "}\n");
}
}
partition_t partitiondegraphe(graphe_t graphe)
{
partition_t partition=initialisation(graphe.nombrenoeud);
......@@ -238,13 +252,10 @@ graphe_t generation_aleatoire (int nombrenoeud)
int main ()
{
graphe_t graphe=generation_aleatoire(6);
affichergraphe(graphe);
partition_t partition1 = partitiondegraphe(graphe);
Affichage_partition(partition1);
graphe_t graphe=generation_aleatoire(10);
tracer_graphe(graphe, "aleatoire.dot");
graphe_t A=kruskal(graphe);
affichergraphe(A);
tracer_graphe(A, "kruskal.dot");
// graphe_t graphe;
// graphe=initialisationgraphe(5);
......
graph G {
6--7;
5--3;
5--6;
2--9;
1--2;
7--0;
9--3;
}
File added
No preview for this file type
......@@ -49,7 +49,22 @@ void end_sdl(char ok, // fin nor
if (!ok) {
exit(EXIT_FAILURE);
}
}
}
void tracer_graphe(graphe_t graphe, char* fichier)
{
FILE* fic = NULL;
fic = fopen(fichier, "w");
if (fic != NULL)
{
fprintf(fic, "graph G {\n");
for (int k=0; k<graphe.nombrearrete;k++)
{
fprintf(fic,"%d--%d;\n",graphe.arrete[k].i,graphe.arrete[k].j);
}
fprintf(fic, "}\n");
}
}
SDL_Texture* load_texture_from_image(char * file_image_name, SDL_Window *window, SDL_Renderer *renderer )
{
SDL_Surface *my_image = NULL; // Variable de passage
......@@ -245,7 +260,6 @@ void fusion(partition_t* partition,int x, int y)
(*partition).pere[s] = r;
(*partition).hauteur[s]=0;
}
#define N 1
else if ((*partition).hauteur[r] < (*partition).hauteur[s] && r!=s )
{
(*partition).pere[r] = s;
......@@ -274,8 +288,7 @@ int * arreter_composantes(partition_t partition, int pere)
k++;
arrete_composantes=(int*)realloc(arrete_composantes,k*sizeof(int));
}
#define N 1
#define N 1
}
arrete_composantes[0]=k;
return arrete_composantes;
......@@ -324,7 +337,6 @@ graphe_t initialisationgraphe(int taille)
}
void affichergraphe(graphe_t graphe)
#define N 1
{
printf("votre graphe est constitue par la arrete des arretes suivante : \n \n ");
for (int k=0; k<graphe.nombrearrete;k++)
......@@ -408,7 +420,6 @@ graphe_t kruskal(graphe_t graphe)
fusion(&partition,graphe.arrete[k].i,graphe.arrete[k].j);
A.nombrearrete++;
A.arrete[A.nombrearrete-1].i=graphe.arrete[k].i;
#define N 1
A.arrete[A.nombrearrete-1].j=graphe.arrete[k].j;
}
}
......@@ -434,7 +445,6 @@ graphe_t generation_aleatoire (int nombrenoeud)
}
// aij=a11+p(i-1)+(j-1)
#define N 1
graphe_t generation_graphe(int n)
{
graphe_t graphe=initialisationgraphe(n*n);
......@@ -500,6 +510,8 @@ int** graph_en_matrice(int taille){
graphe = Ficher_yate(graphe);
graphe = Ficher_yate(graphe);
graphe = kruskal(graphe);
tracer_graphe(graphe, "labyrinthe.dot");
int ligne,colonne;
int **matrice =generer_matrice(taille);
for(int k =0;k<=graphe.nombrearrete;k++){
......@@ -592,7 +604,7 @@ int main ()
return EXIT_FAILURE;
}
texture2=load_texture_from_image("mur.png",pWindow,pRenderer);
texture1=load_texture_from_image("Back.png",pWindow, pRenderer); /* creation de la texture qui contient l'image */
texture1=load_texture_from_image("Back.jpg",pWindow, pRenderer); /* creation de la texture qui contient l'image */
SDL_bool program_on = SDL_TRUE; // Booléen pour dire que le programme doit continuer
while (program_on){ // Voilà la boucle des évènements
SDL_Event event; // c'est le type IMPORTANT !!
......
graph G {
165--185;
2--3;
280--281;
343--363;
142--143;
286--306;
180--181;
370--390;
266--286;
3--4;
93--113;
192--212;
110--130;
197--198;
169--170;
111--131;
76--96;
147--148;
11--31;
219--239;
337--357;
15--35;
290--291;
141--142;
137--157;
267--287;
22--23;
58--78;
205--225;
375--376;
200--201;
121--122;
271--291;
15--16;
70--71;
191--192;
196--197;
373--374;
379--399;
273--274;
262--263;
225--226;
85--86;
92--112;
120--121;
333--353;
26--46;
380--381;
2--22;
184--185;
100--120;
253--254;
62--63;
136--137;
220--240;
160--161;
205--206;
238--239;
59--79;
178--179;
177--197;
216--236;
334--354;
299--319;
40--60;
189--209;
67--87;
116--136;
263--264;
248--249;
65--85;
240--260;
392--393;
374--375;
176--177;
147--167;
295--315;
164--165;
276--277;
168--169;
95--115;
314--334;
370--371;
284--285;
318--338;
161--162;
60--80;
53--73;
244--264;
43--44;
148--168;
132--152;
143--163;
131--132;
130--150;
14--34;
388--389;
29--49;
134--154;
277--297;
60--61;
35--55;
221--241;
100--101;
297--298;
69--89;
313--314;
378--379;
355--356;
115--116;
320--340;
203--204;
152--153;
102--122;
359--379;
288--308;
362--382;
331--351;
303--323;
195--215;
271--272;
63--83;
237--257;
162--163;
230--250;
123--124;
231--232;
256--257;
351--371;
316--336;
234--235;
368--388;
309--310;
378--398;
27--28;
338--339;
362--363;
247--248;
322--323;
107--127;
30--50;
105--106;
38--58;
325--326;
185--186;
139--159;
250--270;
329--349;
258--259;
82--102;
61--62;
355--375;
240--241;
246--247;
329--330;
228--248;
365--385;
342--343;
174--194;
354--374;
134--135;
236--237;
312--313;
84--104;
97--98;
248--268;
383--384;
106--126;
108--109;
77--97;
27--47;
42--62;
321--341;
251--252;
336--356;
140--141;
367--368;
105--125;
272--292;
127--147;
231--251;
68--69;
266--267;
344--364;
48--68;
89--109;
346--366;
23--24;
112--113;
372--373;
273--293;
276--296;
32--52;
83--103;
86--106;
340--341;
357--377;
166--167;
352--353;
159--179;
223--243;
278--298;
333--334;
93--94;
70--90;
217--237;
78--79;
171--191;
304--305;
307--327;
367--387;
290--310;
297--317;
138--158;
76--77;
183--184;
261--262;
75--95;
188--189;
111--112;
212--213;
26--27;
5--25;
325--345;
9--10;
94--95;
214--234;
188--208;
72--92;
282--302;
1--21;
135--136;
203--223;
73--74;
98--99;
337--338;
77--78;
186--206;
241--242;
260--261;
47--48;
278--279;
69--70;
311--331;
108--128;
369--370;
365--366;
249--269;
210--230;
157--158;
41--61;
213--214;
345--346;
11--12;
356--357;
52--53;
347--367;
172--173;
208--228;
36--37;
28--29;
332--352;
113--133;
308--328;
149--169;
322--342;
38--39;
49--50;
131--151;
324--344;
16--36;
109--110;
90--91;
303--304;
318--319;
189--190;
113--114;
23--43;
235--236;
46--66;
150--151;
204--205;
233--234;
390--391;
249--250;
381--382;
341--361;
16--17;
187--207;
253--273;
66--86;
251--271;
118--119;
6--26;
162--182;
103--123;
274--294;
22--42;
234--254;
121--141;
122--123;
227--247;
393--394;
21--22;
107--108;
186--187;
45--65;
315--335;
53--54;
301--302;
239--259;
223--224;
145--165;
136--156;
335--355;
395--396;
261--281;
175--176;
310--311;
369--389;
158--178;
230--231;
198--218;
338--358;
192--193;
88--108;
86--87;
280--300;
361--362;
98--118;
128--129;
246--266;
73--93;
81--82;
330--331;
344--345;
366--367;
294--314;
376--396;
4--5;
235--255;
170--171;
211--212;
225--245;
25--26;
366--386;
245--246;
209--229;
275--295;
306--307;
13--33;
263--283;
155--156;
200--220;
300--301;
193--194;
55--56;
18--19;
33--34;
64--65;
289--290;
202--203;
182--183;
397--398;
222--223;
155--175;
10--11;
384--385;
317--337;
305--325;
171--172;
175--195;
97--117;
180--200;
116--117;
104--105;
124--144;
327--328;
50--51;
37--38;
160--180;
350--370;
10--30;
19--39;
259--279;
199--219;
8--28;
348--349;
7--8;
394--395;
265--266;
340--360;
34--54;
0--1;
37--57;
20--21;
146--166;
265--285;
339--359;
}
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment