ATOM
数学
3D
pov-ray

外部エディタ(Atom)を使ったPOV-Rayの環境構築

はじめに

これは POV-Rayによる数学お絵かき入門 Advent Calendar 2017 の1日目の記事です.
今日から25日間に亘ってPOV-Rayの基本的な使い方について書いていきます.

POV-Rayとは

POV-Rayは無料で使えるレイトレーシングソフトです.
早い話が, POV-Rayを使えば例えば次のような画像が作成可能です.

筆者の他の作品は例えば https://giphy.com/channel/hyrodium を参照して下さい.

かの有名なJos LeysさんらによるDimensions(http://www.dimensions-math.org/Dim_JP.htm), Chaos(http://www.chaos-math.org/ja) にもPOV-Rayが使われています.
Jos LeysさんのYouTube Channel(https://www.youtube.com/user/josleys) も必見です.

方針

POV-Rayのドキュメントは公式/非公式に関わらず, ある程度充実しているように思います.
しかし実際の所, これらは網羅的に書かれた公式ドキュメントと単発的に書かれた非公式ドキュメントが大部分であり, 実際のコードの解説はあまり見掛けません.
そこで本連載ではそれらの間を取って

  • 網羅的には書かず, 幾つかの項目を取り上げて解説
  • 5日毎に作例の提示
  • 独自のパッケージなどの紹介

を基本的な方針とします.

第一回では環境構築からHello Worldまでを書きます.

環境構築

ここでは筆者の用意できる環境(Ubuntu16.04, Windows10)について記述します.
他の環境でも同様に環境構築が可能な筈です.

POV-Ray本体

Ubuntu

次でインストールします.

sudo apt install povray

自分でコンパイルしてインストールする場合は次を参照して下さい:
https://github.com/POV-Ray/povray/blob/master/unix/README.md

あるいは次の記事が参考になるかもしれません:
https://qiita.com/oshimaryo/items/ab5b3253c1591e8eafbf

Windows

ここからダウンロードしてインストールします.
http://www.povray.org/download/
Windows版ではPOV-Rayにエディタが付属していますが, 付属エディタはお世辞にも使い易いとは言い難いです.
別のエディタを導入するのが良いでしょう. (後述)

付属エディタを使わない場合はpathを通す必要があります.
標準ではインストール先がC:\Program Files\POV-Ray\v3.7\binになっているので, これをpathに通します.

エディタ(Atom)

エディタは各自の好みで構いませんが, ここではAtomを使う事にします.
https://atom.io/

POV-Rayを使うに当って必要なパッケージは以下です.

注意点など

画像ビューア

LaTeX on Windowsで生成したpdfのビューアーにSumatra pdfが便利だったように, POV-Rayを使う際にも標準とは別の画像ビューアをインストールする方が便利です.

画像ビューアの要件は次です.

  • ビューアで開いた際にファイルをロックしない
  • 画像の更新を監視して自動で再読み込みする

Ubuntu

Ubuntuの標準の画像ビューアは上要件を満たさないため, 別のアプリケーションをインストールする方が良いです.
お勧めはgThumbです.
次でインストールできます:

sudo apt install gthumb

Windows

OS標準のもので可能かはまだ試していません.
(分かる方居ればコメントに書いてもらえると有り難いです)

以上で環境構築は完了です.

Hello World

実行

次のように書かれたファイルHelloWorld.povを用意します.

HelloWorld.pov
background{rgb<1,1,1>}
sphere{<0,0,1>,0.2}

あとはCtrl+Shift+Bで実行すれば, 以下のような画像が同ディレクトリ内にHelloWorld.pngとして出力されている筈です.

解説

background{rgb 1}は背景の色を白色に指定します.
sphere{<0,0,1>,0.2}は座標$(0,0,1)$を中心とする半径$0.2$の球面を配置する命令です.

POV-Rayにはカメラの位置を指定するための命令が存在しますが, ここではその命令を省略しています.
そのため, デフォルトとして座標$(0,0,0)$に置かれたカメラが$(0,0,1)$方向を向いて配置されています.
カメラの設定については第3回でより詳しく解説する予定です.

参考文献

幾つか参考になりそうな文献を挙げます.