Kamera kontrollerini yapılandırma

Platform seçin: Android iOS JavaScript

Kullanıcılar, haritada hareketleri kullanarak kameranın yakınlaştırma, eğme, konum ve döndürme özelliklerini kontrol edebilir. Kamerayı programatik olarak da yapılandırabilirsiniz.

3D kamera modelini gösteren diyagram

Kamera Konumu

Harita görünümü, uzayda belirli bir noktaya bakan bir kamera olarak modellenir. Kameranın konumu ve yönü; enlem/boylam/yükseklik koordinatları, yön, eğim, aralık ve dönüş ile tanımlanır.

Enlem, boylam, yükseklik

Kameranın başlangıç konumu, enlem, boylam ve yüksekliğin ayarlanmasıyla tanımlanır. Bu değerler, kameranın nereye yönlendirildiğini veya nerede ortalandığını değil, kameranın konumunu belirlemek için birleştirilir.

Enlem, -90 ile 90 derece arasında (bu değerler dahil) olabilir. Boylam, -180 ile 180 derece arasında (bu değerler dahil) olmalıdır. Yükseklik, deniz seviyesinden metre cinsinden belirtilir.

Bu aralığın üzerindeki veya altındaki değerler, bu aralıktaki en yakın değere ayarlanır. Örneğin, 100 enlemini belirtmek değeri 90 olarak ayarlar.

Başlık

Yön, haritanın pusula yönünü belirtir. Bu yön, gerçek kuzeyden saat yönünde derece cinsinden ölçülür. Kuzey 0 dereceye, Doğu 90 dereceye, Güney 180 dereceye ve Batı 270 dereceye karşılık gelir.

Yatır

Eğme, kameranın dikey eksene göre açısını derece cinsinden belirtir. 0 derecelik eğim, kameranın doğrudan Dünya'ya (nadir) doğru baktığı anlamına gelir. 90 derecelik bir eğim, kameranın başlık tarafından belirtilen yönde yatay olarak yönlendirildiği anlamına gelir.

Aralık

Aralık, kameranın kendi konumu ile haritanın merkezi arasındaki mesafeyi metre cinsinden tanımlar. Aralık sıfır metreden (çok yakın çekim) altmış üç milyon metreye kadar değişebilir. Bu sayede çok yakın çekimden küresel bir bakış açısına kadar her türlü görüntüleme yapılabilir. Bu, haritanın ne kadar "yakınlaştırılmış" veya "uzaklaştırılmış" görüneceğini etkili bir şekilde kontrol eder.

Döndür

Yuvarlanma, kameranın ufka göre açısını derece cinsinden ayarlar. Bu parametre, uçuş simülasyonları sırasında eğilme veya kamerayı görüntüleme ekseni etrafında döndürerek tam bir silindir yuvarlanması gibi efektler oluşturmak için kullanılabilir.

Kamerayı kontrol etme

Aşağıdaki kod örneğinde, kameranın programatik olarak nasıl kontrol edileceği gösterilmektedir.

Swift


public static var sanFrancisco: Camera = .init(
  latitude: 37.7845812,
  longitude: -122.3660241,
  altitude: 585,
  heading: 288.0,
  tilt: 75.0,
  roll: 0.0,
  range: 100)