/*From TeXgraph exemples*/ import graph3; size(10cm,0); currentprojection=orthographic(2,-2,2.5); real f(pair z) { real u=z.x, v=z.y; return (u/2+v)/(2+cos(u/2)*sin(v)); } int n=30; for (int i=0; i < n; ++i) { bool level(pair z) { real c=f(z); return c > interp(0.0,17.3,i/n) && c <= interp(0.0,17.3,(i+1)/n); } add(surface(f,O,(14,14),200,level,interp(yellow,red,i/(n-1)))); } shipout(bbox(3mm,Fill(black)));