空間領域構成法: Constructive Solid Geometry, CSG)はソリッドモデリングで使われる技法のひとつである。CSGは手続き的モデリング技法として3次元コンピュータグラフィックスCADでしばしば使われる。ブーリアン演算を使って複雑な表面やオブジェクトを生成することができる。CSGで生成されるモデルや表面は視覚的には複雑だが、オブジェクト群をうまく組み合わせたものでしかない。CSGはポリゴンの格子上で実行されることもあり、手続き的な場合もあるし、パラメトリックな場合もある。

CSGで使用する最も単純なソリッドオブジェクトをプリミティブ(基本立体)と呼ぶ。典型的なプリミティブとしては直方体角柱 (box, block, cuboid)、円柱 (cylinder)、角錐 (pyramid)、円錐 (cone)、球面 (sphere) などがある。利用可能なプリミティブの種類はそれぞれのソフトウェアパッケージによって異なる。ソフトウェアパッケージによっては曲面のあるオブジェクトをCSGで扱えるものもある。

CSGはプリミティブ群に操作を施すことでオブジェクトを「構築 (construct)」する。典型的な操作としては、集合論ブーリアン演算がある(和集合共通部分差集合)。

プリミティブは一般に何らかのパラメータを手続きに入力することで記述できる。例えば、球はその中心の座標と半径の値とを与えることで記述できる。そのようにして記述したプリミティブ群に以下のような操作を施すことで複合的なオブジェクトを生成できる。

Constructive Solid Geometry における操作
ブーリアン演算の和集合 ブーリアン演算の差集合 ブーリアン演算の共通部分
CSG Union の例 CSG Difference の例 CSG Intersection の例
2つのオブジェクトを1つにしたもの。 一方のオブジェクトからもう一方を引いたもの。 両方のオブジェクトの共通部分。

このような基本操作を組み合わせることで、単純なオブジェクトから非常に複雑なオブジェクトを構築できる。

CSGの応用

編集
CSG オブジェクトは二分木で表すことができ、葉がプリミティブ、他のノードが操作を表す。
  • 共通部分
  • 和集合
  • 差集合

CSGにはいくつかの実用的用途がある。まず、単純な幾何学的オブジェクトが必要な場合や、数学的正確性が重要な場合に使える。Unreal EngineなどのゲームエンジンでもCSGを利用している。単純なオブジェクトから複雑な形状を生成できるため、CSGはモデラーにも扱いやすい。手続き的あるいはパラメトリックなCSGでは、オブジェクトの座標を変更したり、ブーリアンオペレータを入れ替えることで、ユーザーがオブジェクトの形状を修正できる。

工業製品の設計においても、CSGはオブジェクトが水密性を有するかどうかを確認できるという重要な特徴がある(個々のプリミティブが水密性なら、それらをブーリアンオペレータで組み合わせたものも水密性である)。それに対して境界表現英語版に基づいた幾何学形状では、幾何学的データが余分に必要になるか、与えられた境界表現が妥当なソリッドオブジェクトとなっているかを検証する必要がある。

CSGで生成した形状の便利な特徴として、任意の座標(点)がその形状の内側にあるか外側にあるかを簡単に判別できるという点が挙げられる。つまり、その形状を構成している個々のプリミティブとブーリアン演算を行って比較すればよい。これは衝突判定などの用途に適した特徴である。

CSGをサポートしているアプリケーション

編集

外部リンク

編集

📚 Artikel Terkait di Wikipedia

POV-Ray

description language) 背景、テクスチャ、オブジェクトのライブラリ 多くの幾何プリミティブとConstructive Solid Geometryのサポート 多種の光源 霧などの大気エフェクトや媒体(煙、雲) フォトンマッピングによる反射やコースティクス(集光模様) バンプマッピングによるしわ、いぼ、波などの模様

幾何学

解析幾何学では三次元ユークリッド空間の幾何学は空間幾何学 (space geometry)、または立体幾何学 (solid geometry) と呼ばれ、二次元ユークリッド空間の幾何学は平面幾何学 (plane geometry) と呼ばれる。これを一般化し、n個の実数の組からn次元空間の点を定義し

四角錐

Laurier University Press. ISBN 0-88920-324-5  Hocevar, Franx (1903). Solid Geometry. A. & C. Black. https://books.google.com/books?id=0OAXAAAAYAAJ  Jarvis

円に内接する四角形

Greitzer 1967. ^ Prasolov, Viktor, Problems in plane and solid geometry: v.1 Plane Geometry, http://students.imsa.edu/~tliu/Math/planegeo.pdf  ^ Alsina

バイナリ空間分割

1987年 Thibault と Naylor はBSP木を使った任意の多面体の表現方法の概略を示した。これにより Constructive Solid Geometry (CSG) への応用が生まれた。 1990年 Teller と Séquin は、直交2次元環境での可視面判定を高速化するため、オフラインの

空間幾何学

数学における空間幾何学(くうかんきかがく、英: solid geometry; 立体幾何学)は三次元ユークリッド空間における幾何学を指して古くから用いられている。空間計量学(ドイツ語版)(くうかんけいりょう、英: stereometry; 立体測量法)は、角錐・円柱・円錐・切頭錐体・球体・角柱などの

ヴェブレン賞

オズワルド・ヴェブレン幾何学賞 (Oswald Veblen Prize in Geometry) は、アメリカ数学会から贈られる賞の一つ。オズワルド・ヴェブレンにちなんで創設された。 一般に「ヴェブレン賞」と略して呼ばれることが多い。幾何学に関する研究において、過去6年間に北米の数学誌に掲載された

ブーリアン演算

近年の多角形に対するブーリアン演算は頂点を使った走査アルゴリズムを使用する。凸多角形に対するブーリアン演算は線形時間で計算可能である。 Constructive Solid Geometry 論理演算 ベン図 ^ T. コルメン、R. リベスト、C. シュタイン、C. ライザーソン『アルゴリズムイントロダクション』(第3版)