手書きPostscript その4
惑星とか月っぽいもの
重いので続きを読む記法で
%!PS %%BoundingBox: 0 0 100 100 gsave 0 setlinewidth % 観測者 x 方向 % 惑星半径 /Rp 50 def % 星の方向 (theta, phi) /theta 90 def 0 3 359 { /phi exch def % 背景 0 0 2 Rp mul 2 Rp mul rectfill Rp Rp translate % 惑星上の点 (rho, sigma) 0 1 180 { /rho exch def -90 1 90 { /sigma exch def /cospsi rho cos theta cos mul rho sin theta sin phi sigma sub cos mul m ul add def /cosalpha rho sin sigma cos mul def % 散乱方向に対する Intensity cospsi 0 gt { /I cospsi 2 div def %/I cospsi cosalpha mul 3 mul 4 div def %/I cospsi cosalpha dup mul mul def } { /I 0 def } ifelse I setgray % 画面上での座標 /y Rp rho sin sigma sin mul mul def /z Rp rho cos mul def y z 1 0 360 arc fill } for }for showpage }for grestore