{VERSION 1 0 "X11/Motif" "1.0"}{GLOBALS 3 1}{FONT 0 "-adobe-helve
tica-bold-r-normal--*-140-*-*-*-*-*-*" "helvetica" "Helvetica-Bol
d" 8 14 0 "Helvetica-Bold" 14}{FONT 1 "-adobe-helvetica-medium-r-
normal--*-140-*-*-*-*-*-*" "helvetica" "Helvetica" 4 14 0 "Helvet
ica" 14}{FONT 2 "-*-Courier-medium-r-normal--*-140-*-*-m-*-*-*" "
Courier" "Courier" 4 14 192 "Courier" 14}{SCP_R 1 0 30{COM_R 2 0
{TEXT 1 0 ""}}{COM_R 3 0{TEXT 1 136 "An animated  sequence of pic
tures which shows a disc getting its edge together to make a Boy'
s surface - model of a projective plane.  \015"}}{INP_R 4 0 "> "
{TEXT 0 21 "restart: with(plots):"}}{INP_R 5 0 "> "{TEXT 0 17 "x:
=cos(u)*sin(v):"}}{INP_R 6 0 "> "{TEXT 0 17 "y:=sin(u)*sin(v):"}}
{INP_R 7 0 "> "{TEXT 0 10 "z:=cos(v):"}}{INP_R 8 0 "> "{TEXT 0 9 
"d:=x+y+z:"}}{INP_R 9 0 "> "{TEXT 0 15 "g:=x^2+y^2+z^2:"}}{INP_R 
10 0 "> "{TEXT 0 69 "a:=((2*x^2-y^2-z^2)*g+2*y*z*(y^2-z^2)+z*x*(x
^2-z^2)+x*y*(y^2-x^2))/2:"}}{INP_R 11 0 "> "{TEXT 0 57 "b:=((y^2-
z^2)*g+z*x*(z^2-x^2)+x*y*(y^2-x^2))*(sqrt(3))/2:"}}{INP_R 12 0 ">
 "{TEXT 0 33 "c:=d*((d^3)/4+(y-x)*(z-y)*(x-z)):"}}{INP_R 13 0 "> \+
"{TEXT 0 87 "gridsize:=12:N:=10:                           #15 20
 is OK but takes a while to compute"}}{INP_R 14 0 "> "{TEXT 0 9 "
View[1]:="}}{INP_R 15 0 "> "{TEXT 0 44 "display([textplot3d([1,-0
.5,3,`A disc....`],"}}{INP_R 16 0 "> "{TEXT 0 14 "colour=black),"
}}{INP_R 17 0 "> "{TEXT 0 41 "plot3d([a,b,c],u=0..2*Pi,v=0..1*Pi/
(2*N),"}}{INP_R 18 0 "> "{TEXT 0 30 "grid=[4*gridsize,gridsize])]
):"}}{INP_R 19 0 "> "{TEXT 0 33 "for p from 2  to N-1 do View[p]:
="}}{INP_R 20 0 "> "{TEXT 0 72 "display([textplot3d([1,-0.5,3,`ge
tting it's edge together to form....`],"}}{INP_R 21 0 "> "{TEXT 0
 14 "colour=black),"}}{INP_R 22 0 "> "{TEXT 0 74 "plot3d([a,b,c],
u=0..2*Pi,v=0..p*Pi/(2*N),grid=[4*gridsize,gridsize])]) od:"}}
{INP_R 23 0 "> "{TEXT 0 2 "\015\015"}}{INP_R 24 0 "> "{TEXT 0 9 "
View[N]:="}}{INP_R 25 0 "> "{TEXT 0 49 "display([textplot3d([1,-0
.5,3,`a Boy's surface`],"}}{INP_R 26 0 "> "{TEXT 0 14 "colour=bla
ck),"}}{INP_R 27 0 "> "{TEXT 0 65 "plot3d([a,b,c],u=0..2*Pi,v=0..
Pi/2,grid=[4*gridsize,gridsize])]):"}}{INP_R 28 0 "> "{TEXT 0 0 "
"}}{INP_R 29 0 "> "{TEXT 0 66 "display([seq(View[i],i=1..N)],inse
quence=true,orientation=[60,90],"}}{INP_R 30 0 "> "{TEXT 0 58 "sh
ading=NONE,ambientlight=[0,0.8,0],light=[90,-45,0,0,1]);"}}{INP_R
 31 0 "> "{TEXT 0 0 ""}}}{END}