我使用 Asymptote 是因为它具有出色的 3D 功能。但是,当我尝试在非矩形域上绘制曲面时,我画不出锯齿状边缘。据我所知,Mathematica、Maple 或 JavaView 等其他软件允许绘制此类图。
所以问题是:是否有可能在非矩形域上绘制一个渐近线的一般曲面,使得其边缘光滑?
答案1
我找到了一个解决方案,即将域映射到一个矩形上。如果 R^2 中的域 D 可以表示为
D={(a(u,v), b(u,v)); u1<=u<=u2, v1<=v<=v2}
然后,为了在 D 上绘制函数 f(x,y),我们可以在渐近线中定义以下函数:
triple g(pair p){
real x=a(p.x,p.y), y=b(p.x,p.y);
return (x,y,f(x,y));
}
最后,表面绘制如下
draw(surface(g,(u1,v1),(u2,v2),...),...);