f := 3*x^2 + (y-2)^2 + 2; solid := plot3d({[s, 3*t, subs(x=s, y=3*t,f)], [s,0, t*subs(x=s,y=0,f)], [s,3,t*subs(x=s,y=3,f)], [0, 3*s, t*subs(x=0, y=3*s, f)], [1,3*s,t*subs(x=1, y=3*s, f)]}, s=0..1, t=0..1, grid= [20,20]): with(mvcal): approx := blockapp(f, x=0..1, y=0..3): surf := plot3d(f,x=0..1,y=0..3): with(plots):