size(7.5cm,0); import graph3; currentprojection=perspective(camera=(5,3,3)); path3 p1=shift(-1,-1,0)*scale3(2)*unitsquare3, p2=scale3(.25)*unitcircle3; path3[] p3=shift(.5,.5,0)*p2 ^^shift(-.5,-.5,0)*p2 ^^shift(.5,-.5,0)*p2 ^^shift(-.5,.5,0)*p2; draw(p1,1bp+red); draw(p3,1bp+blue); draw(surface(reverse(p1)^^p3,planar=true),white+opacity(.5)); limits(-1.5X-1.5Y-.5Z,1.5X+1.5Y+Z); xaxis3("$x$",Arrow3); yaxis3("$y$",Arrow3); zaxis3("$z$",Arrow3);