Android için Haritalar SDK'sı Stil Referansı

Platform seçin: Android iOS JavaScript

Stil seçenekleriyle standart Google harita stillerinin sunumunu özelleştirebilir, yollar, parklar, işletmeler ve diğer önemli yerler gibi özelliklerin görsel görünümünü değiştirebilirsiniz. Bu özelliklerin tarzını değiştirebileceğiniz gibi, özellikleri de tamamen gizleyebilirsiniz. Bu sayede, haritanın belirli bileşenlerini vurgulayabilir veya haritanın etrafındaki sayfanın tarzını tamamlamasını sağlayabilirsiniz.

Örnekler

Aşağıdaki JSON stil beyanı, tüm harita özelliklerini gri yapar, ana yol geometrisini mavi renkte gösterir ve yatay etiketleri tamamen gizler:

[
  {
    "featureType": "all",
    "stylers": [
      { "color": "#C0C0C0" }
    ]
  },{
    "featureType": "road.arterial",
    "elementType": "geometry",
    "stylers": [
      { "color": "#CCFFFF" }
    ]
  },{
    "featureType": "landscape",
    "elementType": "labels",
    "stylers": [
      { "visibility": "off" }
    ]
  }
]

JSON nesnesi

JSON stilinde beyan aşağıdaki öğelerden oluşur:

  • featureType (isteğe bağlı): Bu stil değişikliği için seçilecek özellikler. Özellikler, haritadaki coğrafi niteliklerdir. Bu özellikler arasında yollar, parklar, su kütleleri ve daha fazlası yer alır. Bir özellik belirtmezseniz tüm özellikler seçilir.
  • elementType (isteğe bağlı): Seçilecek belirtilen özelliğin mülkü. Öğeler, etiketler ve geometri de dahil olmak üzere, bir özelliğin alt bölümleridir. Bir öğe belirtmezseniz özelliğin tüm öğeleri seçilir.
  • stylers: Seçilen özellikler ve öğelere uygulanacak kurallar. Stil değiştiriciler, özelliğin rengini, görünürlüğünü ve ağırlığını belirtir. Bir özelliğe bir veya daha fazla stil uygulayabilirsiniz.

Bir stil belirtmek için bir dizi featureType ve elementType seçiciyi ve stylers öğenizi bir stil dizisiyle birleştirmeniz gerekir. Tek bir dizi içinde herhangi bir özellik kombinasyonunu hedefleyebilirsiniz. Ancak aynı anda uygulayabileceğiniz stil sayısı sınırlıdır. Stil diziniz maksimum karakter sayısını aşıyorsa stil uygulanmaz.

Bu sayfanın geri kalanında özellikler, öğeler ve stil araçları hakkında daha fazla bilgi bulabilirsiniz.

featureType

Aşağıdaki JSON snippet'inde haritada tüm yollar seçilmiştir:

{
  "featureType": "road"
}

Özellikler veya özellik türleri, haritadaki coğrafi özelliklerdir (ör. yollar, parklar, su birimleri, işletmeler vb.).

Özellikler, kökü all olan bir kategori ağacı oluşturur. Bir özellik belirtmezseniz tüm özellikler seçilir. Bir all özelliğini belirtmek de aynı etkiyi yaratır.

Bazı özellikler, nokta gösterimi kullanarak belirttiğiniz alt özellikler içerir. Örneğin, landscape.natural veya road.local. Yalnızca road gibi üst özelliği belirtirseniz üst öğe için belirttiğiniz stiller, road.local ve road.highway gibi tüm alt öğelere uygulanır.

Üst özelliklerin, tüm alt özelliklerine dahil edilmeyen bazı öğeler içerebileceğini unutmayın.

