Sources
「構造概要 」に記載されているように、このセクションsources
は必須です。 このセクションには、プロバイダによって提供されるデータ形式を記述するソースが常に 1 つ含まれています。 現在、データは次の 2 つの形式でタイルベースで提供できます。 GeoJSON および OMV
-の Vector Tile Specificationに準拠した形式。
例 H.service.omv.Provider
OMV
H.service.traffic.flow.Provider
GeoJSON
として、は HERE Traffic Flow Data サービスデータを形式で提供し、 HERE Vector Tile を形式で提供します。
Sourceセクションには、次のパラメータが含まれています。
-
type
- プロバイダが提供する形式を指定する必須パラメータ。 OMV
またはGeoJSONTileSource
のいずれかを指定できます 。 -
extra_data
- 関数 transform
に渡される追加のデータを含むオプションのパラメータ。 -
transform
- スタイル内でタイルデータを直接処理できるようにするオプションのパラメータ。 次のいずれかの機能を使用できます。
sources:
omv:
type: OMV
transform: |
function(data, extraData, tileInfo) {
if (data.water) {
for (let i = 0; i < data.water.features.length; i++) {
data.water.features[i].properties.myProperty1 = 'myValue1';
}
}
return data;
}
または、名前で並べ替えられ、対応する順序で呼び出される複数の関数があります。
sources:
omv:
type: OMV
transform:
f1: |
function(data, extraData, tileInfo) {
if (data.water) {
for (let i = 0; i < data.water.features.length; i++) {
data.water.features[i].properties.myProperty1 = 'myValue1';
}
}
return data;
}
f2: |
function(data, extraData, tileInfo) {
if (data.water) {
for (let i = 0; i < data.water.features.length; i++) {
data.water.features[i].properties.myProperty2 = 'myValue2';
}
}
return data;
}
各関数 transform
は、次の引数を受け入れます。
-
data
- 現在のタイルのデータを含むオブジェクト。 このオブジェクトには、各レイヤーが GeoJSON FeatureCollection
であるレイヤー (pois
、roads
など ) のリストが含ま れています。 一部のプロバイダ ( H.service.traffic.flow.Provider
など ) は 、タイルごとに 1 つの GeoJSON FeatureCollection
のみを提供 します。その場合、この GeoJSON FeatureCollection
は代わりにレイヤーのリストdata
として渡されます。 -
extraData
- extra_data
Sourceセクションで定義されているオプションのパラメータの内容。 -
tileInfo
- 現在のタイルに関する情報を含むオブジェクト ( 例 : タイルの座標 ) 。 各関数transform
は、変更されたバージョン のパラメータdata
を返す必要があります。