このトピックでは、ST_3DBuffer関数について説明します。 この関数は、3Dポイントまたはラインストリングのバッファを作成します。
構文
meshgeom ST_3DBuffer(geometry geom3d、float8 buffer_radius、ブールround_endデフォルトtrue、float8滑らかなデフォルト0.5);パラメーター
| パラメーター | 説明 |
| geom3d | ジオメトリオブジェクト。Point型またはLineString型にすることができます。 |
| buffer_radius | バッファ半径。浮動小数点数です。 |
| round_end | 値は Boolean 型です。 デフォルト値:true
|
| 滑らかな | バッファサーフェス上の三角形の辺の長さ。 値は浮動小数点数です。 デフォルト値: 0.5 有効な値: (0,1) 。 小さい値は、三角形の辺の長さが小さいことを示す。 表面はより滑らかで、曲面により近い。 |
重要
- round_endパラメーターを設定しない場合、smoothパラメーターを設定する必要はありません。
- round_endパラメーターを設定せず、smoothパラメーターを設定すると、解析エラーが発生します。
説明
この関数は、3Dポイントまたはラインストリングを特定の距離だけ拡張して、閉じたバッファを形成します。
効果図





例
SELECT ST_AsText(ST_3DBuffer('POINT(0 0 0)', 2));
---------------------------------------------------
MESHGEOM (パッチ (INDEXSURFACE Z) (VERTEX(0 0 2、-0.894427190999916 0 1.78885438199983、-0.447213595499958...))
SELECT ST_AsText(ST_3DBuffer('LINESTRING(1 2 3,0 0 4)', 0.5, false));
---------------------------------------------------
MESHGEOM (パッチ (INDEXSURFACE Z) (VERTEX(1.43294188107951 1.89763792560716 3.22821773229382、1.30266373925419)...)
SELECT ST_AsText(ST_3DBuffer('LINESTRING(0 1 0, 1 3 2, 2 1)', 1, true, 0.6));
------------------------------------------------------
MESHGEOM (パッチ (INDEXSURFACE Z) (VERTEX(-0.89885050178969 1.01131599079557 0.438109260099278... ))