Aşağıdaki özellikler kullanılabilir:

  • all (varsayılan) tüm özellikleri seçer.
  • administrative tüm bağlı olduğu bölgeleri seçer. Stil, coğrafi sınırları veya dolguyu değil, yalnızca idari bölgelerin etiketlerini etkiler.
    • administrative.country ülkeleri seçer.
    • administrative.land_parcel arazi parsellerini seçer.
    • administrative.locality şehirleri seçer.
    • administrative.neighborhood mahalleleri seçer.
    • administrative.province il seçtiğinde
  • landscape tüm manzaraları seçer.
    • landscape.man_made, binalar ve diğer yapılar gibi insan yapımı özellikleri seçer.
    • landscape.natural dağ, nehir, çöl ve buzul gibi doğal özellikleri seçer.
    • landscape.natural.landcover, orman, çayır, sulak alan ve çıplak zemin gibi dünya yüzeyini kaplayan fiziksel materyal olan arazi örtüsü özelliklerini seçer.
    • landscape.natural.terrain, bir kara yüzeyinin yükseklik, eğim ve yön gibi arazi özelliklerini seçer.
  • poi tüm önemli yerleri seçer.
    • poi.attraction turistik yerleri seçiyor.
    • poi.business, işletmeleri seçer.
    • poi.government resmi binaları seçer.
    • poi.medical hastaneler, eczaneler, polis, doktorlar ve diğerleri dahil olmak üzere acil durum hizmetlerini seçer.
    • poi.park parkları seçer.
    • poi.place_of_worship, kiliseler, tapınaklar, camiler ve diğer ibadet yerleri dahil olmak üzere ibadet yerlerini seçer.
    • poi.school okul seçer.
    • poi.sports_complex spor komplekslerini seçiyor.
  • road tüm yolları seçer.
    • road.arterial ana yolları seçer.
    • road.highway otoyolları seçer.
    • road.highway.controlled_access, kontrollü erişimi olan otoyolları seçer.
    • road.local yerel yolları seçer.
  • transit, tüm toplu taşıma istasyonlarını ve hatlarını seçer.
    • transit.line toplu taşıma hatlarını seçiyor.
    • transit.station tüm toplu taşıma istasyonlarını seçer.
    • transit.station.airport havaalanlarını seçer.
    • transit.station.bus otobüs duraklarını seçer.
    • transit.station.rail, tren istasyonlarını seçer.
  • water, su kütlelerini seçer.

elementType

Aşağıdaki JSON snippet'inde tüm yerel yolların etiketleri seçilmiştir:

{
  "featureType": "road.local",
  "elementType": "labels"
}

Öğeler, bir özelliğin alt bölümleridir. Örneğin, bir yol, harita üzerindeki bir grafik çizgiden (Geometri) ve aynı zamanda yolun adını belirten metinden (bir etiket) oluşur.

Aşağıdaki öğeler kullanılabilir ancak belirli bir özellik, öğelerin hiçbirini, bazılarını veya tamamını desteklemeyebilir:

  • all (varsayılan), belirtilen özelliğin tüm öğelerini seçer.
  • geometry, belirtilen özelliğin tüm geometrik öğelerini seçer.
    • geometry.fill yalnızca özelliğin geometrisinin dolgusunu seçer.
    • geometry.stroke yalnızca özelliğin geometrisinin çizgisini seçer.
  • labels, belirtilen özellikle ilişkili metin etiketlerini seçer.
    • labels.icon yalnızca özelliğin etiketinde gösterilen simgeyi seçer.
    • labels.text yalnızca etiketin metnini seçer.
    • labels.text.fill yalnızca etiketin içini seçer. Bir etiketin dolgusu genellikle etiket metnini çevreleyen renkli bir dış çizgi olarak oluşturulur.
    • labels.text.stroke, yalnızca etiketin metninin kalınlığını seçer.

stylers

Stil uygulayıcılar, harita özellikleri ve öğelerine uygulayabileceğiniz biçimlendirme seçenekleridir.

