restart;
y:=r*sin(t);
r:=cos(t);
p1:=plot3d([x,y,z],t=-Pi/2..Pi/2,z=-sqrt(1-r^2)..sqrt(1-r^2),
scaling=constrained,style=patchnogrid,color=blue):
p2:=plot3d([s*x,s*y,sqrt(1-s*s*r*r)],t=-Pi/2..Pi/2,s=0..1,
scaling=constrained,style=
patchnogrid,color=red):
p3:=plot3d([s*x,s*y,-sqrt(1-s*s*r*r)],t=-Pi/2..Pi/2,s=0..1,
scaling=constrained,style=
patchnogrid,color=red):
with(plots):
display(p1,p2,p3);

restart;
x:=r*cos(t);
y:=r*sin(t);
r:=cos(t);
plot3d([x,y,z],t=-Pi/2..Pi/2,z=-sqrt(1-r^2)..sqrt(1-r^2),scaling=constrained);
restart;
with(plots):with(plottools):
p:=Pi/2;
x1:=cos(t);
y1:=sin(t);
x2:=cos(t+p);
y2:=sin(t+p);
z:=Pi/2-t;
q:=expand((1-u)*[z*x1,z*y1,z]+u*[z*x2,z*y2,z],
scaling=constrained):
p1:=plot3d(q,u=0..1,t=0..Pi/2):
p2:=display(rotate(p1,0,0,p),color=green,style=
patchnogrid):
p3:=display(rotate(p1,0,0,2*p),color=blue,style
=patchnogrid):
p4:=display(rotate(p1,0,0,3*p),color=yellow,
style=patchnogrid):
p5:=plot3d(q,u=0..1,t=0..Pi/2,scaling=
constrained,color=red,style=patchnogrid):
display(p2,p3,p4,p5);
restart;
with(plots):with(plottools):
p:=2*Pi/3;
x1:=cos(t);
y1:=sin(t);
x2:=cos(t+p);
y2:=sin(t+p);
z:=Pi-t;
q:=expand((1-u)*[z*x1,z*y1,z]+u*[z*x2,z*y2,z],
scaling=constrained):
p1:=plot3d(q,u=0..1,t=0..Pi):
p2:=display(rotate(p1,0,0,p),color=green,
style=patchnogrid):
p3:=display(rotate(p1,0,0,2*p),color=blue,
style=patchnogrid):
p4:=plot3d(q,u=0..1,t=0..Pi,scaling=
constrained,color=red,style=patchnogrid):
display(p2,p3,p4);
restart;with(plots):
x:=r*cos(t);
y:=r*sin(t);
p1:=plot3d([x,y,-x^2+1/2],r=0..1,t=0..2*Pi,scaling=constrained,
grid=[11,31],color=blue):
p2:=plot3d([x,y,y^2-1/2],r=0..1,t=0..2*Pi,scaling=constrained,
grid=[11,31],color=red):
display(p1,p2);

restart;with(plots):
x:=cos(t);
y:=sin(t);
p1:=tubeplot([x,y,0],t=0..2*Pi,radius=0.2,scaling=constrained,
color=red,style=patchnogrid):
p2:=tubeplot([0+0.6,x+0.6,y+0.6],t=0..2*Pi,radius=0.2,scaling=
constrained,color=yellow,
style=patchnogrid):
p3:=tubeplot([y+0.6,0+0.6,x-0.6],t=0..2*Pi,radius=0.2,scaling=
constrained,color=blue,
style=patchnogrid):
display(p1,p2,p3);

restart;with(plots):
x:=5*cos(t);
y:=3*sin(t);
p1:=tubeplot([x,y,0],t=0..2*Pi,radius=0.5,scaling=constrained,
color=red,style=
patchnogrid):
p2:=tubeplot([0,x,y],t=0..2*Pi,radius=0.5,scaling=constrained,
color=yellow,style=
patchnogrid):
display(p1,p2,p3);