لایه یا Layer
شامل یک یا مجموعهای از
Featureهای
مختلفی است که از طریق
متدهای نقشه
که مرتبط با لایه هستند میتوان لایه را مدیریت کرد.
لایهها شامل مجموعهای مختلف از عارضهها نیز میشوند. برای نمونه یک لایه قادر است در برگیرنده یک عارضه نقطهای به همراه عارضههای دیگری از قبیل عارضه چندضلعی نیز باشد. بدین صورت هر لایه به عنوان یک والد برای عارضهها معنی پیدا میکند و مدیریت جزئیات گرافیکی روی نقشه تاحد زیادی راحت و تحت کنترل بیشتری خواهد بود.
هر لایه دارای دو گزینه است که از طریق آن میتوان نمایش عارضهها را بروی نقشه کنترل نمود. گزینههای لایه شامل گزینههایی است که با بکارگیری آنها میتوان در محدوده سطح بزرگنمایی خاص عارضهها را نمایش داده یا آنها را درون خوشههایی دسته بندی کند.
هر لایه شامل layerId
یکتایی است که از طریق این شناسه
میتوان از وجود داشتن لایه با خبر شده و یا آنرا حذف نمود.
minZoom
-
حداقل سطح بزرگنمایی.
minZoom
-
حداکثر سطح بزرگنمایی.
clusterable
-
قابلیت خوشهای برای مجموعهای از نقاط جغرافیایی برای راحتتر
شدن نمایش و دستهبندی بر اساس مقیاس.
clusterStyles
گزینه minZoom
یا maxZoom
اگر به تنهایی
قرار گرفته شوند اشاره به حداقل یا حداکثر سطح بزرگنمایی در نقشه
دارد که لایه مدنظر در آن نمایش داده شود. ولی اگر هر دو مورد
استفاده قرار گیرد نشان از محدودیت نمایش بین دو سطح بزرگنمایی دارد.
اگر minZoom
برابر 14 و maxZoom
برابر 16
باشد. در این صورت عارضههای لایه تنها در بین zoom
یا
سطح بزرگنمایی 14 تا 16 قابل نمایش است.
// Layer is displayed in zoom level 14 to 16.
map.createLayer(
'LAYER_ID',
{ latlng: { lat: 35.7575, lng: 51.41 } }, // Point Feature
{ minZoom: 14, maxZoom: 16 } // Zoom Limitation
)
// Layer is displayed from zoom level 14.
map.createLayer(
'LAYER_ID',
{ latlng: { lat: 35.7575, lng: 51.41 } }, // Point Feature
{ minZoom: 14 }
)
در کد یک عارضه نقطهای توسط متد createLayer ایجاد شده است.
low
medium
hight
استایلهای خوشهبندی شامل سه مقیاس low
(تعداد عارضه
کمتر از 10)، medium
(تعداد عارضه کمتر از 100) و
high
(تعداد عارضه بیشتر از 100) است. که منظور از
تعداد عارضهها مجموع عارضههایی است که مجاور هم و نزدیک به یک
مختصات است.
همجواری عارضهها در زومهای مختلف متفاوت است.
هر سه مقیاس توسط استایل نقطه قابلیت سفارشیسازی شکل ظاهری نقطه را دارد.
map.createLayer(
'LAYER_ID',
// Array of point features.
[
{ latlng: { lat: 35.7575, lng: 51.419 } },
{ latlng: { lat: 35.7575, lng: 51.42 } },
{ latlng: { lat: 35.756, lng: 51.419 } },
{ latlng: { lat: 35.758, lng: 51.429 } },
{ latlng: { lat: 35.7589, lng: 51.419 } },
{ latlng: { lat: 35.753, lng: 51.431 } },
{ latlng: { lat: 35.7575, lng: 51.419 } },
{ latlng: { lat: 35.751, lng: 51.45 } },
{ latlng: { lat: 35.7512, lng: 51.49 } },
{ latlng: { lat: 35.7556, lng: 51.43 } },
],
{
clusterable: true, // The layer can be clustered.
// The medium density of cluster style used.
clusterStyles: {
medium: {
size: { width: 70, height: 70 }, // Using size of cluster icon.
},
},
}
)
در کد یک عارضه نقطهای توسط متد createLayer ایجاد شده و نوع استایل بکار رفته PointStyle است.
متدهای مربوط به مدیریت لایهها بخشی از متدهای نقشه هستند.
createLayer
:
متد ایجاد لایه
یک لایه را از طریق layerId
و یک یا مجموعهای از
Featureهای مختلف ایجاد میکند.
اگر
layerId
تکراری یا از قبل وجود داشته باشد، لایه جدید با عارضههای خود جایگزین آن میشود. گزینههای لایه را میتوان برای کنترل نمایش عارضهها در این متد بکارگرفت.
hasLayer
:
متد صحت وجود لایه
از طریق layerId
قادر است اطلاعاتی را مبنی بر وجود
داشتن لایه ارائه دهد.
hasLayer
:
متد حذف لایه
از طریق layerId
قادر است لایه مربوطه را به همراه
تمامی عارضهها، از نقشه حذف کند.