blob: 5273a7e86f4b6a972fad96711b86e0e16c22b5e1 (
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
|
%!PS
%%Creator: J.V. Romanovsky
%%CreationDate: 1996?
%%BoundingBox: -200 -200 200 200
%%EndProlog
%%Page: 0 1%
/rl{rlineto}def % to reduce the code
/FS {gsave setgray fill grestore stroke}def
% gsave ... grestore are used to save the graphic environment
% it is necessary if you want to use the current path several
% times, as here: to fill and to stroke
/s3 0.75 sqrt def /unit 40 def
% Two constants, 'unit' defines the size of construction
/U { unit mul 0 exch rl} def
% Verical line for several units
/R { unit mul % Transfer the number of units to length
dup % Copy it
s3 mul % Calculate X-offset
exch % Hide it
0.5 mul % Calculate Y-offset
rl} def % Draw the line with the given offset pair
/L { unit mul dup s3 mul neg % neg is the only modificaion
exch 0.5 mul rl}def
% Right and left lines for several lines
/M{ s3 unit mul 0.5 unit mul translate -120 rotate} def
% Rotation of the picture to scan the vertices of the central
% triangle
%200 400 translate
/P1{ 0 0 moveto 2 R -1 L -2 U 4 R -1 U -9 R 4 U -1 L -2 U
3 R 4 U -4 R 3 U -1 L -2 U -1 L} def
% Sorry, only copying the source Escher draft
% and no own imagination
% Three parts of the picture are made with the same procedure
%mark origin
%0 10 moveto
%0 -10 lineto
%10 0 moveto
%-10 0 lineto
%stroke
P1 0.6 FS M
P1 0.8 FS M
P1 0.95 FS M
showpage
% End
|