2009後期
情報グラフィックス論U
担当 鳥海有紀
授業資料 情報グラフィックス論U

様々なオブジェクト

POV-Rayでは、テキストに記載されたオブジェクト以外にも様々なオブジェクトを作ることができる。 詳細はPOV-RayのHelpを参照してほしい。 ここではその一部を紹介する。

回転体
ワイングラス、花瓶などは立体のどの断面を見ても左右対称である。 このような立体は回転体を使って作ることができる。 回転体は断面の右側(あるいは左側)の形状を座標を指定して定義する。


  lathe {
    linear_spline   //  以下の指定した座標を折れ線で結ぶ
    6,              //  形状を定義する座標点の数
    <0, -2>,  //
    <1, -1>,  //     形状の定義
    <3,  0>,  //    < x, y >で定義する
    <2,  1>,  //
    <2,  2>,  //
    <0,  2>   // 
    pigment { Yellow }
  }

latheを使を使うと様々な回転体を表現できる。 ここでは指定した座標を折れ線で結ぶ回転体のみを紹介する。 詳しくはPOVRayのマニュアルを参考にしてほしい。
POVRayの回転体の回転軸はY軸になるので、x、yの座標を指定し、回転体の形状を定義する。 linear_splineは省略できる。 回転体では座標の定義に続いて色の設定ができる。

sor {
    8,             //  形状を定義する座標点の数
    <0.0,  -0.5>,  //  
    <3.0,   0.0>,  //  形状の定義
    <1.0,   0.2>,  //  < x, y >で定義する
    <0.5,   0.4>,  //
    <0.5,   4.0>,  //
    <1.0,   5.0>,  //
    <3.0,  10.0>,  //
    <4.0,  11.0>   //
    pigment { color Yellow }
  }

回転体で指定した座標を曲線で結ぶ立体を作るにはsorを使うとよい。 上の定義で、適当なカメラの位置で表示するとカクテルグラスが表示される。 図の表示をするためにカメラ位置は<0, 20, -60>、カメラターゲットは< 0, 5, 0>。 詳細はPOV-RayのHelpのSurface of Revolutionを参照のこと。

押出し図形(挿引体)
ある平面の形を定義して、その図形を平行移動してできる立体のことを挿引体とか押出し図形という。

  prism {
    linear_sweep   //   以下の指定した座標を折れ線で結ぶ
    linear_spline  //   押出しを直線で行う
    0,       //  押出しの開始位置:y座標
    1,       //      終了位置:y座標
    7,       //  形状を定義する座標点の数
    < 3, 5>, //
    <-3, 5>, //
    <-5, 0>, //   形状の定義
    <-3,-5>, //  < x, z >で定義する 
    < 3,-5>, //
    < 5, 0>, //
    < 3, 5>  //
    pigment { Yellow }
  }

押出し図形の押出しの方向はy軸になる。 形状の指定は< x, z >で行う。 linear_splinelinear_sweepは省略できる。 また、形状を曲線で描いたり、押出しを曲線にしたりもできる。 詳細はPOV-RayのHelpのprismを参照のこと。

トーラス
トーラスはドーナツ型の図形。
object {
    torus {1, 0.4}
    pigment { color Yellow }
}

この図形をカメラ位置<0, 5, -10>とライトを適当に設定すると画像は右のようになる。 1は、ドーナツの中心から外周の中心まで、0.4は外周の半径である。

メタボール
2つ以上の球体がつながったように表現する手法である。 回転体は断面の右側(あるいは左側)の形状を座標を指定して定義する。
object {
  blob {
    sphere {<-1 0 0> 1.5 1}
    sphere {< 1 0 0> 1.5 1}
    threshold 0.5
  }
  pigment { color Yellow }
}

メタボールの定義はblobで行なう。 メタボールでは2つの球体を定義する。 ここでは<-1 0 0>と< 1 0 0>に半径1.5の球体を置き、この2つの球体をつなげている。 thresholdの値を変更すると球体のつながりかたが変わる。 カメラの位置<0, 5, -15>で表示すると右の図になる。 メタボールの詳細はPOV-RayのHelpのblobを参照のこと。

基本図形の詳細な設定
SphereDisk_YCone_YCubeは、 簡単にオブジェクトの定義ができるようにしたマクロである。 それぞれのspherecylinderconebox を使うと位置、大きさなど様々な設定ができる。coneでは、
object {
    cone {
      <0, -1, 0>,  2,   //  円錐上部の座標値、半径
      <0, 1, 0>, 1      //      下部の座標値、半径
    }
    pigment { Yellow }
  }
  pigment { color Yellow }
}
のように、細かい設定ができる。 詳細はPOV-RayのHelpの各項目を参照のこと。


授業資料 情報グラフィックス論U

Copyright 2002-2009 Yuki Toriumi