半球上の一様分布点群

http://d.hatena.ne.jp/senna_hpp/20061019/p1

 こちらについて可視化してみました。
検証のために、符号が一定の成分について半分の確率で符号反転して球面に分布するようにしています。
 実装結果では、境界付近の分布が抜けている様子です。
 乱数列はただのSystem.Randomです。

plot@random on hemisphere

http://xelf.info/xna/XELF.HemispherePlot/publish.html

  • XNAβランタイムで動作します。
  • ClickOnce配布です。
  • 実行環境を整えて起動するとフルスクリーン表示になります。
  • 入力操作は何もありません。
  • 終了はWindows標準の[Alt]+[F4]などをご利用ください。
  • 最初に点をたくさん打って、そのあと少しずつ書き換えていきます。
  • 適当に回転します。

追記

 原文は「Lambert面における重点的サンプリング」であったと気付いたというコメントをいただきました。
 より分布がわかりやすいように、元の一様乱数に量子化したような値を使うよう更新してみました。