Buat peta OpenLayers dari objek spesifikasi gaya Mapbox.
Dapatkan kesan tentang apa yang dilakukan perpustakaan ini dengan menjelajahi contoh langsung.
Untuk menggunakan pustaka dalam aplikasi dengan lingkungan dev berbasis NPM, instal dengan
npm install ol-mapbox-style
Saat diinstal dengan cara ini, cukup impor modul gaya OL-Mapbox, seperti pada contoh penggunaan di bawah ini. Untuk menggunakan build mandiri gaya OL-Mapbox, cukup sertakan 'dist/olms.js' di halaman html Anda, dan mengakses fungsi yang diekspor dari objek olms
global (misalnya olms.apply()
, olms.applyBackground()
) . Perhatikan bahwa build mandiri tergantung pada build penuh openlayers.
OL-Mapbox-style> = V9 membutuhkan versi OpenLayers> = 7 .
V8 gaya OL-Mapbox membutuhkan versi OpenLayers> = 6.13.0 <7 .
Lihat bagian API untuk dokumentasi lengkap.
Kode di bawah ini membuat peta OpenLayers dari Mapbox's Bright V9 Style, menggunakan https://
url:
import { apply } from 'ol-mapbox-style' ;
apply ( 'map' , 'https://api.mapbox.com/styles/v1/mapbox/bright-v9?access_token=YOUR_MAPBOX_TOKEN' ) ;
Untuk menetapkan gaya dan sumber ke lapisan saja, gunakan applyStyle()
. mapbox://
URL juga didukung:
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' } ) ;
Untuk menerapkan properti lapisan background
gaya Mapbox ke peta atau lapisan VectorTile
, gunakan fungsi applyBackground()
.
Ada juga API tingkat rendah yang tersedia. Untuk membuat fungsi gaya untuk vektor openlayer individu atau lapisan ubin vektor, gunakan modul 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' ) ;
} ) ;
} ) ;
Perhatikan bahwa API tingkat rendah ini tidak membuat sumber untuk lapisan, dan pekerjaan tambahan diperlukan untuk mengatur penanganan sprite untuk gaya yang menggunakan ikon.
ol-mapbox-style
tidak dapat menggunakan mesin terbang PBF/SDF untuk properti tata letak text-font
, sebagaimana didefinisikan dalam spesifikasi gaya MapBox. Sebaliknya, itu bergantung pada font web. Properti ol:webfonts
Metadata dapat diatur pada akar objek gaya untuk menentukan lokasi untuk webfont, misalnya
{
"version" : 8 ,
"metadata" : {
"ol:webfonts" : "https://my.server/fonts/{font-family}/{fontweight}{-fontstyle}.css"
}
// ...
}
Sebagai alternatif, opsi webfonts
dari fungsi apply()
atau applyStyle()
dapat digunakan.
Placeholder berikut dapat digunakan dalam URL Templat:
{font-family}
: keluarga font css dikonversi menjadi huruf kecil, kosong diganti dengan-, misalnya noto-sans{Font+Family}
: CSS Font Family Dalam kasus asli, kosong diganti dengan+, misalnya noto+sans{fontweight}
: CSS Font Weight (Numeric), misalnya 400, 700{fontstyle}
: gaya font css, misalnya normal, miring{-fontstyle}
: Gaya font CSS selain dari string normal, misalnya atau kosong untuk normal Jika tidak ada properti metadata['ol:webfonts']
tersedia pada objek gaya, font fontsource akan digunakan. Dimungkinkan juga bagi aplikasi untuk memuat font lain, menggunakan CSS. Jika font sudah tersedia di browser, ol-mapbox-style
tidak akan memuatnya.
Karena perbedaan ini, tumpukan font diperlakukan sedikit berbeda dari yang didefinisikan dalam spesifikasi: gaya dan berat diambil dari font utama (yaitu yang pertama di tumpukan font). Font selanjutnya dalam tumpukan font hanya digunakan jika font primer tidak tersedia/dimuat, dan mereka akan digunakan dengan gaya dan berat font utama.
npm run build
File distribusi yang dihasilkan akan berada di folder dist/
. Untuk melihat perpustakaan beraksi, navigasikan ke dist/index.html
.
Untuk menjalankan tes secara lokal, jalankan
npm test
Untuk tes debugging di browser, jalankan
npm run karma
dan buka browser pada host dan port yang ditunjukkan dalam output konsol (biasanya http: // localhost: 9876/) dan klik tombol 'debug' untuk pergi ke lingkungan debug.
ol-Mapbox-style • Docs
ol-Mapbox-style • Docs
Lapisan :
string
[]
Lapisan. Jika tidak ada sumber yang disediakan, lapisan dengan ID yang disediakan akan digunakan dari array layers
gaya. Semua lapisan perlu menggunakan sumber yang sama.
Sumber :
string
Sumber. Default adalah ''
, yang menyebabkan sumber pertama dalam gaya digunakan.
UpdateSource :
boolean
Perbarui atau buat sumber lapisan vektor (ubin) dengan parameter yang ditentukan untuk sumber dalam definisi gaya MapBox.
ol-Mapbox-style • Docs
ID :
string
|number
ID fitur.
Sumber :
string
ID sumber.
ol-Mapbox-style • Docs
AccessToken :
string
Token akses untuk gaya mapbox Anda. Ini harus disediakan untuk mapbox://
URL gaya. Untuk https://
dan URL lainnya, kunci akses apa pun harus menjadi parameter kueri terakhir dari URL gaya.
Latar Belakang :
false
|BackgroundColor
Warna latar belakang untuk lapisan. Jika tidak ditentukan, latar belakang dari objek gaya Mapbox akan digunakan. Diatur ke false
untuk mencegah latar belakang gaya Mapbox digunakan.
ClassName :
string
Nama kelas CSS untuk disetel ke elemen layer.
Declutter :
boolean
Gambar dan teks menyatakan. Decuttering diterapkan pada semua gaya gambar dan teks dari semua vektor dan lapisan vektortil yang telah mengatur ini menjadi true
. Prioritas didefinisikan oleh indeks-z dari lapisan, zIndex
gaya dan urutan render fitur. Indeks Z yang lebih tinggi berarti prioritas yang lebih tinggi. Dalam indeks-Z yang sama, fitur yang diberikan sebelum yang lain memiliki prioritas yang lebih tinggi.
Sebagai optimasi fitur-fitur yang dinyatakan dari lapisan dengan className
yang sama diterjemahkan di atas gaya pengisian dan goresan dari semua lapisan tersebut terlepas dari indeks z. Untuk memilih keluar dari perilaku ini dan menempatkan fitur-fitur Decutterd dengan lapisan mereka sendiri mengkonfigurasi lapisan dengan className
selain ol-layer
.
Luas :
Extent
Batas batas untuk rendering lapisan. Lapisan tidak akan diterjemahkan di luar sejauh ini.
Lapisan :
string
[]
Batas rendering ke daftar lapisan yang disertakan. Semua lapisan harus berbagi sumber vektor yang sama. Jika gaya Anda menggunakan lebih dari satu sumber, Anda perlu menggunakan properti source
atau properti layers
untuk membatasi rendering ke satu sumber vektor.
Peta :
Map
Mengatur lapisan sebagai overlay pada peta. Peta tidak akan mengelola lapisan ini dalam koleksi lapisannya, dan lapisan akan diterjemahkan di atas. Ini berguna untuk lapisan sementara. Cara standar untuk menambahkan lapisan ke peta dan dikelola oleh peta adalah dengan menggunakan map.addLayer()
.
MaxResolution :
number
Resolusi maksimum (eksklusif) di bawah ini lapisan ini akan terlihat. Jika maxResolution
maupun minZoom
tidak didefinisikan, maxResolution
Lapisan tidak akan cocok dengan minzoom
Sumber Gaya.
Maxzoom :
number
Level zoom tampilan maksimum (inklusif) di mana lapisan ini akan terlihat.
MinResolution :
number
Resolusi minimum (inklusif) di mana lapisan ini akan terlihat.
Minzoom :
number
Level zoom tampilan minimum (eksklusif) di atas lapisan ini akan terlihat. Jika maxResolution
maupun minZoom
tidak didefinisikan, minZoom
Lapisan tidak akan cocok dengan minzoom
Sumber Gaya.
Opacity :
number
Opacity (0, 1).
Preload :
number
Preload. Muat ubin resolusi rendah hingga level preload
. 0
berarti tidak ada preloading.
Properti :
object
Sifat yang dapat diamati sewenang -wenang. Dapat diakses dengan #get()
dan #set()
.
RenderBuffer :
number
Buffer dalam piksel di sekitar tingkat ubin yang digunakan oleh renderer saat mendapatkan fitur dari ubin vektor untuk render atau deteksi hit. Nilai yang Disarankan: Ubin vektor biasanya dihasilkan dengan buffer, sehingga nilai ini harus cocok dengan buffer terbesar dari ubin yang digunakan. Itu harus setidaknya ukuran simbol titik terbesar atau lebar garis.
rendermode :
VectorTileRenderType
Mode render untuk ubin vektor:
'hybrid'
: Elemen poligon dan garis diterjemahkan sebagai gambar, sehingga piksel diskalakan selama animasi zoom. Simbol titik dan teks secara akurat diterjemahkan sebagai vektor dan dapat tetap tegak pada tampilan yang diputar.'vector'
: Semuanya diterjemahkan sebagai vektor. Gunakan mode ini untuk peningkatan kinerja pada lapisan ubin vektor dengan hanya beberapa fitur yang diberikan (misalnya untuk menyoroti subset fitur lapisan lain dengan sumber yang sama). Renderorder :
OrderFunction
Ketertiban. Fungsi untuk digunakan saat menyortir fitur sebelum rendering. Fitur secara default ditarik dalam urutan yang dibuat. Gunakan null
untuk menghindari jenisnya, tetapi dapatkan pesanan penarikan yang tidak ditentukan.
Sumber :
string
Jika gaya Anda menggunakan lebih dari satu sumber, Anda perlu menggunakan properti source
atau properti layers
untuk membatasi rendering ke satu sumber vektor. Properti source
sesuai dengan ID sumber vektor dalam gaya Mapbox Anda.
StyleUrl :
string
URL objek gaya Mapbox untuk digunakan untuk lapisan ini. Untuk gaya yang dibuat dengan Mapbox Studio dan di-host di MapBox, ini akan terlihat seperti 'MapBox: // Styles/You/Your-style'.
UPDATEWHILEANIMATING :
boolean
Saat diatur ke true
, fitur batch akan diciptakan kembali selama animasi. Ini berarti bahwa tidak ada vektor yang akan ditampilkan terpotong, tetapi pengaturan akan memiliki dampak kinerja untuk sejumlah besar data vektor. Saat diatur ke false
, batch akan diciptakan kembali ketika tidak ada animasi yang aktif.
UPDATEWHILE INTERACTING :
boolean
Saat diatur ke true
, fitur batch akan diciptakan kembali selama interaksi. Lihat juga updateWhileAnimating
.
UseInterImtilesonError :
boolean
Gunakan ubin sementara pada kesalahan.
Terlihat :
boolean
Visibilitas.
Zindex :
number
Z-index untuk rendering lapisan. Pada waktu rendering, lapisan akan dipesan, pertama oleh z-index dan kemudian dengan posisi. Ketika undefined
, zIndex
dari 0 diasumsikan untuk lapisan yang ditambahkan ke koleksi layers
peta, atau Infinity
ketika metode setMap()
layer digunakan.
ol-Mapbox-style • Docs
AccessToken :
string
Akses token untuk URL 'MapBox: //'.
AccessTokenParam :
string
Akses Token Param. Untuk penggunaan internal.
getImage : (
arg0
,arg1
) =>string
|HTMLCanvasElement
|HTMLImageElement
Fungsi yang mengembalikan gambar untuk nama ikon. Jika hasilnya adalah HTMlimageElement, itu harus sudah dimuat. Lapisan dapat digunakan untuk memanggil lapisan. Berubah () Ketika pemuatan dan pemrosesan gambar telah selesai. Fungsi ini digunakan untuk ikon yang tidak ada di sprite atau untuk mengganti ikon sprite.
• arg0 : VectorLayer
< VectorSource
any
, any
VectorTileLayer
< VectorTile
any
, any
>
• arg1 : string
string
| HTMLCanvasElement
| HTMLImageElement
Proyeksi :
string
Hanya berguna saat bekerja dengan proyeksi non-standar. Kode proyeksi terdaftar dengan OpenLayers. Semua sumber gaya harus disediakan dalam proyeksi ini. Proyeksi juga harus memiliki tingkat yang valid yang ditentukan, yang akan digunakan untuk menentukan asal dan resolusi grid ubin untuk semua sumber ubin gaya. Ketika disediakan, placeholder bbox di URL ubin dan geojson berubah: standarnya adalah {bbox-epsg-3857}
, ketika proyeksi misalnya diatur ke EPSG:4326
, placeholder bbox akan {bbox-epsg-4326}
.
Resolusi :
number
[]
Hanya berguna saat bekerja dengan proyeksi non-standar. Resolusi untuk pemetaan resolusi ke zoom
yang digunakan dalam gaya MapBox.
StyleUrl :
string
URL gaya Mapbox GL. Diperlukan untuk gaya yang disediakan sebagai objek, ketika mengandung URL sprite relatif, atau sumber yang merujuk data berdasarkan URL relatif.
TransformRequest : (
arg0
,arg1
) =>string
|void
|Request
|Promise
<string
|Request
>
Fungsi untuk mengendalikan bagaimana ol-mapbox-style
mengambil sumber daya. Dapat digunakan untuk memodifikasi URL, menambahkan header atau mengatur opsi kredensial. Dipanggil dengan URL dan tipe sumber daya sebagai argumen, fungsi ini seharusnya mengembalikan Request
atau string
URL, atau janji di suatu tempat. Tanpa nilai pengembalian permintaan asli tidak akan dimodifikasi.
• arg0 : string
• arg1 : ResourceType
string
| void
| Request
| Promise
< string
| Request
>
Webfonts :
string
Templat untuk menyelesaikan webfont. Dapat digunakan untuk menentukan tempat untuk mengambil font web ketika tidak ada ol:webfonts
metadata diatur dalam objek gaya. Lihat getFonts()
dan bagian "penanganan font" di README.md
untuk detailnya.
ol-Mapbox-style • Docs
ResourCetype <>:
"Style"
|"Source"
|"Sprite"
|"SpriteImage"
|"Tiles"
|"GeoJSON"
ol-Mapbox-style • Docs
Ganti nama dan ekspor kembali berlaku
ol-Mapbox-style • Docs
import { MapboxVectorLayer } from 'ol-mapbox-style' ;
Lapisan ubin vektor berdasarkan gaya mapbox yang menggunakan sumber vektor tunggal. Konfigurasikan lapisan dengan styleUrl
dan accessToken
yang ditampilkan di panel berbagi Mapbox Studio. Jika gaya menggunakan lebih dari satu sumber, gunakan properti source
untuk memilih sumber vektor tunggal. Jika Anda ingin membuat subset lapisan dalam gaya, gunakan properti layers
(semua lapisan harus berbagi sumber vektor yang sama). Lihat opsi konstruktor untuk lebih detail.
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',
});
Pada kesalahan konfigurasi atau pemuatan, lapisan akan memicu peristiwa 'error'
. Pendengar akan menerima objek dengan properti error
yang dapat digunakan untuk mendiagnosis masalah.
CATATAN UNTUK PENGGUNA BANGUNAN LENGKAP : MapboxVectorLayer
mengharuskan pustaka gaya OL-Mapbox juga dimuat.
Opsi.
Modul: OL/Events/Event ~ BaseEvent#Event: Kesalahan
VectorTileLayer
MapboxVectorLayer baru (
options
):MapboxVectorLayer
• Opsi : Options
Opsi Lapisan. Minimal, styleUrl
dan accessToken
harus disediakan.
MapboxVectorLayer
VectorTileLayer.constructor
AccessToken :
string
ol-Mapbox-style • Docs
AddMapBoxLayer (
mapOrGroup
,mapboxLayer
,beforeLayerId
?):Promise
void
Tambahkan objek Lapisan Mapbox baru ke gaya. Peta akan dirender ulang.
• MaporGroup : Map
| LayerGroup
Peta atau LayerGroup apply
dipanggil.
• Mapboxlayer : any
Objek Lapisan Mapbox.
• Beforelayerid? : string
ID opsional dari lapisan Mapbox sebelum lapisan baru yang akan ditambahkan.
Promise
void
Menyelesaikan saat lapisan yang ditambahkan tersedia.
ol-Mapbox-style • Docs
Terapkan (
mapOrGroupOrElement
,style
,options
):Promise
<Map
|LayerGroup
>
Memuat dan menerapkan objek gaya Mapbox ke peta OpenLayers atau LayerGroup. Ini termasuk latar belakang peta, lapisan, dan untuk contoh peta yang tidak memiliki tampilan yang ditentukan namun juga pusat dan zoom.
Contoh:
import apply from 'ol-mapbox-style' ;
apply ( 'map' , 'mapbox://styles/mapbox/bright-v9' , { accessToken : 'YOUR_MAPBOX_TOKEN' } ) ;
Pusat dan zoom hanya akan diatur jika ada dalam dokumen gaya Mapbox, dan jika belum diatur pada peta OpenLayers.
Lapisan akan ditambahkan ke peta OpenLayers, tanpa mempengaruhi lapisan apa pun yang mungkin sudah ditetapkan pada peta.
Lapisan yang ditambahkan oleh apply()
akan memiliki dua properti tambahan:
mapbox-source
: id
dari sumber dokumen gaya Mapbox yang dibuat oleh lapisan OpenLayers. Biasanya apply()
membuat satu lapisan OpenLayers per sumber gaya Mapbox, kecuali tumpukan lapisan memiliki lapisan dari berbagai sumber di antaranya.mapbox-layers
: id
dari lapisan dokumen gaya Mapbox yang termasuk dalam lapisan OpenLayers. Fungsi ini menetapkan properti mapbox-style
tambahan pada peta OpenLayers atau instance LayerGroup, yang memegang objek gaya MapBox.
• MaporGrouporElement : string
| Map
| LayerGroup
| HTMLElement
Baik instance peta OpenLayers yang ada, atau elemen HTML, atau ID elemen HTML yang akan menjadi target peta OpenLayers baru, atau grup layer. Jika Layer Group, gaya yang diulang ke peta dan tampilan akan diabaikan.
• Gaya : any
Objek gaya JSON atau URL Gaya menunjuk ke objek gaya Mapbox. Saat menggunakan API Mapbox, URL adalah styleUrl
yang ditampilkan di panel "Bagikan" Mapbox Studio. Selain itu, opsi accessToken
(lihat di bawah) harus diatur. Ketika dilewatkan sebagai objek gaya JSON, semua lapisan OpenLayers yang dibuat oleh apply()
akan segera tersedia, tetapi mereka mungkin belum memiliki sumber (yaitu ketika mereka ditentukan oleh URL tilejson dalam dokumen gaya Mapbox). Ketika dilewatkan sebagai URL gaya, lapisan akan ditambahkan ke peta ketika dokumen gaya MapBox dimuat dan diuraikan.
• Opsi : Options
= {}
Opsi.
Promise
< Map
| LayerGroup
>
Janji yang menyelesaikan setelah semua lapisan telah ditambahkan ke instance peta OpenLayers atau LayerGroup, sumber mereka ditetapkan, dan gaya mereka diterapkan. Callback resolve
akan dipanggil dengan instance peta OpenLayers atau LayerGroup sebagai argumen.
ol-Mapbox-style • Docs
Applybackground (
mapOrLayer
,glStyle
,options
):Promise
any
Menerapkan properti dari lapisan background
gaya Mapbox pertama ke peta atau lapisan yang disediakan (grup).
Contoh:
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 peta atau layer (grup).
• Glstyle : any
Objek atau URL Gaya Mapbox.
• Opsi : Options
= {}
Opsi.
Promise
any
Janji yang diselesaikan saat latar belakang diterapkan.
ol-Mapbox-style • Docs
ApplyStyle (
layer
,glStyle
,sourceOrLayersOrOptions
?,optionsOrPath
?,resolutions
?):Promise
any
Menerapkan fungsi gaya untuk ol/layer/VectorTile
atau ol/layer/Vector
dengan ol/source/VectorTile
atau ol/source/Vector
. Jika lapisan belum memiliki sumber, itu akan dibuat dan diisi dari informasi di glStyle
(kecuali jika updateSource
diatur ke false
).
Contoh:
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' ) ;
Fungsi gaya akan membuat semua lapisan dari objek glStyle
yang menggunakan sumber lapisan pertama, source
yang ditentukan, atau subset lapisan dari sumber yang sama. Sumber harus menjadi "type": "vector"
atau "type": "geojson"
sumber.
Dua properti tambahan akan ditetapkan pada lapisan yang disediakan:
mapbox-source
: id
dari sumber dokumen gaya Mapbox yang dibuat oleh lapisan OpenLayers. Biasanya apply()
membuat satu lapisan OpenLayers per sumber gaya Mapbox, kecuali tumpukan lapisan memiliki lapisan dari berbagai sumber di antaranya.mapbox-layers
: id
dari lapisan dokumen gaya Mapbox yang termasuk dalam lapisan OpenLayers. • Lapisan : VectorLayer
< VectorSource
any
, any
> | VectorTileLayer
< VectorTile
any
, any
>
Lapisan OpenLayers. Ketika lapisan memiliki sumber yang dikonfigurasi, itu akan dimodifikasi untuk menggunakan konfigurasi dari source
Glstyle. Opsi yang ditentukan pada sumber lapisan akan mengesampingkan yang dari source
Glstyle, kecuali url
dan tileUrlFunction
. Ketika proyeksi sumber adalah default ( EPSG:3857
), tileGrid
juga akan ditimpa. Jika Anda lebih suka tidak memiliki gaya OL-Mapbox yang memodifikasi sumbernya, konfigurasikan applyStyle()
dengan opsi updateSource: false
.
• Glstyle : any
Objek Gaya Mapbox.
• SourceOrlayersoroptions? : string
| string
[] | Options
& ApplyStyleOptions
= ''
Opsi atau kunci source
atau array Layer id
dari objek gaya Mapbox. Ketika kunci source
disediakan, semua lapisan untuk sumber yang ditentukan akan dimasukkan dalam fungsi gaya. Ketika Layer id
disediakan, mereka harus dari lapisan yang menggunakan sumber yang sama. Ketika tidak disediakan atau nilai palsu, semua lapisan menggunakan sumber pertama yang ditentukan dalam glstyle akan diberikan.
• Option ataupath? : string
| Options
& ApplyStyleOptions
= {}
Tercerahkan . Opsi. Atau jalur file gaya (hanya diperlukan ketika jalur relatif digunakan untuk properti "sprite"
gaya).
• Resolusi? : number
[] = undefined
Tercerahkan . Resolusi untuk pemetaan resolusi ke tingkat zoom. Hanya diperlukan saat bekerja dengan kisi atau proyeksi ubin non-standar, juga dapat disediakan dengan opsi.
Promise
any
Janji yang akan diselesaikan saat gaya dapat digunakan untuk rendering.
ol-Mapbox-style • Docs
getFeatureState (
mapOrLayer
,feature
):any
Set atau menghapus keadaan fitur. Keadaan fitur diperhitungkan untuk penataan, sama seperti properti fitur, dan dapat digunakan misalnya untuk secara kondisional membuat fitur yang dipilih secara berbeda.
• Maporlayer : Map
| VectorLayer
< VectorSource
any
, any
> | VectorTileLayer
< VectorTile
any
, any
>
Peta atau lapisan untuk mengatur status fitur.
• fitur : FeatureIdentifier
Pengidentifikasi fitur.
any
Status fitur atau null
ketika tidak ada status fitur yang ditetapkan untuk pengidentifikasi fitur yang diberikan.
ol-Mapbox-style • Docs
getLayer (
map
,layerId
):Layer
<Source
,LayerRenderer
any
>
Dapatkan instance lapisan OpenLayers yang berisi layer
gaya Mapbox yang disediakan. Perhatikan bahwa beberapa lapisan gaya MapBox digabungkan dalam satu instance lapisan OpenLayers tunggal ketika mereka menggunakan source
gaya Mapbox yang sama.
• Peta : Map
| LayerGroup
OpenLayers Map atau LayerGroup.
• Layerid : string
ID Lapisan Gaya Mapbox.
Layer
< Source
, LayerRenderer
any
>
Instance Lapisan OpenLayers.
ol-Mapbox-style • Docs
getLayers (
map
,sourceId
):Layer
<Source
,LayerRenderer
any
[]
Dapatkan instance lapisan OpenLayers untuk source
gaya Mapbox yang disediakan.
• Peta : Map
| LayerGroup
OpenLayers Map atau LayerGroup.
• SourceId : string
ID Sumber Gaya Mapbox.
Layer
< Source
, LayerRenderer
< any
>> []
Instance Lapisan OpenLayers.
ol-Mapbox-style • Docs
getMapboxlayer (
mapOrGroup
,layerId
):any
Dapatkan objek lapisan Mapbox untuk layerId
yang disediakan.
• MaporGroup : Map
| LayerGroup
Peta atau LayerGroup.
• Layerid : string
ID Lapisan Mapbox.
any
Objek Lapisan Mapbox.
ol-Mapbox-style • Docs
getsource (
map
,sourceId
):Source
Dapatkan contoh sumber OpenLayers untuk source
gaya Mapbox yang disediakan.
• Peta : Map
| LayerGroup
OpenLayers Map atau LayerGroup.
• SourceId : string
ID Sumber Gaya Mapbox.
Source
Instance Sumber OpenLayers.
ol-Mapbox-style • Docs
getStyleForLayer (
feature
,resolution
,olLayer
,layerId
):Style
[]
Dapatkan gaya untuk lapisan Mapbox tertentu saja. Ini bisa berguna untuk membuat legenda.
• Fitur : RenderFeature
| Feature
Geometry
Fitur OpenLayers.
• Resolusi : number
Lihat Resolusi.
• ollayer : VectorLayer
< VectorSource
any
, any
> | VectorTileLayer
< VectorTile
any
, any
>
Lapisan OpenLayers.
• Layerid : string
ID dari lapisan Mapbox untuk mendapatkan gaya
Style
[]
Gaya untuk lapisan Mapbox yang disediakan.
ol-Mapbox-style • Docs
Recordstylelayer (
record
):void
Menghidupkan perekaman layer
gaya Mapbox. Saat dihidupkan, lapisan yang dimiliki fitur yang diberikan akan ditetapkan sebagai properti mapbox-layer
fitur.
• Rekam : boolean
= false
Rekaman lapisan gaya menyala.
void
ol-Mapbox-style • Docs
Removemapboxlayer (
mapOrGroup
,mapboxLayerIdOrLayer
):void
Hapus objek lapisan Mapbox dari gaya. Peta akan dirender ulang.
• MaporGroup : Map
| LayerGroup
Peta atau LayerGroup apply
dipanggil.
• mapboxlayeridorlayer : any
ID Lapisan Mapbox atau Objek Lapisan Mapbox.
void
ol-Mapbox-style • Docs
renderTransparent (
enabled
):void
Konfigurasikan apakah fitur dengan gaya transparan harus diberikan. Saat diatur ke true
, dimungkinkan untuk menekan konten mendeteksi yang tidak terlihat, seperti pengisian poligon transparan, menggunakan ol/layer/Layer#getFeatures()
atau ol/Map#getFeaturesAtPixel()
• Diaktifkan : boolean
Rendering elemen transparan diaktifkan. Default false
.
void
ol-Mapbox-style • Docs
SetFeatureState (
mapOrLayer
,feature
,state
):void
Set atau menghapus keadaan fitur. Keadaan fitur diperhitungkan untuk penataan, sama seperti properti fitur, dan dapat digunakan misalnya untuk secara kondisional membuat fitur yang dipilih secara berbeda.
Status fitur akan disimpan di lapisan OpenLayers yang cocok dengan pengidentifikasi fitur, di properti mapbox-featurestate
.
• Maporlayer : Map
| VectorLayer
< VectorSource
any
, any
> | VectorTileLayer
< VectorTile
any
, any
>
OpenLayers peta atau layer untuk mengatur status fitur.
• fitur : FeatureIdentifier
Pengidentifikasi fitur.
• menyatakan : any
Status fitur. Setel ke null
untuk menghapus status fitur.
void
ol-Mapbox-style • Docs
StyleFunction (
olLayer
,glStyle
,sourceOrLayers
,resolutions
,spriteData
,spriteImageUrl
,getFonts
,getImage
?, ...args
?):StyleFunction
Membuat fungsi gaya dari objek glStyle
untuk semua lapisan yang menggunakan source
yang ditentukan, yang perlu menjadi "type": "vector"
atau "type": "geojson"
sumber dan menerapkannya pada lapisan openlayer yang ditentukan.
Dua properti tambahan akan ditetapkan pada lapisan yang disediakan:
mapbox-source
: id
dari sumber dokumen gaya Mapbox yang dibuat oleh lapisan OpenLayers. Biasanya apply()
membuat satu lapisan OpenLayers per sumber gaya Mapbox, kecuali tumpukan lapisan memiliki lapisan dari berbagai sumber di antaranya.mapbox-layers
: id
dari lapisan dokumen gaya Mapbox yang termasuk dalam lapisan OpenLayers.Fungsi ini juga berfungsi dalam pekerja web. Dalam mode pekerja, utas utama perlu mendengarkan pesan dari pekerja dan merespons dengan pesan lain untuk memastikan bahwa pemuatan gambar sprite berfungsi:
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
>
Lapisan OpenLayers untuk menerapkan gaya. Selain gaya, lapisan akan mendapatkan dua properti: mapbox-source
akan menjadi id
dari sumber glStyle
yang digunakan untuk lapisan, dan mapbox-layers
akan menjadi array id
S dari lapisan glStyle
.
• Glstyle : any
Objek Gaya Mapbox.
• Sourceorlayers : string
| string
[]
Kunci source
atau array Layer id
dari objek gaya Mapbox. Ketika kunci source
disediakan, semua lapisan untuk sumber yang ditentukan akan dimasukkan dalam fungsi gaya. Ketika Layer id
disediakan, mereka harus dari lapisan yang menggunakan sumber yang sama.
• Resolusi : number
[] = defaultResolutions
Resolusi untuk pemetaan resolusi ke tingkat zoom.
• spritedata : any
= undefined
Data sprite dari URL yang ditentukan dalam properti sprite
objek gaya Mapbox. Hanya diperlukan jika properti sprite
ditentukan dalam objek gaya Mapbox.
• SpriteImageUrl : string
| Request
| Promise
< string
| Request
> = undefined
URL gambar sprite untuk sprite yang ditentukan dalam properti sprite
objek gaya Mapbox. Hanya diperlukan jika properti sprite
ditentukan dalam objek gaya Mapbox.
• getFonts = undefined
Fungsi yang menerima tumpukan font dan templat URL dari properti metadata['ol:webfonts']
(jika diatur) sebagai argumen, dan mengembalikan tumpukan font (dimodifikasi) yang tersedia. Nama font adalah nama yang digunakan dalam objek gaya Mapbox. Jika tidak disediakan, tumpukan font akan digunakan apa adanya. Fungsi ini juga dapat digunakan untuk memuat font web.
• getImage? = undefined
Fungsi yang mengembalikan gambar atau URL untuk nama gambar. Jika hasilnya adalah HTMlimageElement, itu harus sudah dimuat. Lapisan dapat digunakan untuk memanggil lapisan. Berubah () Ketika pemuatan dan pemrosesan gambar telah selesai. Fungsi ini dapat digunakan untuk ikon yang tidak ada di sprite atau untuk mengganti ikon sprite.
• ... Args? : any
StyleFunction
Fungsi gaya untuk digunakan di ol.layer.Vector
atau ol.layer.VectorTile
.
ol-Mapbox-style • Docs
UpdateMapboxlayer (
mapOrGroup
,mapboxLayer
):void
Perbarui objek Lapisan Mapbox dalam gaya. Peta akan diserahkan kembali dengan gaya baru.
• MaporGroup : Map
| LayerGroup
Peta atau LayerGroup apply
dipanggil.
• Mapboxlayer : any
Objek Lapisan Mapbox yang Diperbarui.
void
ol-Mapbox-style • Docs
UpdateMapBoxSource (
mapOrGroup
,id
,mapboxSource
):Promise
Source
Memperbarui objek sumber Mapbox dalam gaya. Sumber OpenLayers yang menurut akan diganti dan peta akan diserahkan kembali.
• MaporGroup : Map
| LayerGroup
Peta atau LayerGroup apply
dipanggil.
• ID : string
Kunci sumber dalam sources
objek secara literal.
• Mapboxsource : any
Objek Sumber Mapbox.
Promise
Source
Janji yang diselesaikan ketika sumber telah diperbarui.