L'exemple de code suivant montre comment ajouter un modèle 3D et le positionner dans l'espace 3D en appelant la méthode addModel. Pour utiliser cet exemple de code, suivez les instructions de Configuration et Ajouter une carte 3D à votre application pour configurer votre projet Android Studio avec une carte 3D de base. Ajoutez ensuite le code suivant au fichier MainActivity.kt :
// 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 } } )
Écouter les événements de clic sur un modèle 3D
Pour écouter les événements de clic sur un modèle 3D, appelez setClickListener sur l'objet de modèle. L'exemple suivant montre comment définir un écouteur de clic sur un modèle 3D :
model.setClickListener { lifecycleScope.launch(Dispatchers.Main) { Toast.makeText(this@ModelsActivity, "Model clicked", Toast.LENGTH_SHORT).show() } }
Notez que le gestionnaire de clics ne s'exécute pas sur le thread principal (ou de l'UI). Si vous souhaitez apporter des modifications à l'UI (par exemple, afficher un message Toast), vous devez passer au thread principal. Pour Kotlin, vous pouvez utiliser lifecycleScope.launch(Dispatchers.Main).