Aşağıdaki JSON snippet'i, bir özelliği RGB değeri kullanarak parlak yeşil olarak görüntüler:

"stylers": [
  { "color": "#99FF33" }
]

Bu snippet, başlangıç rengine bakılmaksızın bir özelliğin rengindeki tüm yoğunluğu kaldırır. Bu işlem, özelliğin gri tonlamada oluşturulmasına neden olur:

"stylers": [
  { "saturation": -100 }
]

Bu snippet, bir özelliği tamamen gizler:

    "stylers": [
      { "visibility": "off" }
    ]

Aşağıdaki stil seçenekleri desteklenir:

  • hue (#RRGGBB biçiminde bir RGB onaltılık dizesi), temel rengi belirtir.

    Not: Bu seçenek, varsayılan Google stilinde (veya haritada tanımladığınız diğer stil seçeneklerinde) belirtilen doygunluk ve açıklığı korurken tonu ayarlar. Elde edilen renk, temel haritanın stiline göre belirlenir. Google, temel harita stilinde herhangi bir değişiklik yaparsa bu değişiklikler, haritanızın hue ile biçimlendirilmiş özelliklerini etkiler. Mümkünse mutlak color stilleştiriciyi kullanmak daha iyidir.

  • lightness (-100 ile 100 arasında bir kayan nokta değeri), öğenin parlaklığındaki yüzdelik değişimi gösterir. Negatif değerler koyuluğu artırır (burada -100 değeri siyahı belirtir), pozitif değerler ise parlaklığı artırır (burada +100 değeri beyazı belirtir).

    Not: Bu seçenek, varsayılan Google stilinde (veya haritada tanımladığınız diğer stil seçeneklerinde) belirtilen doygunluğu ve tonu korurken ışığı ayarlar. Elde edilen renk, temel haritanın stiline göre belirlenir. Google, temel harita stilinde herhangi bir değişiklik yaparsa bu değişiklikler, haritanızın lightness ile biçimlendirilmiş özelliklerini etkiler. Mümkünse mutlak color stilleştiriciyi kullanmak daha iyidir.

  • saturation (-100 ile 100 arasında kayan noktalı bir değer), öğeye uygulanacak temel rengin yoğunluğundaki yüzdelik değişimi belirtir.

    Not: Bu seçenek, varsayılan Google stilinde (veya haritada tanımladığınız diğer stil seçeneklerinde) belirtilen tonu ve açıklığı koruyarak doygunluğu ayarlar. Elde edilen renk, temel haritanın stiline göre belirlenir. Google temel harita stilinde herhangi bir değişiklik yaparsa bu değişiklikler, haritanızın saturation ile stilize edilen özelliklerini etkiler. Mümkünse mutlak color stilleştiriciyi kullanmak daha iyidir.

  • gamma (1.0'ın hiçbir düzeltme uygulamadığı 0.01 ile 10.0 arasında bir kayan nokta değeri), öğeye uygulanacak gama düzeltme miktarını belirtir. Gama düzeltmeleri, beyaz veya siyah değerlerini etkilemeden renklerin açıklığını doğrusal olmayan bir şekilde değiştirir. Gama düzeltmesi genellikle birden fazla öğenin kontrastını değiştirmek için kullanılır. Örneğin, öğelerin kenarları ve iç kısımları arasındaki kontrastı artırmak veya azaltmak için gamayı değiştirebilirsiniz.

    Not: Bu seçenek, gama eğrisi kullanarak açıklığı varsayılan Google stiline göre ayarlar. Google, temel harita stilinde herhangi bir değişiklik yaparsa bu değişiklikler, haritanızın gamma ile biçimlendirilmiş özelliklerini etkiler. Mümkünse mutlak color stillendiriciyi kullanmak daha iyidir.

  • invert_lightness (true ise) mevcut açıklığı tersine çevirir. Örneğin, beyaz metinlerin bulunduğu daha koyu bir haritaya hızlıca geçmek için bu özelliği kullanabilirsiniz.

    Not: Bu seçenek, varsayılan Google stilini tersine çevirir. Google temel harita stilinde herhangi bir değişiklik yaparsa bu değişiklikler, haritanızın invert_lightness ile stilize edilen özelliklerini etkiler. Mümkünse mutlak color stilleştiriciyi kullanmak daha iyidir.

  • visibility (on, off veya simplified), öğenin haritada görünüp görünmediğini ve nasıl görüneceğini belirtir. simplified görünürlüğü, etkilenen özelliklerden bazı stil özelliklerini kaldırır. Örneğin, yollar dış çizgisiz daha ince çizgilere dönüştürülürken parklar etiket metinlerini kaybeder ancak etiket simgesi korunur.
  • color (#RRGGBB biçiminde bir RGB onaltılık dizesi), özelliğin rengini belirler.
  • weight (sıfırdan büyük veya sıfırdan büyük bir tam sayı değeri), özelliğin ağırlığını piksel cinsinden belirler. Ağırlığı yüksek bir değere ayarlamak, karo kenarlarının kırpılmasına neden olabilir.

Stil kuralları, belirttiğiniz sırayla uygulanır. Birden fazla işlemi tek bir stil işleminde birleştirmeyin. Bunun yerine, her işlemi stil dizisinde ayrı bir giriş olarak tanımlayın.

Not: Bazı işlemler değişmeli olmadığından sıra önemlidir. Stil işlemleriyle değiştirilen özelliklerin ve/veya öğelerin (genellikle) zaten mevcut stilleri vardır. İşlemler, mevcut stiller varsa bu stiller üzerinde çalışır.

Ton, doygunluk, açıklık modeli

Stilize haritalar, stil uygulayıcı işlemleri sırasında rengi belirtmek için ton, doygunluk, açıklık (HSL) modelini kullanır. Ton temel rengi, doygunluk bu rengin yoğunluğunu, parlaklık ise oluşturan renkteki beyaz veya siyahın göreceli miktarını belirtir.

Gama düzeltmesi, genellikle kontrastı artırmak veya azaltmak için renk alanındaki parlaklığı değiştirir. Ayrıca HSL modeli, hue'ün bir renk tekerleği içindeki oryantasyonu, doygunluk ve açıklık ise farklı eksenler boyunca genlikleri gösterdiği bir koordinat alanında renk tanımlar. Tonlar, RGB renk alanı içinde ölçülür. Bu, çoğu RGB renk alanına benzer, ancak beyaz ve siyah tonları yoktur.

Ton, doygunluk, açıklık modeli

hue, bir HTML onaltılık renk değeri alırken bu değeri yalnızca temel rengi (yani renk çemberinin etrafındaki yönü (doygunluk veya açıklığı değil) belirlemek için kullanır. Doygunluk veya açıklık, yüzde değişimleri olarak ayrıca belirtilir.

Örneğin, saf yeşilin tonunu hue:0x00ff00 veya hue:0x000100 olarak tanımlayabilirsiniz. Her iki ton da aynıdır. Her iki değer de HSL renk modelinde saf yeşili gösterir.

RGB Renk Çarkı

Kırmızı, yeşil ve mavi renklerin eşit oranda yer aldığı RGB hue değerleri, HSL koordinat alanında bir yönelimi belirtmediği için ton belirtmez. Örnekler: "#000000" (siyah), "#FFFFFF" (beyaz) ve tüm saf gri tonları. Siyah, beyaz veya griyi belirtmek için tüm saturation öğelerini kaldırmanız (değeri -100 olarak ayarlamanız) ve bunun yerine lightness değerini ayarlamanız gerekir.

Ayrıca, halihazırda bir renk şemasına sahip mevcut özellikler değiştirilirken hue gibi bir değerin değiştirilmesi, mevcut saturation veya lightness değerini değiştirmez.