ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/deliantra/server/utils/maps.c
Revision: 1.2
Committed: Mon Mar 5 19:03:09 2007 UTC (17 years, 2 months ago) by root
Content type: text/plain
Branch: MAIN
CVS Tags: HEAD
Changes since 1.1: +1 -1 lines
State: FILE REMOVED
Log Message:
major clenaup in utils/

File Contents

# User Rev Content
1 root 1.2 /* $Id$ */
2 root 1.1
3     /* This program will generate ppm files from each of the weathermaps.
4     Mostly for debugging, but curious DM's might find it useful to see
5     the weather.
6     */
7    
8     #include <stdio.h>
9     #ifndef MIN
10     #define MIN(x,y) ((x)<(y)?(x):(y))
11     #endif
12     #ifndef MAX
13     #define MAX(x,y) ((x)>(y)?(x):(y))
14     #endif
15    
16     int
17     main()
18     {
19     int map[100][100];
20     int x, y;
21     int n, i, j, k, l, z, w, r, a;
22     FILE *fp, *lp;
23     int junk;
24     char fn[6];
25    
26    
27     sprintf(fn, "winddirmap");
28     lp = fopen(fn, "r");
29     fp = fopen("winddirmap.ppm", "w");
30     fprintf(fp, "P3 %d %d 255\n", 100, 100);
31     for (j=0; j < 100; j++) {
32     for (k=0; k < 100; k++) {
33     fscanf(lp, "%d ", &map[j][k]);
34     junk = map[j][k];
35     fprintf(lp, "%d ", map[j][k]);
36     switch (junk) {
37     case 0: fprintf(fp, "255 255 255 "); break;
38     case 1: fprintf(fp, "0 0 0 "); break;
39     case 2: fprintf(fp, "0 0 127 "); break;
40     case 3: fprintf(fp, "0 0 255 "); break;
41     case 4: fprintf(fp, "127 127 255 "); break;
42     case 5: fprintf(fp, "127 127 127 "); break;
43     case 6: fprintf(fp, "127 255 127 "); break;
44     case 7: fprintf(fp, "0 255 0 "); break;
45     case 8: fprintf(fp, "0 127 0 "); break;
46     }
47     fprintf(fp, "\n");
48     fscanf(lp, "\n");
49     }
50     }
51     fclose(fp);
52     fclose(lp);
53    
54     sprintf(fn, "pressuremap");
55     lp = fopen(fn, "r");
56     fp = fopen("pressuremap.ppm", "w");
57     fprintf(fp, "P3 %d %d 255\n", 100, 100);
58     for (j=0; j < 100; j++) {
59     for (k=0; k < 100; k++) {
60     fscanf(lp, "%d ", &map[j][k]);
61     junk = map[j][k];
62     fprintf(lp, "%d ", map[j][k]);
63     if (junk < 1000)
64     fprintf(fp, "0 0 %d ", 255-(1000-junk)*3);
65     else
66     fprintf(fp, "0 %d 0 ", 255+(1000-junk)*3);
67     fprintf(fp, "\n");
68     fscanf(lp, "\n");
69     }
70     }
71     fclose(fp);
72     fclose(lp);
73    
74    
75     sprintf(fn, "windspeedmap");
76     lp = fopen(fn, "r");
77     fp = fopen("windspeedmap.ppm", "w");
78     fprintf(fp, "P3 %d %d 255\n", 100, 100);
79     for (j=0; j < 100; j++) {
80     for (k=0; k < 100; k++) {
81     fscanf(lp, "%d ", &map[j][k]);
82     junk = map[j][k];
83     fprintf(lp, "%d ", map[j][k]);
84     fprintf(fp, "0 %d 0 ", junk*5);
85     fprintf(fp, "\n");
86     fscanf(lp, "\n");
87     }
88     }
89     fclose(fp);
90     fclose(lp);
91    
92    
93     sprintf(fn, "humidmap");
94     lp = fopen(fn, "r");
95     fp = fopen("humidmap.ppm", "w");
96     fprintf(fp, "P3 %d %d 255\n", 100, 100);
97     for (j=0; j < 100; j++) {
98     for (k=0; k < 100; k++) {
99     fscanf(lp, "%d ", &map[j][k]);
100     junk = map[j][k];
101     fprintf(lp, "%d ", map[j][k]);
102     fprintf(fp, "0 0 %d ", 255-(junk*2));
103     fprintf(fp, "\n");
104     fscanf(lp, "\n");
105     }
106     }
107     fclose(fp);
108     fclose(lp);
109    
110    
111     sprintf(fn, "temperaturemap");
112     lp = fopen(fn, "r");
113     fp = fopen("temperaturemap.ppm", "w");
114     fprintf(fp, "P3 %d %d 255\n", 100, 100);
115     for (j=0; j < 100; j++) {
116     for (k=0; k < 100; k++) {
117     fscanf(lp, "%d ", &map[j][k]);
118     junk = map[j][k];
119     fprintf(lp, "%d ", map[j][k]);
120     if (junk < 0)
121     fprintf(fp, "0 0 %d ", 255+junk*5);
122     else
123     fprintf(fp, "0 %d 0 ", junk*5);
124     fprintf(fp, "\n");
125     fscanf(lp, "\n");
126     }
127     }
128     fclose(fp);
129     fclose(lp);
130    
131     sprintf(fn, "skymap");
132     lp = fopen(fn, "r");
133     if (lp == NULL)
134     exit(0);
135     fp = fopen("skymap.ppm", "w");
136     fprintf(fp, "P3 %d %d 255\n", 100, 100);
137     for (j=0; j < 100; j++) {
138     for (k=0; k < 100; k++) {
139     fscanf(lp, "%d ", &map[j][k]);
140     junk = map[j][k];
141     fprintf(lp, "%d ", map[j][k]);
142     switch (junk) {
143     case 0: fprintf(fp, "0 0 255 "); break;
144     case 1: fprintf(fp, "230 230 230 "); break;
145     case 2: fprintf(fp, "170 170 170 "); break;
146     case 3: fprintf(fp, "120 120 120 "); break;
147     case 4: fprintf(fp, "80 80 80 "); break;
148     case 5: fprintf(fp, "40 40 40 "); break;
149     case 6: fprintf(fp, "10 10 10 "); break;
150     case 7: fprintf(fp, "0 255 0 "); break;
151     case 8: fprintf(fp, "255 0 0 "); break;
152     case 13: fprintf(fp, "230 230 255 "); break;
153     case 14: fprintf(fp, "170 170 255 "); break;
154     case 15: fprintf(fp, "120 120 255 "); break;
155     case 16: fprintf(fp, "80 80 255 "); break;
156     }
157     fprintf(fp, "\n");
158     fscanf(lp, "\n");
159     }
160     }
161     fclose(fp);
162     fclose(lp);
163    
164     }