Android için Haritalar SDK'sı Stil Stili

Koleksiyonlar ile düzeninizi koruyun İçeriği tercihlerinize göre kaydedin ve kategorilere ayırın.
Platform seçin: Android iOS JavaScript

Stil seçenekleriyle yollar, parklar, işletmeler ve diğer önemli noktalar gibi özelliklerin görsel görünümünü değiştirerek standart Google harita stillerinin sunumunu özelleştirebilirsiniz. Bu özelliklerin stilini değiştirmenin yanı sıra özellikleri tamamen gizleyebilirsiniz. Bu, haritanın belirli bileşenlerini vurgulayabileceğiniz veya haritanın çevresindeki sayfanın stilini tamamlayabileceği anlamına gelir.

Örnekler

Aşağıdaki JSON stil beyanı, tüm harita özelliklerini griye dönüştürür, ardından ana yol geometrisini mavi renkle değiştirir 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 stil bildirimi aşağıdaki öğelerden oluşur:

  • featureType (isteğe bağlı): Bu stil değişikliği için seçilecek özellikler. Özellikler haritadaki yollar, parklar, su kaynakları vb. coğrafi özelliklerdir. Bir özellik belirtmezseniz tüm özellikler seçilir.
  • elementType (isteğe bağlı) - seçilecek belirtilen özelliğin özelliği. Öğ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.
  • styleers: Seçilen özellik ve öğelere uygulanacak kurallar. Stiller, özelliğin rengini, görünürlüğünü ve ağırlığını belirtir. Bir özelliğe bir veya daha fazla stil seçici uygulayabilirsiniz.

Stil belirtmek için hem featureType hem de elementType seçici grubunu ve stylers bir stil dizisiyle birleştirmeniz gerekir. Tek bir dizideki herhangi bir özellik kombinasyonunu hedefleyebilirsiniz. Ancak tek seferde uygulayabileceğiniz stil sayısı sınırlıdır. Stil diziniz maksimum karakter sayısını aşarsa stil uygulanmaz.

Bu sayfanın geri kalanında özellikler, öğeler ve stiller hakkında daha fazla bilgi yer alır.

featureType

Aşağıdaki JSON snippet'i, haritadaki tüm yolları seçer:

{
  "featureType": "road"
}

Özellikler veya özellik türleri; yollar, parklar, su kaynakları, işletmeler ve daha fazlası dahil olmak üzere haritadaki coğrafi özelliklerdir.

Özellikler, kök olarak all kullanılan bir kategori ağacı oluşturur. Bir özellik belirtmezseniz tüm özellikler seçilir. Bir all özelliği belirtmenin de etkisi aynı olur.

Bazı özellikler, nokta gösterimi kullanarak belirttiğiniz alt özellikleri içerir. Örneğin, landscape.natural veya road.local. Yalnızca üst özelliği (ör. road) belirtirseniz üst öğe için belirttiğiniz stiller tüm alt öğeleri (ör. road.local ve road.highway) için geçerli olur.

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

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

  • all (varsayılan) tüm özellikleri seçer.
  • administrative tüm idari bölgeleri seçer. Stil özelliklerini ayarlamak yalnızca idari bölgelerin etiketlerini etkiler, coğrafi sınırları veya dolguyu etkilemez.
    • administrative.country ülkeleri seçer.
    • administrative.land_parcel arsaları seçiyor.
    • administrative.locality şehirleri seçer.
    • administrative.neighborhood mahalleleri seçer.
    • administrative.province illeri seçer.
  • landscape tüm yatayları seçer.
    • landscape.man_made, binalar ve diğer yapılar gibi insan yapımı özellikleri seçer.
    • landscape.natural; dağlar, nehirler, çöller ve buzullar gibi doğal özellikleri seçer.
    • landscape.natural.landcover ormanlar, otlaklar, sulak alanlar ve çıplak alanlar gibi dünya yüzeyini kaplayan fiziksel malzeme olan arazi örtüsü özelliklerini seçer.
    • landscape.natural.terrain, arazi yüzeyinin rakım, 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 kamu binalarını seçer.
    • poi.medical; hastaneler, eczaneler, polis, doktorlar ve diğerleri dahil acil durum hizmetlerini seçer.
    • poi.park parkları seçiyor.
    • poi.place_of_worship kiliseleri, tapınakları, camileri ve diğer ibadet yerlerini seçer.
    • poi.school okul seçiyor.
    • poi.sports_complex spor komplekslerini seçiyor.
  • road tüm yolları seçer.
    • road.arterial, ana yolları seçer.
    • road.highway otoyolları seçiyor.
    • 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ı seçer.
    • transit.line, toplu taşıma hatlarını seçer.
    • transit.station tüm toplu taşıma istasyonlarını seçer.
    • transit.station.airport havaalanlarını seçiyor.
    • transit.station.bus otobüs duraklarını seçiyor.
    • transit.station.rail tren istasyonunu seçiyor.
  • water su kütlesini seçiyor.

