blob: 5c91ba723e47328f73bb7f3e6c30fa95190b860e (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
|
%!PS-Adobe-2.0 EPSF-2.0
%%Creator: Fait main par Jean-Yves Burlett <jean-yves@burlett.org>
%%BoundingBox: 80 80 100 100
%%Pages: 1
%%EndComments
%%EndProlog
%%Page: 1 1
/origstate save def
42 dict begin
%% --------------------------------------------------
%% C O N F I G
/endcol { 1 1 1 } def
/startcol { .7 .7 1 } def
/startwidth 20 def
/endwidth 5 def
/hauteur 20 def
/nbpas 60 def
%% --------------------------------------------------
% gsave
% 1 0 0 setrgbcolor
% newpath
% 80 80 moveto
% 100 80 lineto
% 100 100 lineto
% 80 100 lineto
% 80 80 lineto
% stroke
% grestore
100 100 translate
180 rotate
%%%%%% Fonctions qui servent
/dup2 {
dup 3 2 roll dup 4 1 roll exch
} def
% params i0 if maxiter numiter
/onedstep {
1 sub exch 1 sub
4 2 roll exch dup 3 1 roll sub % ni-1 mi-1 i0 iD
4 -1 roll mul 3 -1 roll % i0 ni-1*iD mi-1
dup 0 eq { pop pop 0 } { div } ifelse
add % I
} def
% params x0 y0 xf yf maxiter numiter
/twodstep {
dup2 8 5 roll exch 8 -3 roll % mi ni x0 xf y0 yf mi ni
onedstep 5 1 roll 4 2 roll % Y x0 xf mi ni
onedstep exch
} def
% params r0 g0 b0 rf gf bf maxiter numiter
/threedstep {
dup2 10 2 roll 5 -1 roll 10 1 roll twodstep % rf mi ni r0 C2 C3
6 2 roll 4 1 roll onedstep 3 1 roll % C1 C2 C3
} def
% params x0 y0 w h col^3
/rectplein {
gsave
newpath
setrgbcolor
4 2 roll moveto
dup2 dup2 dup2
pop 0 rlineto
0 exch rlineto pop
pop neg 0 rlineto
neg 0 exch rlineto pop
fill
grestore
} def
%% Feu !
1 1 nbpas {
gsave
newpath
dup
startcol endcol nbpas 8 -1 roll threedstep setrgbcolor
startwidth endwidth nbpas 4 -1 roll onedstep
0 0 3 2 roll hauteur rectfill
grestore
} for
end
origstate restore
%%Trailer
|