2008後期
情報グラフィックス論U
担当 鳥海有紀
授業資料 情報グラフィックス論U
戻る(図形の変換) 次へ(マッピング)

図形の組合せ

定義した複数の図形を組み合わせるとより複雑な形状を作成することができる。 ここで使用する組合せの方法は集合演算というもので、 和(union)、差(difference)、積(intersection)がある。

集合演算の和


union {
    object {
        Sphere
        pigment {color Yellow}
    }
    object {
        Disk_X 
        scale <3, 0.5, 1>
        pigment { color Red}
    }
}

unionは定義した2つのオブジェクトを組み合わせる。 unionで組み合わせたオブジェクトは一体化されて1つのオブジェクトとして扱うことができる。 つまり、この一体化したオブジェクトを回転、移動、拡大/縮小することができる。
ここで使用しているscale <3, 0.5, 1>は拡大/縮小の比率をxyz軸で変えている。 この場合x軸方向に3倍、y軸方向に0.5倍、z軸方向に1倍している。

集合演算の差


difference {
    object {
        Sphere
        pigment {color Yellow}
    }
    object {
        Disk_X 
        scale <3, 0.5, 1>
        pigment { color Red}
    }
}

differenceを使うと1番目に指定した図形から2番目に指定した図形を引いた形状になる。

集合演算の積


intersection {
    object {
        Sphere
        pigment {color Yellow}
    }
    object {
        Disk_X 
        scale <3, 0.5, 1>
        pigment { color Red}
    }
}

intersectionでは2つの図形が重なった部分を表示する。

これらの集合演算は組み合わせて使うことができる。例えば次のように使う。


union {
    difference {
      object {
        Disk_Y
        pigment {color Yellow}
      }
      object {
        Disk_Y 
        scale <0.9, 1, 0.9>
        pigment { color Yellow}
        translate <0, 0.05, 0>
      }
    }
    difference {
      object {
        Disk_Z
        pigment {color Yellow}
        scale <0.5, 0.5, 0.2>    
      }
      object {
        Disk_Z 
        pigment { color Yellow}
        scale <0.3, 0.3, 0.5>
      }
      translate <-1.2, 0.4, 0>
    }
}

組み合わせに制限はない。 ここではオブジェクトを2つずつ組み合わせているが、3つ以上を組み合わせることも可能である。


授業資料 情報グラフィックス論U 戻る(図形の変換) 次へ(マッピング)

Copyright 2002-2008 Yuki Toriumi