elementType

Aşağıdaki JSON snippet'i, tüm yerel yollar için etiketleri seçer:

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

Öğeler, bir özelliğin alt bölümleridir. Örneğin, bir yol, haritadaki grafik çizgiden (metrik) ve adını belirten bir metinden (bir etiket) oluşur.

Aşağıdaki öğeler kullanılabilir, ancak belirli bir özelliğin öğelerin hiçbirini, bazılarını veya tümünü desteklemediğini unutmayın:

  • 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 fırçasını 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 dolgusunu seçer. Bir etiketin dolgusu genellikle etiket metnini çevreleyen renkli bir ana hat olarak oluşturulur.
    • labels.text.stroke yalnızca etiket metninin fırçasını seçer.

stylers

Stil özellikleri, harita özelliklerine ve öğelerine uygulayabileceğiniz biçimlendirme seçenekleridir.

Aşağıdaki JSON snippet'i, RGB değeri kullanarak parlak yeşil renkte bir özellik gösteriyor:

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

Bu snippet, bir özelliğin renginden bağımsız olarak bir özelliğin rengindeki tüm yoğunluğu kaldırır. Bunun etkisi, özelliğin gri tonlarda oluşturulmasıdır:

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

Bu snippet bir özelliği tamamen gizler:

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

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

  • hue (#RRGGBB biçimli, RGB onaltılık dizesi) temel rengi gösterir.

    Not: Bu seçenek, varsayılan Google stilinde (veya haritada tanımladığınız diğer stil seçeneklerinde) belirtilen doygunluğu ve açıklığı korurken tonu ayarlar. Ortaya çıkan renk, temel haritanın stiline göredir. Google, esas harita stilinde değişiklik yaparsa bu değişiklikler, haritanızın hue stiline sahip özelliklerini etkiler. Mümkünse tam color şekillendiriciyi kullanmak daha iyidir.

  • lightness (-100 ile 100 arasında bir kayan nokta değeri) öğenin parlaklığındaki değişim yüzdesini belirtir. Negatif değerler koyuluğu artırır (-100 siyah belirtir), pozitif değerler parlaklığı artırır (+100 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. Ortaya çıkan renk, temel haritanın stiline göredir. Google, esas harita stilinde değişiklik yaparsa bu değişiklikler, haritanızın lightness stiline sahip özelliklerini etkiler. Mümkünse tam color şekillendiriciyi kullanmak daha iyidir.

  • saturation (-100 ile 100 arasında bir kayan nokta değeri), öğeye uygulanan temel rengin yoğunluk yüzdesini ifade eder.

    Not: Bu seçenek, varsayılan Google stilinde (veya haritada tanımladığınız diğer stil seçeneklerinde) belirtilen ton ve açıklığı korurken doygunluğu ayarlar. Ortaya çıkan renk, temel haritanın stiline göredir. Google, esas harita stilinde değişiklik yaparsa bu değişiklikler, haritanızın saturation stiline sahip özelliklerini etkiler. Mümkünse tam color şekillendiriciyi kullanmak daha iyidir.

  • gamma (0.01 ile 10.0 arasında bir kayan nokta değeri (1.0 düzeltme olmadan uygulanır), öğeye uygulanacak gama düzeltme miktarını gösterir. Gama düzeltmeleri, doğrusal olmayan bir şekilde renklerin rengini değiştirirken beyaz veya siyah değerleri etkilemez. Gama düzeltmesi genellikle birden çok öğenin kontrastını değiştirmek için kullanılır. Örneğin, öğelerin kenarları ve içleri arasındaki kontrastı artırmak veya azaltmak için gamada değişiklik yapabilirsiniz.

    Not: Bu seçenek, gama eğrisi kullanarak varsayılan Google stiline göre ışığı ayarlar. Google, esas harita stilinde değişiklik yaparsa bu değişiklikler, haritanızın stil özelliklerini gamma stiline göre etkiler. Mümkünse tam color şekillendiriciyi kullanmak daha iyidir.

  • invert_lightness (true ise) mevcut ışığı tersine çevirir. Bu özellik, örneğin beyaz metinle hızla daha koyu bir haritaya geçiş yapmak için yararlıdır.

    Not: Bu seçenek, varsayılan Google stilini tersine çevirir. Google, esas harita stilinde değişiklik yaparsa bu değişiklikler, invert_lightness stiline sahip harita özelliklerinizi etkiler. Mümkünse tam color şekillendiriciyi kullanmak daha iyidir.

  • visibility (on, off veya simplified), öğenin haritada görünüp görünmeyeceğ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ış çizgi olmadan ince çizgilerle sadeleştirilirken parklar etiket metnini kaybeder ancak etiket simgesini korur.
  • color (#RRGGBB biçiminde bir RGB onaltılık dizesi) özelliğin rengini belirler.
  • weight (sıfırdan büyük veya sıfıra eşit bir tam sayı değeridir) özelliğin ağırlığını piksel cinsinden ayarlar. Ağırlığın yüksek bir değere ayarlanması, karo kenarlarının yakınından kırpılmasına neden olabilir.

Stil kuralları belirttiğiniz sıraya göre uygulanır. Birden fazla işlemi tek bir stil işlemi altında birleştirmeyin. Bunun yerine, her işlemi stil dizisinde ayrı bir giriş olarak tanımlayın.

Not: Bazı işlemler uyumlu olmadığından sipariş önemlidir. Stil işlemleri aracılığıyla değiştirilen özellikler ve/veya öğeler (genellikle), zaten mevcut stillere sahiptir. İşlemler, varsa bu mevcut stillere göre işlem yapar.

Ton, doygunluk, açıklık modeli

Stilli haritalar, şekillendirici işlemlerinde renk belirtmek için ton, doygunluk, açıklık (HSL) modelini kullanır. Ton temel rengi, doygunluk ise bu rengin yoğunluğunu ve hafiflik ise bileşen rengindeki göreceli beyaz veya siyah miktarı belirtir.

Gama düzeltmesi, genellikle kontrastı artırmak veya azaltmak için renk alanı üzerindeki ışığı değiştirir. Buna ek olarak, HSL modeli, bir koordinat alanı içinde rengi tanımlar. Burada renk çemberindeki yönü hue, doygunluk ve açıklığı ise farklı eksenler üzerindeki genlikleri gösterir. Tonlar, beyaz ve siyah gölgelerin olmaması dışında RGB renk alanlarının çoğuna benzeyen bir RGB renk alanı içinde ölçülür.

Ton, doygunluk, açıklık modeli

hue onaltılık HTML renk değerini alırken, bu değeri yalnızca temel rengi (yani doygunluğu veya açıklığı değil, renk çemberinin çevresindeki yönü) belirlemek için kullanır ve yüzde olarak ayrı ayrı gösterilir.

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

RGB Renk Çarkı

Kırmızı, yeşil ve mavi eşit parçalarından oluşan RGB hue değerleri bir ton belirtmez çünkü bu değerlerin hiçbiri HSL koordinat alanında yön belirtmez. Örneğin "#" Siyah, beyaz veya griyi belirtmek için saturation öğesinin tamamını kaldırmanız (değeri -100 olarak ayarlamanız) ve lightness değerini ayarlamanız gerekir.

Ayrıca, hâlihazırda renk şemasına sahip olan mevcut özellikler değiştirilirken hue gibi bir değerin değiştirilmesi, mevcut saturation veya lightness öğelerini değiştirmez.