Haritaya 3D model ekleme

Platform seçin: Android iOS JavaScript

Haritada 3D model

Aşağıdaki kod örneğinde, addModel yöntemini çağırarak 3D modelin nasıl ekleneceği ve 3D uzayda nasıl konumlandırılacağı gösterilmektedir. Bu kod örneğini kullanmak için Kurulum ve Uygulamanıza 3D harita ekleme bölümündeki talimatları uygulayarak Android Studio projenizi temel bir 3D haritayla ayarlayın. Ardından, aşağıdaki kodu MainActivity.kt dosyasına ekleyin:

// Add imports and define constants
import com.google.android.gms.maps3d.model.latLngAltitude
val PLANE_URL = "https://storage.googleapis.com/gmp-maps-demos/p3d-map/assets/Airplane.glb"
val PLANE_SCALE = 0.05

// Add to the onMap3DViewReady method, after the googleMap3D object has been initialized
googleMap3D.setCamera(
   camera {
        center = latLngAltitude {
            latitude = 47.133971
            longitude = 11.333161
            altitude = 2200.0
        }
        heading = 221.0
        tilt = 65.0
        range = 1_200.0
    }
)

googleMap3D.addModel(
    modelOptions {
        id = "plane_model"
        position = latLngAltitude {
            latitude = 47.133971
            longitude = 11.333161
            altitude = 2200.0
        }
        altitudeMode = AltitudeMode.ABSOLUTE
        orientation = orientation {
            heading = 41.5
            tilt = -90.0
            roll = 0.0
        }
        url = PLANE_URL
        scale = vector3D {
            x = PLANE_SCALE
            y = PLANE_SCALE
            z = PLANE_SCALE
        }
    }
)

3D model tıklama etkinliklerini dinleme

Bir 3D modeldeki tıklama etkinliklerini dinlemek için model nesnesinde setClickListener işlevini çağırın. Aşağıdaki örnekte, 3D modelde tıklama işleyicisinin nasıl ayarlanacağı gösterilmektedir:

model.setClickListener {
    lifecycleScope.launch(Dispatchers.Main) {
        Toast.makeText(this@ModelsActivity, "Model clicked", Toast.LENGTH_SHORT).show()
    }
}

Tıklama işleyicinin ana (veya kullanıcı arayüzü) iş parçacığında çalışmadığını unutmayın. Kullanıcı arayüzünde değişiklik yapmak (ör. Toast mesajı göstermek) istiyorsanız ana iş parçacığına geçmeniz gerekir. Kotlin için bu işlemi lifecycleScope.launch(Dispatchers.Main) kullanarak yapabilirsiniz.