以下是 MWE:
\documentclass{article}
\usepackage{asymptote}
\begin{document}
\begin{asydef}
settings.prc=false;
settings.render=0;
import graph3;
\end{asydef}
\begin{asy}[inline=true]
size(200,0);
currentprojection=orthographic(4,6,3);
typedef triple myFunc(real);
myFunc foo(real y) {
return new triple(real x) {return (x, y, sqrt(1-x*x-y*y));};
}
path3 g=(1,0,0)..(0,1,0)..(-1,0,0)..(0,-1,0)..cycle;
draw(surface(g),gray(0.95));
for (real x = 0; x <= 0.3; x += 0.1) {
real y = sqrt(1-x*x);
draw((y,x,0)--(-y,x,0), gray(0.8));
draw(graph(foo(x),-y,y));
}
\end{asy}
\end{document}
一切运行正常,符合预期。但是,当我在 for 循环中将 0.3 改为 0.4 时,它就不再起作用了。Ghostscript 因某种不可恢复的错误而停止。我做错了什么?