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



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