Chapter 8. SFCGAL 関数リファレンス

Table of Contents

SFCGALはCGALのC++ラッパライブラリです。CGALは高度な2次元と3次元の空間関数を提供します。堅牢性のためにジオメトリ座標は正確な有理数表現を持ちます。

このライブラリのインストール手順はSFCGALサイト (http://www.sfcgal.org)にあります。機能を有効にするにはcreate extension postgis_sfcgalとします。

8.1. SFCGAL 管理関数

Abstract

このセクションでは、SFCGALのバージョンとライブラリの依存関係を確認するための関数の一覧を示します。

8.2. SFCGAL アクセサとセッター

Abstract

これらの関数はジオメトリのプロパティに対するアクセスと設定を行います。これらの関数が主に対応するジオメトリは、TIN と多面体サーフェスです。

  • CG_ForceLHR — LHR (Left Hand Rule)方向に強制します。
  • CG_IsPlanar — サーフェスが平面であるかないかをチェックします。
  • CG_IsSolid — ジオメトリが立体であるかどうかをテストします。妥当性チェックは行いません。
  • CG_MakeSolid — ジオメトリを立体にキャストします。チェックはしません。妥当な立体を得るには、入力ジオメトリは閉じた多面体サーフェスか閉じたTINでなければなりません。
  • CG_Orientation — サーフェスの方向を判定します。
  • CG_Area — ジオメトリの面積を計算します
  • CG_3DArea — 3次元の面ジオメトリの面積を計算します。立体の場合は0を返します。
  • CG_Volume — 3次元立体の体積を計算します。面ジオメトリは (閉じていても)0を返します。
  • ST_ForceLHR — LHR (Left Hand Rule)方向に強制します。
  • ST_IsPlanar — サーフェスが平面であるかないかをチェックします。
  • ST_IsSolid — ジオメトリが立体であるかどうかをテストします。妥当性チェックは行いません。
  • ST_MakeSolid — ジオメトリを立体にキャストします。チェックはしません。妥当な立体を得るには、入力ジオメトリは閉じた多面体サーフェスか閉じたTINでなければなりません。
  • ST_Orientation — サーフェスの方向を判定します。
  • ST_3DArea — 3次元の面ジオメトリの面積を計算します。立体の場合は0を返します。
  • ST_Volume — 3次元立体の体積を計算します。面ジオメトリは (閉じていても)0を返します。

8.3. SFCGAL 処理関数および関係関数

  • CG_Intersection — 二つのジオメトリのインタセクトする (共有する)部分を計算します
  • CG_Intersects — 二つのジオメトリがインタセクトしている (少なくとも一つの共有点がある)かどうかテストします。
  • CG_3DIntersects — 二つの3次元ジオメトリがインタセクトするかどうかをテストします
  • CG_Difference — 二つのジオメトリの幾何学的な差を計算します
  • ST_3DDifference — 3次元の差分を計算します。
  • CG_3DDifference — 3次元の差分を計算します。
  • CG_Distance — 二つのジオメトリの最小距離を返します
  • CG_3DDistance — 二つのジオメトリの最小3次元距離を返します
  • ST_3DConvexHull — ジオメトリの3次元の凸包を計算します。
  • CG_3DConvexHull — ジオメトリの3次元の凸包を計算します。
  • ST_3DIntersection — 3次元のインタセクトした (共有する)部分を計算します。
  • CG_3DIntersection — 3次元のインタセクトした (共有する)部分を計算します。
  • CG_Union — 二つのジオメトリの結合を計算します
  • ST_3DUnion — 3次元の結合を計算します。
  • CG_3DUnion — postgis_sfcgalを使用して3次元結合を実行します。
  • ST_AlphaShape — ジオメトリを囲むアルファシェイプを計算します。
  • CG_AlphaShape — ジオメトリを囲むアルファシェイプを計算します。
  • CG_ApproxConvexPartition — ポリゴンジオメトリの近似凸分割を計算します
  • ST_ApproximateMedialAxis — 面ジオメトリの近似的な中心軸を計算します。
  • CG_ApproximateMedialAxis — 面ジオメトリの近似的な中心軸を計算します。
  • ST_ConstrainedDelaunayTriangles — 入力ジオメトリの周りの制約付きドロネー三角形を返します。
  • CG_ConstrainedDelaunayTriangles — 入力ジオメトリの周りの制約付きドロネー三角形を返します。
  • ST_Extrude — 関連するボリュームにサーフェスを押し出します。
  • CG_Extrude — 関連するボリュームにサーフェスを押し出します。
  • CG_ExtrudeStraightSkeleton — ストレートスケルトンの押し出し
  • CG_GreeneApproxConvexPartition — ポリゴンジオメトリの近似凸分割を計算します
  • ST_MinkowskiSum — ミンコフスキー和を求めます。
  • CG_MinkowskiSum — ミンコフスキー和を求めます。
  • ST_OptimalAlphaShape — 「最適」アルファ値を使ってジオメトリを囲むアルファシェイプを計算します。
  • CG_OptimalAlphaShape — 「最適」アルファ値を使ってジオメトリを囲むアルファシェイプを計算します。
  • CG_OptimalConvexPartition — ポリゴンジオメトリの最適凸分割を計算します
  • CG_StraightSkeleton — ジオメトリからストレートスケルトンを計算します。
  • ST_StraightSkeleton — ジオメトリからストレートスケルトンを計算します。
  • ST_Tesselate — ポリゴンまたは多面体サーフェスのテッセレーションを計算し、TINまたはTINコレクションを返します。
  • CG_Tesselate — ポリゴンまたは多面体サーフェスのテッセレーションを計算し、TINまたはTINコレクションを返します。
  • CG_Triangulate — ポリゴンジオメトリを三角形にします
  • CG_Visibility — ポリゴンジオメトリ内のポイント又は辺から可視領域ポリゴンを計算する
  • CG_YMonotonePartition — ポリゴンジオメトリのY単調分割を計算します
  • CG_StraightSkeletonPartition — ポリゴンのストレートスケルトン分割を計算します。
  • CG_Buffer3D — ジオメトリの周りの3次元バッファを計算します。
  • CG_Rotate — ジオメトリを (0,0)を中心に指定した角度で回転させます。
  • CG_Rotate2D — ジオメトリを指定した2次元ポイントを中心に指定した角度で回転させます。
  • CG_Rotate3D — ジオメトリを指定したベクトルを軸に3次元空間で回転させます。
  • CG_RotateX — ジオメトリをX軸を軸に指定した角度で回転させます。
  • CG_RotateY — ジオメトリをY軸を軸に指定した角度で回転させます。
  • CG_RotateZ — ジオメトリをZ軸を軸に指定した角度で回転させます。
  • CG_Scale — ジオメトリを全ての次元で与えられた係数で均一に拡大縮小します。
  • CG_Scale3D — ジオメトリをX,Y,Z軸に沿って個別の係数で拡大縮小します。
  • CG_Scale3DAroundCenter — ジオメトリを3次元空間で指定した点を中心として拡大縮小します。
  • CG_Translate2D — ジオメトリを与えたオフセットで2次元で移動させます。
  • CG_Translate3D — ジオメトリを与えたオフセットで3元で移動させます。