CG_3DUnion — postgis_sfcgalを使用して3次元結合を実行します。
geometry CG_3DUnion(
geometry geom1, geometry geom2)
;
geometry CG_3DUnion(
geometry set g1field)
;
Availability: 3.5.0
このメソッドにはSFCGALバックエンドが必要です。
このメソッドはSQL/MM仕様の実装です。 SQL-MM IEC 13249-3: 5.1
この関数は3次元に対応し、Z値を削除しません。
この関数は多面体サーフェスに対応しています。
この関数は三角形と不規則三角網 (TIN)に対応しています。
集約関数形式: ジオメトリの行集合を結合した3次元ジオメトリを返します。CG_3DUnion()関数は、PostgreSQL用語で言うところの「集約関数」です。つまり、SUM()やMEAN()と同じ方法で複数のデータ行の操作を行い、他のほとんどの集約関数と同じようにNULLジオメトリを無視します。
PostGIS関数ST_AsX3Dを使って3次元イメージを生成し、X3Dom HTML Javascript redering libraryを使ってHTMLでの描画を行います。
SELECT CG_Extrude(ST_Buffer(ST_GeomFromText('POINT(100 90)'), 50, 'quad_segs=2'),0,0,30) AS geom1, CG_Extrude(ST_Buffer(ST_GeomFromText('POINT(80 80)'), 50, 'quad_segs=1'),0,0,30) AS geom2;
|
SELECT CG_3DUnion(geom1,geom2) FROM ( SELECT CG_Extrude(ST_Buffer(ST_GeomFromText('POINT(100 90)'), 50, 'quad_segs=2'),0,0,30) AS geom1, CG_Extrude(ST_Buffer(ST_GeomFromText('POINT(80 80)'), 50, 'quad_segs=1'),0,0,30) AS geom2 ) As t;
|