import solids; currentprojection=orthographic(5,3,4); size(7.5cm); real a=6,b=4,c=3; draw(box(O,(a,b,c)),blue); limits(O,X+Y+Z); xaxis3(scale(1.5)*Label("$x$",1),green,Arrow3); yaxis3(scale(1.5)*Label("$y$",1),green,Arrow3); zaxis3(scale(1.5)*Label("$z$",1),green,Arrow3); triple pA=(a,b,0), pB=(0,b,0), pC=(0,.9b,c), pM=(a,0,c); transform3 sym=reflect(pA,pB,pC); triple imM=sym*pM, pN=(pM+imM)/2; draw(surface(pA--pB--(pB+pN-pA)--pN--cycle),palegray+opacity(.5)); label("$A$",pA,X); label("$B$",pB,Y); dot("$C$",pC,Z); dot("$M$",pM,Z-Y,red); dot(pN,gray); dot("$M'$",imM,Y-Z,green); draw(pM--imM,1bp+dashed);