cosic.rescue
clone your own copy | download snapshot

Snapshots | iceberg

Inside this repository

fII3_3_2.ps
application/postscript

Download raw (15.1 KB)

%!PS-Adobe-3.0
%
% ********************************************************************************
%
% Figure 3.3(a)-(d) from the book: "The Theory of the Moire Phenomenon, Vol. II"
% by I. Amidror, published by Springer, 2007.
%
%		* * *  Copyright (c) 2007 EPFL  * * *
%
% Author: I. Amidror
%
% Modified: March 21, 2007
%
% ********************************************************************************
%
% Superpositions of two line grids - second layer only
%
% ********************************************************************************
%



/inch {72 mul} def
/centiinch {0.72 mul} def
0.9 centiinch setlinewidth


/figno (7.5) def
0.95 inch 6.08 inch translate


% ****************************************** left image row 1:

/theta1 0 def
/theta2 6 def	% alpha

/ak 90 def
/am 90 def

/rot 0 def		% general rotation to prevent printer artifacts

/p1 3 def		% period for K1 grating
/p2 3 def		% period for M1 grating

/p1y 3 def		% period for K2 grating
/p2y 3 def		% period for M2 grating

/xshift1 0 p1 mul def		% x phase shift for first grid (e.g. 0.5)
/yshift1 0 p1y mul def		% y phase shift for first grid (e.g. 0.5)
/xshift2 0 p2 mul def		% x phase shift for second grid
/yshift2 0 p2y mul def		% y phase shift for second grid

gsave


% draw surrounding crosses:

gsave
2 inch 3.5 inch translate
0.5 centiinch setlinewidth

%-1.400 inch -1.200 inch moveto
-1.150 inch -1.050 inch moveto
0.2 inch 0 inch rlineto
-0.1 inch -0.1 inch rmoveto
0 inch 0.2 inch rlineto

%1.000 inch -1.200 inch moveto
0.950 inch -1.050 inch moveto
0.2 inch 0 inch rlineto
-0.1 inch -0.1 inch rmoveto
0 inch 0.2 inch rlineto

%-1.400 inch 1.200 inch moveto
-1.150 inch 1.050 inch moveto
0.2 inch 0 inch rlineto
-0.1 inch -0.1 inch rmoveto
0 inch 0.2 inch rlineto

%1.000 inch 1.200 inch moveto
0.950 inch 1.050 inch moveto
0.2 inch 0 inch rlineto
-0.1 inch -0.1 inch rmoveto
0 inch 0.2 inch rlineto
stroke
grestore


% draw first (reference) grid:
gsave
2 inch 3.5 inch yshift1 add translate
theta1 rot add rotate
newpath
0 p1 180		% draw vertical lines
{centiinch 90 p1 div round p1 mul xshift1 sub centiinch sub -0.9 inch moveto
0 1.8 inch rlineto} for
%stroke
grestore

gsave
2 inch xshift1 add 3.5 inch translate
ak theta1 add rot add rotate
newpath
0 p1y 180		% draw vertical lines
{centiinch 90 p1y div round p1y mul yshift1 sub centiinch sub -0.9 inch moveto
0 1.8 inch rlineto} for
%stroke
grestore

% draw second grid:
gsave
2 inch 3.5 inch yshift2 add translate
theta2 rot add rotate
newpath
0 p2 180		% draw vertical lines
{centiinch 90 p2 div round p2 mul xshift2 sub centiinch sub -0.9 inch moveto
0 1.8 inch rlineto} for
stroke
grestore

gsave
2 inch xshift2 add 3.5 inch translate
am theta2 add rot add rotate
newpath
0 p2y 180		% draw vertical lines
{centiinch 90 p2y div round p2y mul yshift2 sub centiinch sub -0.9 inch moveto
0 1.8 inch rlineto} for
stroke
grestore

% draw white cross:
gsave
2 inch 3.5 inch translate
newpath
0.1 inch 0.01 inch moveto
0 inch -0.02 inch rlineto
-0.09 inch 0 inch rlineto
0 inch -0.09 inch rlineto
-0.02 inch 0 inch rlineto
0 inch 0.09 inch rlineto
-0.09 inch 0 inch rlineto
0 inch 0.02 inch rlineto
0.09 inch 0 inch rlineto
0 inch 0.09 inch rlineto
0.02 inch 0 inch rlineto
0 inch -0.09 inch rlineto
closepath
1 setgray
fill
grestore


