İşaretçiler

Kullanıcının dikkatini haritadaki bir konuma çekmek için işaretçiler kullanın. Bu kılavuzda, 3D haritalarda işaretçilerin nasıl kullanılacağı ve özelleştirileceği gösterilmektedir. İşaretçilerin şeklini, boyutunu, rengini ve göründükleri yüksekliği kontrol edebilirsiniz. Aşağıdaki örnekte temel bir işaretçi gösterilmektedir:

Maps JavaScript'teki 3D Haritalar, her biri belirli kullanımlar için optimize edilmiş iki farklı işaretçi sınıfı sağlar. Aşağıdaki tabloda, mevcut iki sınıf arasındaki farklar ve denge unsurları gösterilmektedir:

Kapasite MarkerElement Marker3DElement
Özelleştirme Yüksek (Özel HTML öğelerini, temel animasyon API'lerini vb. destekler.) Düşük (Daha az özelleştirilebilir)
Performans Daha düşük etkileşim performansı (çok sayıda işaretçiyle FPS düşüşleri) Daha yüksek etkileşim performansı (Büyük veri kümelerini oluşturmak için optimize edilmiştir)
Önerilen kapasite Yaklaşık 1.000 işaretçiye kadar güvenilir etkileşim performansı 1.000'den fazla işaretçiyi işlemek için önerilir.

Rengi, ölçeği ve simge resmini özelleştirme

Varsayılan işaretçinin arka planını, glifini, kenarlık rengini ve boyutunu özelleştirin.

Özel işaretçiler

Varsayılan işaretçi simgesini özel bir SVG kaynağıyla değiştirin.

Grafikli işaretçiler

İşaretçi yüksekliğini ayarlama

İşaretçiyi uzatarak ve yüksekliği ayarlayarak işaretçi yüksekliğini belirleyebilirsiniz.

Ekstrüde işaretleyici

İşaretçilerin tıklama ve klavye etkinliklerine yanıt vermesini sağlama

click etkinlik dinleyicisi ekleyerek işaretçinin tıklama ve klavye etkinliklerine yanıt vermesini sağlayın.

function initMap() {
  const map = new Map3DElement({
    center: { lat: 37.4690, lng: -122.1074, altitude: 0 },
    tilt: 67.5,
    range: 45000,
    mode: MapMode.HYBRID
  });

  const interactiveMarker = new google.maps.marker.Marker3DInteractiveElement({
    map,
    position: {lat: 37.4239163, lng: -122.0947209},
  });

  interactiveMarker.addEventListener('gmp-click', (event) => {
    // Handle the click event.
    // ...
  });
}

İşaretçi çarpışma davranışını ayarlama

Bir işaretçinin başka bir işaretçiyle veya harita etiketiyle çarpıştığında nasıl davranacağını belirtin.

const marker = new Marker3DElement({
    position: {lat, lng},
    collisionBehavior: google.maps.CollisionBehavior.REQUIRED
});

İşaretçi performansı

Özel HTML işaretçileri (MarkerElement), standart 3D işaretçilere (Marker3DElement) kıyasla daha düşük performans sunar. 1.000'den fazla işaretçi içeren uygulamalarda optimum performans sağlamak için Marker3dElement sınıfının kullanılması önemle tavsiye edilir.

Sonraki adım