Answer : To give you a start. \documentclass[tikz,border=3mm]{standalone} \usetikzlibrary{perspective} \begin{document} \begin{tikzpicture}[3d view={30}{15},line cap=round, declare function={ax=2;ay=1.5;az=2.5;bx=0.5;bz=0.5;}] \draw (0,0,0) -- (ax,0,0) -- (ax,0,bz) -- (bx,0,bz) -- (bx,0,az) -- (0,0,az) -- cycle (0,0,az) -- (0,ay,az) -- (bx,ay,az) edge ++ (0,-ay,0) -- (bx,ay,az) edge ++ (0,-ay,0) -- (bx,ay,bz) edge ++ (0,-ay,0) -- (ax,ay,bz) edge ++ (0,-ay,0) -- (ax,ay,0) -- (ax,0,0); \end{tikzpicture} \end{document} The perspective library allows us to change the view angles, and declare function is used to define parameters that can be changed, too. \documentclass[tikz,border=3mm]{standalone} \usetikzlibrary{perspective} \begin{document} \begin{tikzpicture}[3d view={40}{35},line cap=round, declare function={ax=3;ay=2;az=2.5;bx=0.8;bz=0.8;}] \draw (0,0,0) -- (ax,0,0) -- (ax,0,bz) -- (bx,0,bz) -- (bx,0,az) -- (0,0,az) -- cycle (0,0,az) -- (0,a