数学的な意味で3Dモデルについて話すとき、私たちは通常、ソリッドボディの「境界表現」、いわばその「皮」を指します。ソリッドは、その形状が一定である傾向があり(容易に変更できない)、その材料が全体的に均質であると見なされるため、そう呼ばれます。対照的に、サーフェスモデルやメッシュモデルは内部が空ですが、その「皮」は極端に修正することができます。私たちの業界では、境界表現は略して「b-rep」と呼ばれます。
「アブラハムがイサクを生み、イサクがヤコブを生んだ」という連鎖的な形式で、境界表現について簡単に説明したいと思います。厳密な定義はせずに、図を用いてB-rep(境界表現)の概念を紹介します。詳細な説明は専門文献に記載されています。
物体の主要な記述は境界です。記述されるオブジェクトは、空間を2つの部分に分けるボディバウンド、つまりシェルです。一方の「内部」と呼ばれる部分は物質を含み、物体の内側にあり、もう一方は外側にあります。シェルの特性は表面の特性と非常によく似ています。実際には、物体の境界は平面と曲面の集合として表現されます。
フェースとは、特定の方法で方向付けられ、定義された方法で他のフェースとリンクされた表面の断片です。リンク方法は次のとおりです。各フェースの境界はエッジに分割され、あるフェースから次のフェースへの移行は、少なくとも1つのエッジによって行われます。各フェース上では、エッジは「ループ」と呼ばれる閉じた方向付けられたチェーンにグループ化されます。
エッジは、フェースを通過する際に正しい方向を確保するようにループ内に配置されます。外側ループではフェースが左側に、内側ループでは右側になければなりません。各エッジは2つのフェースだけでなく、2つの頂点も接続します。ある頂点から別の頂点への方向付けられたエッジのチェーンに沿った通過もループを定義します。任意の頂点から開始すると、最終的にその頂点に戻ります。
シェル、フェース、ループ、エッジ、および頂点(つまり、幾何学的要素の相対的な位置を記述するオブジェクト)は、「トポロジカルオブジェクト」と呼ばれます。
ジオメトリの定義
アイテムのジオメトリ、特に面と頂点間の多くの関係を手動で記述するデザイナーを見つけることはまずありません。実際、デザイナーは、Open Design AllianceのAPIが.dwg/.dxfファイルのModelSpaceセクションに3次元データを保存するために使用するような、CADファイルにモデルを保存する関数について何も知る必要さえありません。結局のところ、3DソリッドはSAT形式(「Save As Text」の略)のb-rep Db3dSolidボディの記述として保存されます。この形式は、CADシステムとDassault Systemes SpatialのACISジオメトリックカーネル間のデータ交換を容易にするために設計されました。
最新のCADシステムは、比較的少数のモデリング操作に基づいて、デザイナーに豊富なツールセットを提供します。これらの操作を適切に組み合わせることで、デザイナーは複雑な形状のアイテムを作成できます。コマンドラインインターフェースを使用する場合でも、グラフィカルユーザーインターフェースを使用する場合でも、UIはジオメトリックカーネル(単に「モデラー」とも呼ばれる)の関数を透過的に呼び出します。
以下の記事では、モデラーがCADアプリケーション開発者に提供するこの少数の操作セットに焦点を当てます。具体的には、ODAプラットフォームが提供するモデリング操作の一部について概要を説明します。