このトピックでは、ST_AsMVTGeomEx関数について説明します。 この関数は、ST_AsMVTGeom関数と同じように機能します。 ST_AsMVTGeomEx関数は、res_recパラメーターをサポートします。 パラメータは、表示効果にほとんど影響を与えないベクトルを除外します。 これにより、フロントエンドとバックエンドがオフロードされ、ネットワークのオーバーヘッドが削減され、視覚化効率が向上します。
構文
GEOMETRY ST_AsMVTGeomEx(
GEOMETRY geom,
BOX2D bounds,
INTEGER res_prec=1,
INTEGER extent=4096,
INTEGER buffer=256,
BOOLEAN clip_geom=true
);
パラメーター
パラメーター | 説明 |
geom | 変換するジオメトリオブジェクト。 |
bounds | バッファを除く、タイルの長方形の境界。 |
res_prec | フィルタースコープを指定します。 タイルで、ジオメトリオブジェクトのx軸またはy軸に表示される最大ピクセル数がこのパラメーターの値より小さい場合、ジオメトリオブジェクトは除外されます。 |
extent | タイル座標系のタイルのサイズ。 デフォルト値: 4096 |
buffer | タイル座標系のバッファのサイズ。 デフォルト値: 256 |
clip_geom | ジオメトリオブジェクトをタイル境界でクリップするかどうかを指定します。 デフォルト値:true |
説明
ST_AsMVTGeomEx関数は、ST_AsMVTGeom関数と同じように機能します。 ST_AsMVTGeomEx関数は、res_recパラメーターをサポートして、視覚化効率を向上させます。
小さいサイズのタイルの場合、res_recパラメーターを大きな値に設定すると、多数のベクトルが見えない場合があります。
この関数は、点データの可視化には適していません。
この関数は、異なるサイズのベクトルデータの視覚化に適しています。
例
-- Only the vectors with a minimum of two pixels in the x-axis or y-axis of the current tile are visualized.
WITH mvtgeom AS(SELECT ST_AsMVTGeomEx(geom, ST_Transform(ST_TileEnvelope(0,0,0),4326),2)AS geom
FROM geom_table
WHERE geom && ST_Transform(ST_TileEnvelope(0,0,0),4326))
SELECT ST_AsMVT(mvtgeom.*);