Mapboxスタイルの仕様オブジェクトからOpenLayersマップを作成します。
ライブの例を探索することで、このライブラリが何をするかについての印象を得ます。
NPMベースの開発環境を備えたアプリケーションでライブラリを使用するには、
npm install ol-mapbox-style
この方法でインストールしたら、以下の使用例のように、OL-Mapboxスタイルのモジュールをインポートするだけです。 OL-Mapboxスタイルのスタンドアロンビルドを使用するには、HTMLページに「DIST/OLMS.JS」を含めるだけで、グローバルolms
オブジェクトからエクスポートされた関数にアクセスします( olms.apply()
、 olms.applyBackground()
) 。スタンドアロンビルドは、OpenLayersの完全なビルドに依存することに注意してください。
ol-mapbox-style> = v9には、openlayersバージョン> = 7が必要です。
OL-Mapbox-StyleV8にはOpenLayersバージョンが必要> = 6.13.0 <7 。
完全なドキュメントについては、APIセクションを参照してください。
以下のコードは、 https://
urlを使用して、Mapboxの明るいV9スタイルからOpenLayersマップを作成します。
import { apply } from 'ol-mapbox-style' ;
apply ( 'map' , 'https://api.mapbox.com/styles/v1/mapbox/bright-v9?access_token=YOUR_MAPBOX_TOKEN' ) ;
スタイルとソースをレイヤーのみに割り当てるには、 applyStyle()
を使用します。 mapbox://
urlもサポートされています:
import { applyStyle } from 'ol-mapbox-style' ;
import VectorTileLayer from 'ol/layer/VectorTile.js'
const layer = new VectorTileLayer ( { declutter : true } ) ;
applyStyle ( layer , 'mapbox://styles/mapbox/bright-v9' , { accessToken : 'YOUR_MAPBOX_TOKEN' } ) ;
マップボックススタイルのbackground
レイヤーのプロパティをマップまたはVectorTile
レイヤーに適用するには、 applyBackground()
関数を使用します。
低レベルのAPIも利用できます。個々のOpenLayersベクターまたはベクトルタイルレイヤーのスタイル関数を作成するには、 stylefunction
モジュールを使用します。
import { stylefunction } from 'ol-mapbox-style' ;
import VectorLayer from 'ol/layer/Vector.js' ;
import VectorSource from 'ol/source/Vector.js' ;
import GeoJSON from 'ol/format/GeoJSON.js' ;
const layer = new VectorLayer ( {
source : new VectorSource ( {
format : new GeoJSON ( ) ,
url : 'data/states.geojson'
} )
} ) ;
fetch ( 'data/states.json' ) . then ( function ( response ) {
response . json ( ) . then ( function ( glStyle ) {
stylefunction ( layer , glStyle , 'states' ) ;
} ) ;
} ) ;
この低レベルAPIはレイヤーのソースを作成しないことに注意してください。また、アイコンを使用するスタイルのスプライトハンドリングをセットアップするには、追加の作業が必要であることに注意してください。
ol-mapbox-style
マップボックススタイルの仕様で定義されているように、 text-font
レイアウトプロパティにPBF/SDFグリフを使用できません。代わりに、Webフォントに依存しています。 ol:webfonts
metadataプロパティは、スタイルオブジェクトのルートに設定して、webfontsの場所を指定できます。
{
"version" : 8 ,
"metadata" : {
"ol:webfonts" : "https://my.server/fonts/{font-family}/{fontweight}{-fontstyle}.css"
}
// ...
}
別の方法として、 apply()
またはapplyStyle()
関数のwebfonts
オプションを使用できます。
次のプレースホルダーは、テンプレートURLで使用できます。
{font-family}
:小文字に変換されたCSSフォントファミリ、ブランクが置き換えられました - 、例えばnoto-sans{Font+Family}
:css fontファミリー元の場合、ブランクは+、たとえばnoto+sansに置き換えられました{fontweight}
:css font weight(numeric)、たとえば400、700{fontstyle}
:css fontスタイル、たとえば正常、イタリック体など{-fontstyle}
:通常以外のcssフォントスタイル、例えば - イタリックまたは空の文字列metadata['ol:webfonts']
プロパティがStyleオブジェクトで使用できない場合、Fontsourceフォントが使用されます。また、アプリケーションがCSSを使用して他のフォントをロードすることも可能です。フォントがブラウザで既に利用可能である場合、 ol-mapbox-style
それをロードしません。
この違いのため、フォントスタックは仕様で定義されているものとは少し異なります。スタイルと重量はプライマリフォント(つまり、フォントスタックの最初のもの)から取得されます。フォントスタック内の後続のフォントは、プライマリフォントが使用/読み込まれていない場合にのみ使用され、プライマリフォントのスタイルと重量で使用されます。
npm run build
結果の配布ファイルは、 dist/
フォルダーにあります。ライブラリの動作を確認するには、 dist/index.html
に移動します。
ローカルでテストを実行するには、実行します
npm test
ブラウザでテストをデバッグするには、実行します
npm run karma
コンソール出力(通常はhttp:// localhost:9876/)に示されているホストとポートにブラウザを開き、[デバッグ]ボタンをクリックしてデバッグ環境に移動します。
ol-mapbox-style • docs
ol-mapbox-style • docs
レイヤー:
string
[]
レイヤー。ソースが提供されていない場合、提供されたIDのレイヤーがスタイルのlayers
アレイから使用されます。すべてのレイヤーが同じソースを使用する必要があります。
出典:
string
ソース。デフォルトは''
で、スタイルの最初のソースが使用されます。
updatesource :
boolean
マップボックススタイルの定義でソースに指定されたパラメーターを使用して、ベクトル(タイル)レイヤーソースを更新または作成します。
ol-mapbox-style • docs
ID :
string
|number
機能ID。
出典:
string
ソースID。
ol-mapbox-style • docs
AccessToken :
string
マップボックススタイルのアクセストークン。これはmapbox://
style urlsに提供する必要があります。 https://
およびその他のURLの場合、アクセスキーはスタイルURLの最後のクエリパラメーターでなければなりません。
背景:
false
|BackgroundColor
レイヤーの背景色。指定されていない場合、Mapbox Styleオブジェクトの背景が使用されます。 Mapboxスタイルの背景が使用されないようにfalse
に設定します。
クラス名:
string
レイヤー要素に設定するCSSクラス名。
Declutter :
boolean
整頓画像とテキスト。整頓は、これをtrue
設定したすべてのベクトルおよびベクトル酸層のすべての画像およびテキストスタイルに適用されます。優先度は、レイヤーのZインデックス、スタイルのzIndex
、および機能のレンダリング順序によって定義されます。 Z-Indexが高いことは、優先度が高いことを意味します。同じz-index内で、別のZ-Indexの前にレンダリングされた機能は優先度が高くなります。
最適化として、同じclassName
を持つレイヤーから機能を整理して、Z-Indexに関係なく、これらすべてのレイヤーの塗りつぶしおよびストロークスタイルの上にレンダリングされます。この動作をオプトアウトし、独自のレイヤーでDeclutterd機能を配置するにはol-layer
以外のclassName
でレイヤーを構成します。
範囲:
Extent
レイヤーレンダリングの境界範囲。この範囲の外側にレイヤーはレンダリングされません。
レイヤー:
string
[]
レンダリングを含むレイヤーのリストに制限します。すべてのレイヤーは、同じベクトルソースを共有する必要があります。スタイルが複数のソースを使用している場合、 source
プロパティまたはlayers
プロパティのいずれかを使用して、レンダリングを単一のベクトルソースに制限する必要があります。
マップ:
Map
マップ上のオーバーレイとしてレイヤーを設定します。マップはレイヤーコレクションのこのレイヤーを管理せず、レイヤーは上にレンダリングされます。これは一時的なレイヤーに役立ちます。マップにレイヤーを追加し、マップで管理する標準的な方法は、 map.addLayer()
を使用することです。
上顎:
number
このレイヤーが表示される最大解像度(排他的)。 maxResolution
やminZoom
いずれも定義されていない場合、レイヤーのmaxResolution
スタイルソースのminzoom
と一致します。
Maxzoom :
number
このレイヤーが表示される最大ビューズームレベル(包括的)。
ミニソリューション:
number
このレイヤーが表示される最小解像度(包括的)。
Minzoom :
number
このレイヤーが表示される最小ビューズームレベル(排他的)。 maxResolution
やminZoom
いずれも定義されていない場合、レイヤーのminZoom
はスタイルソースのminzoom
と一致します。
不透明度:
number
不透明度(0、1)。
プリロード:
number
プリロード。低解像度タイルをpreload
レベルにロードします。 0
プリロードがないことを意味します。
プロパティ:
object
任意の観察可能なプロパティ。 #get()
と#set()
でアクセスできます。
renderbuffer :
number
レンダリングまたはヒット検出のためにベクトルタイルから機能を取得するときに、レンダラーが使用するタイル範囲のピクセルのバッファー。推奨値:ベクトルタイルは通常、バッファーで生成されるため、この値は使用済みタイルの最大のバッファーと一致するはずです。少なくとも最大のポイントシンボルまたは線の幅のサイズでなければなりません。
Rendermode :
VectorTileRenderType
ベクタータイルのレンダリングモード:
'hybrid'
:ポリゴンとライン要素は画像としてレンダリングされるため、ズームアニメーション中にピクセルが拡大されます。ポイントシンボルとテキストは、ベクトルとして正確にレンダリングされ、回転ビューで直立することができます。'vector'
:すべてがベクトルとしてレンダリングされます。このモードを使用して、レンダリングされた機能が少ないベクトルタイルレイヤーのパフォーマンスを改善します(たとえば、同じソースを持つ別のレイヤーの特徴のサブセットを強調するため)。 RenderOrder :
OrderFunction
注文をレンダリングします。レンダリングの前に機能をソートするときに使用する機能。デフォルトでは、それらが作成される順に描画されます。 null
使用してソートを避けますが、未定義の描画順序を取得します。
出典:
string
スタイルが複数のソースを使用している場合、 source
プロパティまたはlayers
プロパティのいずれかを使用して、レンダリングを単一のベクトルソースに制限する必要があります。 source
プロパティは、マップボックススタイルのベクトルソースのIDに対応しています。
styleurl :
string
このレイヤーに使用するマップボックススタイルオブジェクトのURL。 Mapbox Studioで作成され、Mapboxでホストされているスタイルの場合、これは「Mapbox:// Styles/You/Your-Style」のように見えます。
whileAnimatingを更新:
boolean
true
に設定すると、機能バッチはアニメーション中に再作成されます。これは、ベクトルがクリップされないことを意味しますが、設定には大量のベクトルデータにパフォーマンスに影響があります。 false
に設定すると、アニメーションがアクティブでない場合、バッチは再作成されます。
インターアクティブを更新する:
boolean
true
に設定すると、フィーチャーバッチは相互作用中に再作成されます。 updateWhileAnimating
も参照してください。
useinterimtilesonerror :
boolean
エラー時に暫定タイルを使用します。
目に見える:
boolean
可視性。
Zindex :
number
レイヤーレンダリング用のZインデックス。レンダリング時に、最初にz-indexによって、次に位置によってレイヤーが注文されます。 undefined
の場合、マップのlayers
コレクションに追加されるレイヤー、またはレイヤーのsetMap()
メソッドが使用されたときにInfinity
に0のzIndex
が想定されます。
ol-mapbox-style • docs
AccessToken :
string
'mapbox://' urlsのトークンにアクセスします。
AccessTokenParam :
string
アクセストークンパラメーション。内部使用のため。
getImage :(
arg0
、arg1
)=>string
|HTMLCanvasElement
|HTMLImageElement
アイコン名の画像を返す関数。結果がHTMLIMAGEELEMENTである場合、すでにロードする必要があります。レイヤーは、画像の読み込みと処理が終了したときにlayer.changed()を呼び出すために使用できます。この関数は、スプライトではなく、スプライトアイコンをオーバーライドするアイコンに使用されます。
• arg0 : VectorLayer
< VectorSource
any
、 any
> | VectorTileLayer
< VectorTile
any
、 any
>
• arg1 : string
string
| HTMLCanvasElement
| HTMLImageElement
投影:
string
標準以外の予測で作業する場合にのみ便利です。 OpenLayersに登録された投影のコード。スタイルのすべてのソースは、この投影で提供する必要があります。また、投影には有効な範囲が定義されている必要があります。これは、スタイルのすべてのタイル張りのソースのタイルグリッドの起源と解像度を決定するために使用されます。提供されると、タイルおよびGeojson URLのBbox EPSG:4326
ホルダーが変更されます。デフォルトは{bbox-epsg-4326}
{bbox-epsg-3857}
です。
解決策:
number
[]
標準以外の予測で作業する場合にのみ便利です。マップボックススタイルで使用されるzoom
へのマッピング解像度の解像度。
styleurl :
string
マップボックスGLスタイルのURL。相対スプライトURLを含む場合、または相対URLによるデータを参照するソースを含む場合、オブジェクトとして提供されたスタイルに必要です。
TransformRequest :(
arg0
、arg1
)=>string
|void
|Request
|Promise
<string
|Request
>
ol-mapbox-style
リソースをどのように取得するかを制御するための機能。 URLの変更、ヘッダーの追加、資格情報の設定オプションに使用できます。 URLとリソースタイプで引数として呼び出されたこの関数は、 Request
またはURL文字string
、またはPromise tehereofを返すことになっています。返品値がないと、元のリクエストは変更されません。
• arg0 : string
• Arg1 : ResourceType
string
| void
| Request
| Promise
< string
| Request
>
WebFonts :
string
Webフォントを解決するためのテンプレート。 ol:webfonts
メタデータがスタイルオブジェクトに設定されていない場合、Webフォントを取得する場所を指定するために使用できます。詳細については、 README.md
のgetFonts()
および「フォント処理」セクションを参照してください。
ol-mapbox-style • docs
ResourceType <>:
"Style"
|"Source"
|"Sprite"
|"SpriteImage"
|"Tiles"
|"GeoJSON"
ol-mapbox-style • docs
改名と再輸出が適用されます
ol-mapbox-style • docs
import { MapboxVectorLayer } from 'ol-mapbox-style' ;
単一のベクトルソースを使用するマップボックススタイルに基づくベクトルタイル層。 Mapbox Studioの共有パネルに示されているstyleUrl
とaccessToken
でレイヤーを構成します。スタイルが複数のソースを使用している場合、 source
プロパティを使用して単一のベクトルソースを選択します。レイヤーのサブセットをスタイルでレンダリングする場合は、 layers
プロパティを使用します(すべてのレイヤーが同じベクトルソースを共有する必要があります)。詳細については、コンストラクターオプションを参照してください。
const map = new Map({
view: new View({
center: [0, 0],
zoom: 1,
}),
layers: [
new MapboxVectorLayer({
styleUrl: 'mapbox://styles/mapbox/bright-v9',
accessToken: 'your-mapbox-access-token-here',
}),
],
target: 'map',
});
構成または読み込みエラーで、レイヤーは'error'
イベントをトリガーします。リスナーは、問題の診断に使用できるerror
プロパティを備えたオブジェクトを受け取ります。
メモフルビルドのユーザー: MapboxVectorLayer
には、OLマップボックススタイルのライブラリもロードする必要があります。
オプション。
モジュール:OL/イベント/イベント〜BaseeVent#イベント:エラー
VectorTileLayer
新しいMapboxVectorLayer (
options
):MapboxVectorLayer
•オプション: Options
レイヤーオプション。少なくとも、 styleUrl
とaccessToken
提供する必要があります。
MapboxVectorLayer
VectorTileLayer.constructor
AccessToken :
string
ol-mapbox-style • docs
addMapboxLayer (
mapOrGroup
、mapboxLayer
、beforeLayerId
?):Promise
void
スタイルに新しいマップボックスレイヤーオブジェクトを追加します。マップは再レンダリングされます。
• MaporGroup : Map
| LayerGroup
マップまたはレイヤーグループのapply
が呼び出されました。
• MapBoxLayer : any
マップボックスレイヤーオブジェクト。
• beforeLayerid? : string
追加される新しいレイヤーの前のマップボックスレイヤーのオプションID。
Promise
void
追加されたレイヤーが使用可能な場合に解決します。
ol-mapbox-style • docs
apply (
mapOrGroupOrElement
、style
、options
):Promise
<Map
|LayerGroup
>
Mapbox StyleオブジェクトをOpenLayersマップまたはLayerGroupにロードして適用します。これには、マップの背景、レイヤー、およびマップインスタンスが含まれていますが、ビューはまだ定義されていませんが、中心とズームも含まれます。
例:
import apply from 'ol-mapbox-style' ;
apply ( 'map' , 'mapbox://styles/mapbox/bright-v9' , { accessToken : 'YOUR_MAPBOX_TOKEN' } ) ;
中心とズームは、Mapboxスタイルのドキュメントに存在する場合にのみ設定され、OpenLayersマップにまだ設定されていない場合にのみ設定されます。
レイヤーは、すでにマップに設定されている可能性のあるレイヤーに影響を与えることなく、OpenLayersマップに追加されます。
apply()
によって追加されたレイヤーには、2つの追加プロパティがあります。
mapbox-source
:OpenLayersレイヤーが作成されたというマップボックススタイルのドキュメントのソースのid
。通常、 apply()
レイヤースタックには、その間の異なるソースからのレイヤーがある場合を除き、マップボックススタイルのソースごとに1つのOpenLayersレイヤーを作成します。mapbox-layers
:OpenLayersレイヤーに含まれるMapbox Styleドキュメントのレイヤーのid
s。この関数は、Mapboxスタイルのオブジェクトを保持するOpenLayersマップまたはLayerGroupインスタンスに追加のmapbox-style
プロパティを設定します。
• maporgrouporelement : string
| Map
| LayerGroup
| HTMLElement
既存のOpenLayersマップインスタンス、またはHTML要素、または新しいOpenLayersマップのターゲットまたはレイヤーグループのターゲットとなるHTML要素のIDのいずれか。レイヤーグループの場合、スタイルはマップに触れ、ビューは無視されます。
•スタイル: any
JSONスタイルオブジェクトまたはマップボックススタイルのオブジェクトを指しているスタイルURL。 Mapbox APIを使用する場合、URLはMapbox Studioの「共有」パネルに示されているstyleUrl
です。さらに、 accessToken
オプション(以下を参照)を設定する必要があります。 JSONスタイルのオブジェクトとして渡されると、 apply()
によって作成されたすべてのOpenLayersレイヤーがすぐに利用可能になりますが、それらはまだソースを持っていない場合があります(つまり、Mapbox StyleドキュメントのTilejson URLによって定義されている場合)。スタイルURLとして渡されると、マップボックススタイルのドキュメントがロードされて解析されると、レイヤーがマップに追加されます。
•オプション: Options
= {}
オプション。
Promise
< Map
| LayerGroup
>
すべてのレイヤーがOpenLayers Mapインスタンスまたはレイヤーグループに追加された後に解決される約束は、そのソースが設定され、スタイルが適用されました。 resolve
コールバックは、OpenLayers Mapインスタンスまたはレイヤーグループで引数として呼び出されます。
ol-mapbox-style • docs
ApplyBackground (
mapOrLayer
、glStyle
、options
):Promise
any
Mapbox Styleの最初のbackground
レイヤーのプロパティを、提供されたマップまたはレイヤー(グループ)に適用します。
例:
import { applyBackground } from 'ol-mapbox-style' ;
import { Map } from 'ol' ;
const map = new Map ( { target : 'map' } ) ;
applyBackground ( map , 'https://api.maptiler.com/maps/basic/style.json?key=YOUR_OPENMAPTILES_TOKEN' ) ;
• Maporlayer : Map
| BaseLayer
OpenLayersマップまたはレイヤー(グループ)。
• glstyle : any
マップボックススタイルのオブジェクトまたはURL。
•オプション: Options
= {}
オプション。
Promise
any
背景が適用されたときに解決する約束。
ol-mapbox-style • docs
applystyle (
layer
、glStyle
、sourceOrLayersOrOptions
?、optionsOrPath
?、resolutions
?):Promise
any
)
ol/layer/VectorTile
またはOL ol/source/VectorTile
またはol/source/Vector
ol/layer/Vector
にスタイル関数を適用します。レイヤーがまだソースを持っていない場合、 glStyle
の情報から作成されて入力されます( updateSource
がfalse
に設定されていない限り)。
例:
import { applyStyle } from 'ol-mapbox-style' ;
import { VectorTile } from 'ol/layer.js' ;
const layer = new VectorTile ( { declutter : true } ) ;
applyStyle ( layer , 'https://api.maptiler.com/maps/basic/style.json?key=YOUR_OPENMAPTILES_TOKEN' ) ;
スタイル関数は、最初のレイヤーのソース、指定されたsource
、または同じソースからのレイヤーのサブセットを使用するglStyle
オブジェクトからすべてのレイヤーをレンダリングします。ソースは"type": "vector"
または"type": "geojson"
ソースである必要があります。
提供されたレイヤーに2つの追加プロパティが設定されます。
mapbox-source
:OpenLayersレイヤーが作成されたというマップボックススタイルのドキュメントのソースのid
。通常、 apply()
レイヤースタックには、その間の異なるソースからのレイヤーがある場合を除き、マップボックススタイルのソースごとに1つのOpenLayersレイヤーを作成します。mapbox-layers
:OpenLayersレイヤーに含まれるMapbox Styleドキュメントのレイヤーのid
s。•レイヤー: VectorLayer
< VectorSource
any
、 any
> | VectorTileLayer
< VectorTile
any
、 any
>
OpenLayersレイヤー。レイヤーにソースが構成されている場合、Glstyleのsource
から構成を使用するように変更されます。レイヤーのソースで指定されたオプションは、 url
とtileUrlFunction
を除き、Glstyleのsource
からのオプションをオーバーライドします。ソース投影がデフォルト( EPSG:3857
)の場合、 tileGrid
もオーバーライドされます。 ol-mapboxスタイルのソースを変更したくない場合は、 updateSource: false
オプションでapplyStyle()
を構成します。
• glstyle : any
マップボックススタイルのオブジェクト。
• sourceorerersoroptions? : string
| string
[] | Options
& ApplyStyleOptions
= ''
Mapbox Styleオブジェクトからのオプションまたはsource
キーまたはレイヤーid
の配列。 source
キーが提供されると、指定されたソースのすべてのレイヤーがスタイル関数に含まれます。レイヤーid
が提供される場合、それらは同じソースを使用するレイヤーからのものでなければなりません。提供されていない場合、またはFalsey値が提供されていない場合、Glstyleで指定された最初のソースを使用するすべてのレイヤーがレンダリングされます。
• optionsorpath? : string
| Options
& ApplyStyleOptions
= {}
非推奨。オプション。または、スタイルファイルのパス(スタイルの"sprite"
プロパティに相対パスが使用される場合にのみ必要です)。
•解決策? : number
[] = undefined
非推奨。解像度をマッピングするための解像度は、ズームレベルをズームします。標準以外のタイルグリッドまたはプロジェクションを使用するときにのみ必要な場合のみ、オプションを提供することもできます。
Promise
any
スタイルをレンダリングに使用できるときに解決される約束。
ol-mapbox-style • docs
getFeaturestate (
mapOrLayer
、feature
):any
機能状態を設定または削除します。特徴状態は、機能のプロパティと同様に、スタイリングを考慮しており、選択した機能を異なる方法で条件付きにレンダリングするために使用できます。
• Maporlayer : Map
| VectorLayer
< VectorSource
any
、 any
> | VectorTileLayer
< VectorTile
any
、 any
>
機能状態をオンに設定するためのマップまたはレイヤー。
•機能: FeatureIdentifier
機能識別子。
any
特徴状態またはnull
指定された機能識別子に対して機能状態が設定されていない場合。
ol-mapbox-style • docs
getLayer (
map
、layerId
):Layer
<Source
、LayerRenderer
<any
>>
提供されたマップボックススタイルのlayer
含むOpenLayersレイヤーインスタンスを取得します。複数のマップボックススタイルのレイヤーは、同じマップボックススタイルのsource
を使用するときに、単一のOpenLayersレイヤーインスタンスに組み合わされていることに注意してください。
•マップ: Map
| LayerGroup
OpenLayersマップまたはレイヤーグループ。
•レイリド: string
マップボックススタイルのレイヤーID。
Layer
< Source
、 LayerRenderer
< any
>>
OpenLayersレイヤーインスタンス。
ol-mapbox-style • docs
getLayers (
map
、sourceId
):Layer
<Source
、LayerRenderer
<any
>> []
提供されたマップボックススタイルのsource
のOpenLayersレイヤーインスタンスを取得します。
•マップ: Map
| LayerGroup
OpenLayersマップまたはレイヤーグループ。
• SourceID : string
マップボックススタイルのソースID。
Layer
< Source
、 LayerRenderer
< any
>> []
OpenLayersレイヤーインスタンス。
ol-mapbox-style • docs
getMapboxLayer (
mapOrGroup
、layerId
):any
提供されたlayerId
のマップボックスレイヤーオブジェクトを取得します。
• MaporGroup : Map
| LayerGroup
マップまたはレイヤーグループ。
•レイリド: string
マップボックスレイヤーID。
any
マップボックスレイヤーオブジェクト。
ol-mapbox-style • docs
GetSource (
map
、sourceId
):Source
提供されたマップボックススタイルのsource
のOpenLayersソースインスタンスを取得します。
•マップ: Map
| LayerGroup
OpenLayersマップまたはレイヤーグループ。
• SourceID : string
マップボックススタイルのソースID。
Source
OpenLayersソースインスタンス。
ol-mapbox-style • docs
getStyleforLayer (
feature
、resolution
、olLayer
、layerId
):Style
[]
特定のマップボックスレイヤーのみのスタイルを取得します。これは、伝説を作成するのに役立ちます。
•機能: RenderFeature
| Feature
Geometry
OpenLayers機能。
•解決策: number
解像度を表示します。
• Ollayer : VectorLayer
< VectorSource
any
、 any
> | VectorTileLayer
< VectorTile
any
、 any
>
OpenLayersレイヤー。
•レイリド: string
マップボックスレイヤーのIDは、のスタイルを取得する
Style
[]
提供されたマップボックスレイヤーのスタイル。
ol-mapbox-style • docs
RecordStylElayer (
record
):void
マップボックススタイルのlayer
の録音をオン /オフにします。オンにすると、レンダリングされた機能が属するレイヤーが機能のmapbox-layer
プロパティとして設定されます。
•記録: boolean
= false
スタイルレイヤーの記録がオンになっています。
void
ol-mapbox-style • docs
RemovemapboxLayer (
mapOrGroup
、mapboxLayerIdOrLayer
):void
スタイルからマップボックスレイヤーオブジェクトを削除します。マップは再レンダリングされます。
• MaporGroup : Map
| LayerGroup
マップまたはレイヤーグループのapply
が呼び出されました。
• MapboxLayeridorlayer : any
マップボックスレイヤーIDまたはマップボックスレイヤーオブジェクト。
void
ol-mapbox-style • docs
rendertransparent (
enabled
):void
透明なスタイルの機能をレンダリングするかどうかを構成します。 true
に設定すると、 ol/layer/Layer#getFeatures()
またはol/Map#getFeaturesAtPixel()
を使用して、ポリゴンの透明な塗りつぶしなど、見えないコンテンツを検出することが可能になります。
•有効化: boolean
透明な要素のレンダリングが有効になっています。デフォルトはfalse
です。
void
ol-mapbox-style • docs
setfeaturestate (
mapOrLayer
、feature
、state
):void
機能状態を設定または削除します。特徴状態は、機能のプロパティと同様に、スタイリングを考慮しており、選択した機能を異なる方法で条件付きにレンダリングするために使用できます。
特徴状態は、 mapbox-featurestate
プロパティの特徴識別子と一致するOpenLayersレイヤーに保存されます。
• Maporlayer : Map
| VectorLayer
< VectorSource
any
、 any
> | VectorTileLayer
< VectorTile
any
、 any
>
OpenLayersマップまたはレイヤー機能状態を設定します。
•機能: FeatureIdentifier
機能識別子。
•状態: any
機能状態。機能状態を削除するためにnull
に設定します。
void
ol-mapbox-style • docs
StyleFunction (
olLayer
、glStyle
、sourceOrLayers
、resolutions
、spriteData
、spriteImageUrl
、getFonts
、getImage
?、...args
?):StyleFunction
指定されたsource
を使用するすべてのレイヤーのglStyle
オブジェクトからスタイル関数を作成します。これは、 "type": "vector"
または"type": "geojson"
ソースである必要があります。
提供されたレイヤーに2つの追加プロパティが設定されます。
mapbox-source
:OpenLayersレイヤーが作成されたというマップボックススタイルのドキュメントのソースのid
。通常、 apply()
レイヤースタックには、その間の異なるソースからのレイヤーがある場合を除き、マップボックススタイルのソースごとに1つのOpenLayersレイヤーを作成します。mapbox-layers
:OpenLayersレイヤーに含まれるMapbox Styleドキュメントのレイヤーのid
s。この機能は、Webワーカーでも機能します。ワーカーモードでは、メインスレッドはワーカーからのメッセージを聞き、別のメッセージで応答して、スプライト画像の読み込みが機能することを確認する必要があります。
worker . addEventListener ( 'message' , event => {
if ( event . data . action === 'loadImage' ) {
const image = new Image ( ) ;
image . crossOrigin = 'anonymous' ;
image . addEventListener ( 'load' , function ( ) {
createImageBitmap ( image , 0 , 0 , image . width , image . height ) . then ( imageBitmap => {
worker . postMessage ( {
action : 'imageLoaded' ,
image : imageBitmap ,
src : event . data . src
} , [ imageBitmap ] ) ;
} ) ;
} ) ;
image . src = event . data . src ;
}
} ) ;
• Ollayer : VectorLayer
< VectorSource
any
、 any
> | VectorTileLayer
< VectorTile
any
、 any
>
OpenLayersレイヤーにスタイルを適用します。スタイルに加えて、レイヤーは2つのプロパティを取得します。 mapbox-source
レイヤーに使用されるglStyle
のソースのid
となり、 mapbox-layers
glStyle
のレイヤーのid
の配列です。
• glstyle : any
マップボックススタイルのオブジェクト。
• sourceOrlayers : string
| string
[]
source
キーまたはマップボックススタイルのオブジェクトからのレイヤーid
sの配列。 source
キーが提供されると、指定されたソースのすべてのレイヤーがスタイル関数に含まれます。レイヤーid
が提供される場合、それらは同じソースを使用するレイヤーからのものでなければなりません。
•解像度: number
[] = defaultResolutions
解像度をマッピングするための解像度は、ズームレベルをズームします。
• spritedata : any
= undefined
Mapbox Styleオブジェクトのsprite
プロパティで指定されたURLからのスプライトデータ。 Mapboxスタイルのオブジェクトでsprite
プロパティが指定されている場合にのみ必要です。
• spriteimageurl : string
| Request
| Promise
< string
| Request
> = undefined
マップボックススタイルオブジェクトのsprite
プロパティで指定されたスプライト用のスプライト画像URL。 Mapboxスタイルのオブジェクトでsprite
プロパティが指定されている場合にのみ必要です。
• getFonts = undefined
GLスタイルのmetadata['ol:webfonts']
プロパティ(設定されている場合)からフォントスタックとURLテンプレートを受信し、利用可能な(変更された)フォントスタックを返します。フォント名は、マップボックススタイルのオブジェクトで使用される名前です。提供されていない場合、フォントスタックはそのまま使用されます。この関数は、Webフォントのロードにも使用できます。
• getImage? = undefined
画像名の画像またはURLを返す関数。結果がHTMLIMAGEELEMENTである場合、すでにロードする必要があります。レイヤーは、画像の読み込みと処理が終了したときにlayer.changed()を呼び出すために使用できます。この関数は、スプライトではないアイコンに使用するか、スプライトアイコンをオーバーライドすることができます。
•... args? : any
StyleFunction
ol.layer.Vector
またはol.layer.VectorTile
で使用するスタイル関数。
ol-mapbox-style • docs
updatemapboxlayer (
mapOrGroup
、mapboxLayer
):void
スタイルでマップボックスレイヤーオブジェクトを更新します。マップは新しいスタイルで再レンダリングされます。
• MaporGroup : Map
| LayerGroup
マップまたはレイヤーグループのapply
が呼び出されました。
• MapBoxLayer : any
更新されたマップボックスレイヤーオブジェクト。
void
ol-mapbox-style • docs
updatemapboxsource (
mapOrGroup
、id
、mapboxSource
):Promise
Source
スタイルのマップボックスソースオブジェクトを更新します。 OpenLayersのソースが交換され、マップが再レンダリングされます。
• MaporGroup : Map
| LayerGroup
マップまたはレイヤーグループのapply
が呼び出されました。
• ID : string
sources
オブジェクトのソースのキーはリテラルです。
• MapBoxSource : any
マップボックスソースオブジェクト。
Promise
Source
ソースが更新されたときに解決する約束。