gsave
/Helvetica findfont
10 scalefont setfont
2 inch 3.5 inch translate
theta1 rot add rotate
-1.01 inch -0.91 inch moveto
%(A) show
grestore
gsave
/Helvetica findfont
10 scalefont setfont
2 inch 3.5 inch translate
theta2 rot add rotate
-1.02 inch -0.95 inch moveto
(B) show
grestore
gsave
/Times-Roman findfont
12 scalefont setfont
2 inch 3.5 inch translate
-0.04 inch -1.15 inch moveto
((a)) show
grestore

grestore

% ****************************************** right image row 1:

/theta1 0 def
/theta2 6 def	% alpha

/ak 90 def
/am 90 def

/rot 0 def		% general rotation to prevent printer artifacts

/p1 3 def		% period for K1 grating
/p2 3 def		% period for M1 grating

/p1y 3 def		% period for K2 grating
/p2y 3 def		% period for M2 grating

/xshift1 0.5 p1 mul def		% x phase shift for first grid (e.g. 0.5)
/yshift1 0 p1y mul def		% y phase shift for first grid (e.g. 0.5)
/xshift2 0 p2 mul def		% x phase shift for second grid
/yshift2 0 p2y mul def		% y phase shift for second grid

gsave


gsave
4.5 inch 3.5 inch translate
0.5 centiinch setlinewidth

%-1.400 inch -1.200 inch moveto
-1.150 inch -1.050 inch moveto
0.2 inch 0 inch rlineto
-0.1 inch -0.1 inch rmoveto
0 inch 0.2 inch rlineto

%1.000 inch -1.200 inch moveto
0.950 inch -1.050 inch moveto
0.2 inch 0 inch rlineto
-0.1 inch -0.1 inch rmoveto
0 inch 0.2 inch rlineto

%-1.400 inch 1.200 inch moveto
-1.150 inch 1.050 inch moveto
0.2 inch 0 inch rlineto
-0.1 inch -0.1 inch rmoveto
0 inch 0.2 inch rlineto

%1.000 inch 1.200 inch moveto
0.950 inch 1.050 inch moveto
0.2 inch 0 inch rlineto
-0.1 inch -0.1 inch rmoveto
0 inch 0.2 inch rlineto
stroke
grestore


% draw shifted surrounding crosses:

gsave
4.5 inch 3.5 inch translate
1.5 centiinch 0 centiinch translate
0.5 centiinch setlinewidth

%-1.400 inch -1.200 inch moveto
-1.150 inch -1.050 inch moveto
0.2 inch 0 inch rlineto
-0.1 inch -0.1 inch rmoveto
0 inch 0.2 inch rlineto

%1.000 inch -1.200 inch moveto
0.950 inch -1.050 inch moveto
0.2 inch 0 inch rlineto
-0.1 inch -0.1 inch rmoveto
0 inch 0.2 inch rlineto

%-1.400 inch 1.200 inch moveto
-1.150 inch 1.050 inch moveto
0.2 inch 0 inch rlineto
-0.1 inch -0.1 inch rmoveto
0 inch 0.2 inch rlineto

%1.000 inch 1.200 inch moveto
0.950 inch 1.050 inch moveto
0.2 inch 0 inch rlineto
-0.1 inch -0.1 inch rmoveto
0 inch 0.2 inch rlineto
stroke
grestore


% draw first (reference) grid:
gsave
4.5 inch 3.5 inch yshift1 add translate
theta1 rot add rotate
newpath
0 p1 180		% draw vertical lines
{centiinch 90 p1 div round p1 mul xshift1 sub centiinch sub -0.9 inch moveto
0 1.8 inch rlineto} for
%stroke
grestore

gsave
4.5 inch xshift1 add 3.5 inch translate
ak theta1 add rot add rotate
newpath
0 p1y 180		% draw vertical lines
{centiinch 90 p1y div round p1y mul yshift1 sub centiinch sub -0.9 inch moveto
0 1.8 inch rlineto} for
%stroke
grestore

% draw second grid:
gsave
4.5 inch 3.5 inch yshift2 add translate
theta2 rot add rotate
newpath
0 p2 180		% draw vertical lines
{centiinch 90 p2 div round p2 mul xshift2 sub centiinch sub -0.9 inch moveto
0 1.8 inch rlineto} for
stroke
grestore

