|
|
1.1 root 1: window 0 0 400 400
2: def init() {
3: for (y = 0; y < Y; y++)
4: for (x = 0; x < X; x++)
5: new[x,y]=y*Z/(Y-1)
6: }
7: def mapper(t0, t1, f0, f1, h) {
8: int dy, blah
9: if (abs(t0-t1)>1)
10: { mapper((t0+t1)/2, t1, (f0+f1)/2, f1, h)
11: mapper(t0, (t0+t1)/2, f0, (f0+f1)/2, h)
12: } else
13: new[t0, h] = $P2[f0, h]
14: }
15: def Mapp() {
16: int start1, start2, end1, end2, dy;
17: init()
18: for (y = 0; y < Y; y++)
19: { x = 10;
20: while ($M1[x,yclamp(y-50)] > 128 && x < X)
21: x++;
22: start1 = x;
23: x = X-10;
24: while ($M1[x,yclamp(y-50)] > 128 && x > 0)
25: x--;
26: end1 = x;
27: x = 10;
28: while ($M2[x,y] < 128 && x < X)
29: x++;
30: start2 = x;
31: x = X-10
32: while ($M2[x,y] < 128 && x > 0)
33: x--;
34: end2 = x;
35: if (start1 < end1 && start2 < end2)
36: mapper(start1, end1, start2, end2, yclamp(y-32))
37: else
38: { for (x = 0; x < X; x++)
39: new[x,y] = old[x,y]
40: }
41: }
42: }
43: x { init(); }
44: x new=old
45: x { Mapp(); }
46: x new=old
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.