
Sie können die Höhe einer Markierung festlegen, indem Sie die Eigenschaft altitudeMode
auf einen der folgenden Werte setzen:
ABSOLUTE
RELATIVE_TO_GROUND
CLAMP_TO_GROUND
RELATIVE_TO_MESH
Das folgende Codebeispiel zeigt, wie die einzelnen Methoden verwendet werden. Wenn Sie dieses Codebeispiel verwenden möchten, folgen Sie der Anleitung unter Einrichtung und 3D‑Karte zur App hinzufügen, um Ihr Android Studio-Projekt mit einer einfachen 3D‑Karte einzurichten. Fügen Sie dann der Datei MainActivity.kt
den folgenden Code hinzu:
// Add imports import com.google.android.gms.maps3d.model.latLngAltitude ... // Add to the onMap3DViewReady method, after the googleMap3D object has been initialized googleMap3D.setMapMode(Map3DMode.SATELLITE) googleMap3D.setCamera( camera { center = latLngAltitude { latitude = 52.51974795 longitude = 13.40715553 altitude = 150.0 } heading = 252.7 tilt = 79.0 range = 1500.0 } ) // Marker 1: Absolute googleMap3D.addMarker(markerOptions { position = latLngAltitude { latitude = 52.519605780912585 longitude = 13.406867190588198 altitude = 150.0 } label = "Absolute (150m)" altitudeMode = AltitudeMode.ABSOLUTE isExtruded = true isDrawnWhenOccluded = true collisionBehavior = CollisionBehavior.REQUIRED_AND_HIDES_OPTIONAL }) // Marker 2: Relative to Ground googleMap3D.addMarker(markerOptions { position = latLngAltitude { latitude = 52.519882191069016 longitude = 13.407410777254293 altitude = 50.0 } label = "Relative to Ground (50m)" altitudeMode = AltitudeMode.RELATIVE_TO_GROUND isExtruded = true isDrawnWhenOccluded = true }) // Marker 3: Clamped to Ground googleMap3D.addMarker(markerOptions { position = latLngAltitude { latitude = 52.52027645136134 longitude = 13.408271658592406 altitude = 0.0 // altitude is effectively ignored by CLAMP_TO_GROUND for rendering, // but might be relevant if you read the marker's position later. // For CLAMP_TO_GROUND, it's often set to 0.0. } label = "Clamped to Ground" altitudeMode = AltitudeMode.CLAMP_TO_GROUND isExtruded = true isDrawnWhenOccluded = true }) // Marker 4: Relative to Mesh googleMap3D.addMarker(markerOptions { position = latLngAltitude { latitude = 52.520835071144226 longitude = 13.409426847943774 altitude = 10.0 // Altitude relative to 3D mesh (buildings, terrain features) } label = "Relative to Mesh (10m)" altitudeMode = AltitudeMode.RELATIVE_TO_MESH isExtruded = true isDrawnWhenOccluded = true })