gsave
4.5 inch xshift2 add 3.5 inch translate
am theta2 add rot add rotate
newpath
0 p2y 180		% draw vertical lines
{centiinch 90 p2y div round p2y mul yshift2 sub centiinch sub -0.9 inch moveto
0 1.8 inch rlineto} for
stroke
grestore

% draw white cross:
gsave
4.5 inch 3.5 inch translate
newpath
0.1 inch 0.01 inch moveto
0 inch -0.02 inch rlineto
-0.09 inch 0 inch rlineto
0 inch -0.09 inch rlineto
-0.02 inch 0 inch rlineto
0 inch 0.09 inch rlineto
-0.09 inch 0 inch rlineto
0 inch 0.02 inch rlineto
0.09 inch 0 inch rlineto
0 inch 0.09 inch rlineto
0.02 inch 0 inch rlineto
0 inch -0.09 inch rlineto
closepath
1 setgray
fill
grestore


gsave
/Helvetica findfont
10 scalefont setfont
4.5 inch 3.5 inch translate
theta1 rot add rotate
-1.01 inch -0.91 inch moveto
%(A) show
grestore
gsave
/Helvetica findfont
10 scalefont setfont
4.5 inch 3.5 inch translate
theta2 rot add rotate
-1.02 inch -0.95 inch moveto
(B) show
grestore
gsave
/Times-Roman findfont
12 scalefont setfont
4.5 inch 3.5 inch translate
-0.04 inch -1.15 inch moveto
((b)) show
grestore

grestore

% ****************************************** left image row 2:

/theta1 0 def
/theta2 6 def	% alpha

/ak 90 def
/am 90 def

/rot 0 def		% general rotation to prevent printer artifacts

/p1 3 def		% period for K1 grating
/p2 3 def		% period for M1 grating

/p1y 3 def		% period for K2 grating
/p2y 3 def		% period for M2 grating

/xshift1 0 p1 mul def		% x phase shift for first grid (e.g. 0.5)
/yshift1 0.5 p1y mul def	% y phase shift for first grid (e.g. 0.5)
/xshift2 0 p2 mul def		% x phase shift for second grid
/yshift2 0 p2y mul def		% y phase shift for second grid

gsave


% draw surrounding crosses:

gsave
2 inch 0.9 inch translate
0.5 centiinch setlinewidth

%-1.400 inch -1.200 inch moveto
-1.150 inch -1.050 inch moveto
0.2 inch 0 inch rlineto
-0.1 inch -0.1 inch rmoveto
0 inch 0.2 inch rlineto

%1.000 inch -1.200 inch moveto
0.950 inch -1.050 inch moveto
0.2 inch 0 inch rlineto
-0.1 inch -0.1 inch rmoveto
0 inch 0.2 inch rlineto

%-1.400 inch 1.200 inch moveto
-1.150 inch 1.050 inch moveto
0.2 inch 0 inch rlineto
-0.1 inch -0.1 inch rmoveto
0 inch 0.2 inch rlineto

%1.000 inch 1.200 inch moveto
0.950 inch 1.050 inch moveto
0.2 inch 0 inch rlineto
-0.1 inch -0.1 inch rmoveto
0 inch 0.2 inch rlineto
stroke
grestore


% draw shifted surrounding crosses:

gsave
2 inch 0.9 inch translate
0 centiinch 1.5 centiinch translate
0.5 centiinch setlinewidth

%-1.400 inch -1.200 inch moveto
-1.150 inch -1.050 inch moveto
0.2 inch 0 inch rlineto
-0.1 inch -0.1 inch rmoveto
0 inch 0.2 inch rlineto

%1.000 inch -1.200 inch moveto
0.950 inch -1.050 inch moveto
0.2 inch 0 inch rlineto
-0.1 inch -0.1 inch rmoveto
0 inch 0.2 inch rlineto

%-1.400 inch 1.200 inch moveto
-1.150 inch 1.050 inch moveto
0.2 inch 0 inch rlineto
-0.1 inch -0.1 inch rmoveto
0 inch 0.2 inch rlineto

