%!PS-Adobe-2.0 %%BoundingBox: 0 0 80 80 /w 80 def /h 80 def (ps3d.inc) run (cube.inc) run (epsetup.inc) run % put eye at (0, 0, 1) [0 0 3 1] set-eye % push things back 2 units 0 0 -2 translate3d % ------------------------------------------------ page-begin gsave3d [1 1 1] A rotate3d -0.5 -0.5 -0.5 translate3d cube { % n = normal function % f = polygon % [ [P[0] P[1] ... P[n-1]] n ] 0 get /f exch def /ell f length def newpath f ell 1 sub get aload pop moveto3d f { aload pop lineto3d } forall stroke } forall grestore3d /psge-end