すべてのプロダクト
Search
ドキュメントセンター

PolarDB:ST_AsMVT3D

最終更新日:Jul 01, 2024

このトピックでは、ST_AsMVT3D関数について説明します。 この関数は、mvtgeomデータのバイナリ表現をMapbox Vector Tile (MVT) 形式で返します。

構文

  • 構文1

    bytea ST_AsMVT3D(anyelement set row);
  • 構文2

    bytea ST_AsMVT3D(anyelement row, text name);
  • 構文3

    bytea ST_AsMVT3D(anyelement row, text name, integer extent);
  • 構文4

    bytea ST_AsMVT3D(anyelement row, text name, integer extent, text geom_name);
  • 構文5

    bytea ST_AsMVT3D(anyelement row, text name, integer extent, text geom_name, text feature_id_name);

Parameters

パラメーター

説明

row

少なくとも1つの3Dジオメトリ列を含む行。

name

レイヤーの名前。 デフォルト値:デフォルト

extent

画面スペース内のタイルの数。

有効な値: 256〜8192。 デフォルト値: 4096

geom_name

行のジオメトリ列の名前。 デフォルトでは、最初のジオメトリ列の名前が使用されます。

feature_id_name

行の [機能ID] 列の名前。

このパラメーターがNULLまたは負の値に設定されている場合は、[機能ID] 列を無視します。

説明

  • この関数は、MVT形式のバイナリ表現を返す集計関数です。

  • 行には、geometric属性の空間フィーチャとしてエンコードする必要があるジオメトリ列が含まれている必要があります。

  • ST_AsMVTGeom3D関数を呼び出して、タイトル座標系で3Dジオメトリを表現し、他の行と列を非幾何学的属性の空間的特徴としてエンコードできます。

  • | | またはSTRING_AGGを使用して、複数のレイヤーを持つベクトルタイルを作成できます。 例: SELECT ST_AsMVT3D() | | ST_AsMVT3D() ASタイル;

次のリストは、z軸のエンコード方法を示しています。

  1. CommandID encoding: 3DグラフィックスをエンコードするためのMoveTo3D(5)\LineTo3D(6) XYZXYZ... がサポートされています。

  2. z軸上の数値計算: 数値=7 × (z + 450) 。 有効な値の範囲は-450から8848です。

説明

詳細については、「vector-tile-spec」をご参照ください。

次の図は、3D MVTタイルテクノロジーを使用した大規模な3Dシナリオを示しています。

image..png

mvtgeomと

WITH mvtgeom AS
(
  SELECT ST_AsMVTGeom3D(
    ST_Transform('SRID=4326; MULTIPOLYGON(((100 50 0, -100 50 1, -100 -50 2, 100 -50 3, 100 50 0)), ((0 0 0, 1 0 1, 2 2 2, 0 0 0)))'::geometry, 3857),
    ST_TileEnvelope(1, 0, 0)) AS geom,  'test' AS name
)
SELECT ST_AsMVT3D(mvtgeom.*) FROM mvtgeom;
                                                                                                                     st_asmvt3d                                                                                                                     
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
 \x1a760a0764656661756c74125812020000180322500d8044a842b83116ff23d80105802400080f0d810481041d162e000e2e590e0f0dd920dc0405168024d70106c727f3160d0f0dc827f4160e1600f31615c72700080f0d0000001600cc1808c80300000f1a046e616d6522060a04746573742880207802
(1 row)