
ベクターグラフィックス、CADシステム、地理情報システムにおいて、幾何学的プリミティブ(またはプリム)とは、システムが処理(描画、保存)できる最も単純な(つまり「原子的な」または還元不可能な)幾何学的形状のことです。対応するオブジェクトを描画するサブルーチンも「幾何学的プリミティブ」と呼ばれることがあります。最も「原始的な」プリミティブは点と直線セグメントであり、初期のベクターグラフィックスシステムが持っていたのはこれだけでした。
構成的立体幾何学では、プリミティブとは立方体、円柱、球、円錐、ピラミッド、トーラスなどの単純な幾何学的形状を指します。現代の2Dコンピュータグラフィックスシステムでは、曲線(直線、円、より複雑な曲線のセグメント)や形状(ボックス、任意の多角形、円)をプリミティブとして扱うことができます。
2次元の基本的な要素としては、線、点、多角形などが挙げられますが、多角形はすべて三角形から構成できるため(多角形の三角形分割)、三角形を基本要素と考える人もいます。他のすべてのグラフィック要素は、これらの基本要素から構成されます。3次元では、3次元空間に配置された三角形や多角形を基本要素として使用して、より複雑な3D形状をモデル化できます。場合によっては、曲線(ベジェ曲線、円など)を基本要素とみなすこともできます。また、曲線は、多くの直線的な基本形状から構成される複雑な形状である場合もあります。
幾何学的プリミティブのセットは、表現される領域の寸法に基づいています。 [ 1 ]
GISでは、地形表面は、上面のみを表現すればよいため、口語的に「2 1/2次元」と呼ばれることがよくあります。したがって、標高は、2次元空間のスカラー場特性または関数として概念化でき、真の3次元オブジェクトに比べて多くのデータモデリング効率が得られます。これらの次元のいずれかがゼロより大きい形状は、無限個の異なる点から構成されます。デジタルシステムは有限であるため、形状内の点のサンプルセットのみを保存できます。したがって、ベクトルデータ構造は通常、戦略的なサンプルを使用して幾何学的プリミティブを表現し、計算幾何学のアルゴリズムを使用して、分析または表示時にソフトウェアが形状の残りの部分を補間しやすくする構造に整理されています。[ 2 ]



地理情報システムの歴史の中で、多種多様なベクトルデータ構造とフォーマットが開発されてきましたが、それらは地理的現象の位置と範囲を表すための幾何学的プリミティブの中核セットを格納するという基本的な基盤を共有しています。点の位置は、球面地理座標系(緯度/経度)であろうと、ユニバーサル横メルカトル図法のような平面座標系であろうと、ほぼ常に標準的な地球ベースの座標系で測定されます。また、それぞれの地理的特徴の形状とともに属性セットを格納する必要性も共通しています。従来、これはリレーショナルデータベースのデータモデル、データフォーマット、さらにはソフトウェアを使用して実現されてきました。
POLYVRT、ARC/INFO Coverage、Esri シェープファイルなどの初期のベクター形式は、基本的な幾何学的プリミティブのセット (点、ポリライン、ポリゴン) をサポートしていますが、これらは 2 次元空間のみで、後者 2 については直線補間のみをサポートしています。地形表面を三角形メッシュとして表現するための TIN データ構造も追加されました。1990 年代半ば以降、利用可能なプリミティブの範囲を拡張する新しい形式が開発され、一般的にはOpen Geospatial ConsortiumのSimple Features仕様によって標準化されています。[ 3 ]一般的な幾何学的プリミティブの拡張には、点、線、ポリゴンの 3 次元座標、測定された属性または時間を表す 4 番目の「次元」、線とポリゴンの曲線セグメント、ジオメトリの形式としてのテキスト注釈、3 次元オブジェクトのポリゴンメッシュなどがあります。
現実世界の現象の形状を表す場合、その表現は、表現対象の現象とは異なる(通常はより低い)次元を持つことがよくあります。例えば、都市(2次元領域)は点として表現され、道路(3次元の物質の塊)は線として表現されることがあります。このような次元の一般化は、空間認知の傾向と相関しています。例えば、2つの都市間の距離を尋ねる場合、都市を点として捉える概念モデルを前提としていますが、道路を「上る」「下る」「沿って」といった方向を示す場合は、1次元の概念モデルを前提としています。これは、データ効率、視覚的な簡便性、または認知効率のために行われることが多く、表現と表現対象の区別が理解されていれば問題ありませんが、情報利用者がデジタル形状が現実を完全に表現していると想定した場合(つまり、道路が本当に線であると信じている場合)には混乱を招く可能性があります。
CADソフトウェアや3Dモデリングでは、インターフェースによって、編集によってさらに変更可能なプリミティブを作成する機能がユーザーに提供される場合があります。[ 4 ]例えば、ボックスモデリングの実践では、ユーザーは直方体から始め、押し出しなどの操作を使用してモデルを作成します。この場合、プリミティブはモデリングの基本単位ではなく、便利な開始点にすぎません。
3Dパッケージには、パッケージに付属するより複雑な形状である拡張プリミティブのリストが含まれている場合もあります。例えば、ティーポットは3D Studio Maxのプリミティブとしてリストされています。
線や三角形などの特定のプリミティブをレンダリングするためのハードウェアアクセラレーションを備えた様々なグラフィックスアクセラレータが存在し、多くの場合、テクスチャマッピングとシェーダーが用いられています。最新の3Dアクセラレータは通常、三角形のシーケンスを三角形ストリップとして受け入れます。