%1.000 inch 1.200 inch moveto
0.950 inch 1.050 inch moveto
0.2 inch 0 inch rlineto
-0.1 inch -0.1 inch rmoveto
0 inch 0.2 inch rlineto
stroke
grestore



% draw first (reference) grid:
gsave
2 inch 0.9 inch yshift1 add translate
theta1 rot add rotate
newpath
0 p1 180		% draw vertical lines
{centiinch 90 p1 div round p1 mul xshift1 sub centiinch sub -0.9 inch moveto
0 1.8 inch rlineto} for
%stroke
grestore

gsave
2 inch xshift1 add 0.9 inch translate
ak theta1 add rot add rotate
newpath
0 p1y 180		% draw vertical lines
{centiinch 90 p1y div round p1y mul yshift1 sub centiinch sub -0.9 inch moveto
0 1.8 inch rlineto} for
%stroke
grestore

% draw second grid:
gsave
2 inch 0.9 inch yshift2 add translate
theta2 rot add rotate
newpath
0 p2 180		% draw vertical lines
{centiinch 90 p2 div round p2 mul xshift2 sub centiinch sub -0.9 inch moveto
0 1.8 inch rlineto} for
stroke
grestore

gsave
2 inch xshift2 add 0.9 inch translate
am theta2 add rot add rotate
newpath
0 p2y 180		% draw vertical lines
{centiinch 90 p2y div round p2y mul yshift2 sub centiinch sub -0.9 inch moveto
0 1.8 inch rlineto} for
stroke
grestore

% draw white cross:
gsave
2 inch 0.9 inch translate
newpath
0.1 inch 0.01 inch moveto
0 inch -0.02 inch rlineto
-0.09 inch 0 inch rlineto
0 inch -0.09 inch rlineto
-0.02 inch 0 inch rlineto
0 inch 0.09 inch rlineto
-0.09 inch 0 inch rlineto
0 inch 0.02 inch rlineto
0.09 inch 0 inch rlineto
0 inch 0.09 inch rlineto
0.02 inch 0 inch rlineto
0 inch -0.09 inch rlineto
closepath
1 setgray
fill
grestore


gsave
/Helvetica findfont
10 scalefont setfont
2 inch 0.9 inch translate
theta1 rot add rotate
-1.01 inch -0.91 inch moveto
%(A) show
grestore
gsave
/Helvetica findfont
10 scalefont setfont
2 inch 0.9 inch translate
theta2 rot add rotate
-1.02 inch -0.95 inch moveto
(B) show
grestore
gsave
/Times-Roman findfont
12 scalefont setfont
2 inch 0.9 inch translate
-0.04 inch -1.15 inch moveto
((c)) show
grestore

grestore

% ****************************************** right image row 2:

/theta1 0 def
/theta2 6 def	% alpha

/ak 90 def
/am 90 def

/rot 0 def		% general rotation to prevent printer artifacts

/p1 3 def		% period for K1 grating
/p2 3 def		% period for M1 grating

/p1y 3 def		% period for K2 grating
/p2y 3 def		% period for M2 grating

/xshift1 0.5 p1 mul def		% x phase shift for first grid (e.g. 0.5)
/yshift1 0.5 p1y mul def	% y phase shift for first grid (e.g. 0.5)
/xshift2 0 p2 mul def		% x phase shift for second grid
/yshift2 0 p2y mul def		% y phase shift for second grid

gsave


% draw surrounding crosses:

gsave
4.5 inch 0.9 inch translate
0.5 centiinch setlinewidth

%-1.400 inch -1.200 inch moveto
-1.150 inch -1.050 inch moveto
0.2 inch 0 inch rlineto
-0.1 inch -0.1 inch rmoveto
0 inch 0.2 inch rlineto

%1.000 inch -1.200 inch moveto
0.950 inch -1.050 inch moveto
0.2 inch 0 inch rlineto
-0.1 inch -0.1 inch rmoveto
0 inch 0.2 inch rlineto

%-1.400 inch 1.200 inch moveto
-1.150 inch 1.050 inch moveto
0.2 inch 0 inch rlineto
-0.1 inch -0.1 inch rmoveto
0 inch 0.2 inch rlineto

%1.000 inch 1.200 inch moveto
0.950 inch 1.050 inch moveto
0.2 inch 0 inch rlineto
-0.1 inch -0.1 inch rmoveto
0 inch 0.2 inch rlineto
stroke
grestore

