答案1
也许像这样使用 Asymptote。
settings.outformat="pdf";
settings.render = 16;
settings.prc = false;
import three;
import graph3;
size(8cm,8cm,IgnoreAspect);
currentprojection = orthographic(2,0.2,1);
label("$8 - (x^2 + y^2)$",(0,0,9));
label("$x^2 + y^2$",(0,0,-1));
pen color = red;
material pen1 = material(diffusepen=color+opacity(1.0), emissivepen=0.5*color);
pen color = blue;
material pen2 = material(diffusepen=color+opacity(0.4), emissivepen=0.8*color);
real f1(pair z) { return 8-(z.x*z.x+z.y*z.y); }
real f2(pair z) { return z.x*z.x+z.y*z.y; }
real x(real t) { return 2.0*cos(2pi*t); }
real y(real t) { return 2.0*sin(2pi*t); }
real z(real t) { return 4.0; }
path3 p=graph(x,y,z,0,1,operator ..);
draw(p);
surface surf1 = surface(f1,(-2,-2),(2,2),50,Spline);
draw(surf1,surfacepen=pen1);
surface surf2 = surface(f2,(-2,-2),(2,2),50,Spline);
draw(surf2,surfacepen=pen2);
xaxis3("$x$",Bounds,InTicks);
yaxis3("$y$",Bounds,InTicks);
zaxis3("$z$",Bounds,InTicks);
shipout(scale(4.0)*currentpicture.fit());