% draw shifted surrounding crosses:

gsave
4.5 inch 0.9 inch translate
1.5 centiinch 1.5 centiinch translate
0.5 centiinch setlinewidth

%-1.400 inch -1.200 inch moveto
-1.150 inch -1.050 inch moveto
0.2 inch 0 inch rlineto
-0.1 inch -0.1 inch rmoveto
0 inch 0.2 inch rlineto

%1.000 inch -1.200 inch moveto
0.950 inch -1.050 inch moveto
0.2 inch 0 inch rlineto
-0.1 inch -0.1 inch rmoveto
0 inch 0.2 inch rlineto

%-1.400 inch 1.200 inch moveto
-1.150 inch 1.050 inch moveto
0.2 inch 0 inch rlineto
-0.1 inch -0.1 inch rmoveto
0 inch 0.2 inch rlineto

%1.000 inch 1.200 inch moveto
0.950 inch 1.050 inch moveto
0.2 inch 0 inch rlineto
-0.1 inch -0.1 inch rmoveto
0 inch 0.2 inch rlineto
stroke
grestore



% draw first (reference) grid:
gsave
4.5 inch 0.9 inch yshift1 add translate
theta1 rot add rotate
newpath
0 p1 180		% draw vertical lines
{centiinch 90 p1 div round p1 mul xshift1 sub centiinch sub -0.9 inch moveto
0 1.8 inch rlineto} for
%stroke
grestore

gsave
4.5 inch xshift1 add 0.9 inch translate
ak theta1 add rot add rotate
newpath
0 p1y 180		% draw vertical lines
{centiinch 90 p1y div round p1y mul yshift1 sub centiinch sub -0.9 inch moveto
0 1.8 inch rlineto} for
%stroke
grestore

% draw second grid:
gsave
4.5 inch 0.9 inch yshift2 add translate
theta2 rot add rotate
newpath
0 p2 180		% draw vertical lines
{centiinch 90 p2 div round p2 mul xshift2 sub centiinch sub -0.9 inch moveto
0 1.8 inch rlineto} for
stroke
grestore

gsave
4.5 inch xshift2 add 0.9 inch translate
am theta2 add rot add rotate
newpath
0 p2y 180		% draw vertical lines
{centiinch 90 p2y div round p2y mul yshift2 sub centiinch sub -0.9 inch moveto
0 1.8 inch rlineto} for
stroke
grestore

% draw white cross:
gsave
4.5 inch 0.9 inch translate
newpath
0.1 inch 0.01 inch moveto
0 inch -0.02 inch rlineto
-0.09 inch 0 inch rlineto
0 inch -0.09 inch rlineto
-0.02 inch 0 inch rlineto
0 inch 0.09 inch rlineto
-0.09 inch 0 inch rlineto
0 inch 0.02 inch rlineto
0.09 inch 0 inch rlineto
0 inch 0.09 inch rlineto
0.02 inch 0 inch rlineto
0 inch -0.09 inch rlineto
closepath
1 setgray
fill
grestore


gsave
/Helvetica findfont
10 scalefont setfont
4.5 inch 0.9 inch translate
theta1 rot add rotate
-1.01 inch -0.91 inch moveto
%(A) show
grestore
gsave
/Helvetica findfont
10 scalefont setfont
4.5 inch 0.9 inch translate
theta2 rot add rotate
-1.02 inch -0.95 inch moveto
(B) show
grestore
gsave
/Times-Roman findfont
12 scalefont setfont
4.5 inch 0.9 inch translate
-0.04 inch -1.15 inch moveto
((d)) show
grestore



grestore

gsave
0.9 inch -3.8 inch translate
0 inch 0 inch moveto
/Times-Bold findfont
12 scalefont setfont
(Figure 3.3(a)-(d)) show
/Times-Roman findfont
12 scalefont setfont
( from the book: ) show
/Times-Italic findfont
12 scalefont setfont
(The Theory of the Moire) show
-0.06 inch 0 inch rmoveto
(\302 Phenomenon) show
0.05 inch -0.25 inch moveto
(Vol. II: Aperiodic Layers,) show
/Times-Roman findfont
12 scalefont setfont
( by I. Amidror, published by Springer, 2007.) show
1.7 inch -0.65 inch moveto
((Second layer only.)) show
grestore


showpage