Configurare l'altitudine degli indicatori
Mantieni tutto organizzato con le raccolte
Salva e classifica i contenuti in base alle tue preferenze.
Seleziona piattaforma:
Android
iOS
Puoi impostare l'altitudine di un indicatore impostando la proprietà
altitudeMode
su uno dei seguenti valori:
ABSOLUTE
RELATIVE_TO_GROUND
CLAMP_TO_GROUND
RELATIVE_TO_MESH
Il seguente esempio di codice
mostra come utilizzare ciascuno dei metodi. Per utilizzare questo esempio di codice, segui le istruzioni riportate in
Configurazione e
Aggiungere una mappa 3D all'app per configurare
il progetto Android Studio con una mappa 3D di base. Poi, aggiungi il seguente codice al file
MainActivity.kt
:
// 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
})
Salvo quando diversamente specificato, i contenuti di questa pagina sono concessi in base alla licenza Creative Commons Attribution 4.0, mentre gli esempi di codice sono concessi in base alla licenza Apache 2.0. Per ulteriori dettagli, consulta le norme del sito di Google Developers. Java è un marchio registrato di Oracle e/o delle sue consociate.
Ultimo aggiornamento 2025-08-31 UTC.
[null,null,["Ultimo aggiornamento 2025-08-31 UTC."],[],[],null,["# Configure marker altitude\n\nSelect platform: [Android](/maps/documentation/maps-3d/android-sdk/configure-marker-altitude \"View this page for the Android platform docs.\") [iOS](/maps/documentation/maps-3d/ios-sdk/configure-marker-altitude \"View this page for the iOS platform docs.\")\n\n\u003cbr /\u003e\n\n| This product or feature is Experimental (pre-GA). Pre-GA products and features might have limited support, and changes to pre-GA products and features might not be compatible with other pre-GA versions. Pre-GA Offerings are covered by the [Google\n| Maps Platform Service Specific Terms](https://cloud.google.com/maps-platform/terms/maps-service-terms). For more information, see the [launch stage descriptions](/maps/launch-stages).\n\n\nYou can set a marker's altitude by setting the\n[`altitudeMode`](/maps/documentation/maps-3d/android-sdk/reference/com/google/android/gms/maps3d/model/MarkerOptions#altitudeMode())\nproperty to one of the\nfollowing values:\n\n- `ABSOLUTE`\n- `RELATIVE_TO_GROUND`\n- `CLAMP_TO_GROUND`\n- `RELATIVE_TO_MESH`\n\nThe following code sample\ndemonstrates how to use each of the methods. To use this code sample, follow the instructions in\n[Setup](/maps/documentation/maps-3d/android-sdk/setup) and\n[Add a 3D map to your app](/maps/documentation/maps-3d/android-sdk/add-a-3d-map) to set\nup your Android Studio project with a basic 3D map. Then, add the following code to the\n**`MainActivity.kt`** file: \n\n```kotlin\n // Add imports\n import com.google.android.gms.maps3d.model.latLngAltitude\n \n ...\n \n // Add to the onMap3DViewReady method, after the googleMap3D object has been initialized\n googleMap3D.setMapMode(Map3DMode.SATELLITE)\n \n googleMap3D.setCamera(\n camera {\n center = latLngAltitude {\n latitude = 52.51974795\n longitude = 13.40715553\n altitude = 150.0\n }\n heading = 252.7\n tilt = 79.0\n range = 1500.0\n }\n )\n \n \n // Marker 1: Absolute\n googleMap3D.addMarker(markerOptions {\n position = latLngAltitude {\n latitude = 52.519605780912585\n longitude = 13.406867190588198\n altitude = 150.0\n }\n label = \"Absolute (150m)\"\n altitudeMode = AltitudeMode.ABSOLUTE\n isExtruded = true\n isDrawnWhenOccluded = true\n collisionBehavior = CollisionBehavior.REQUIRED_AND_HIDES_OPTIONAL\n })\n \n // Marker 2: Relative to Ground\n googleMap3D.addMarker(markerOptions {\n position = latLngAltitude {\n latitude = 52.519882191069016\n longitude = 13.407410777254293\n altitude = 50.0\n }\n label = \"Relative to Ground (50m)\"\n altitudeMode = AltitudeMode.RELATIVE_TO_GROUND\n isExtruded = true\n isDrawnWhenOccluded = true\n })\n \n // Marker 3: Clamped to Ground\n googleMap3D.addMarker(markerOptions {\n position = latLngAltitude {\n latitude = 52.52027645136134\n longitude = 13.408271658592406\n altitude = 0.0 // altitude is effectively ignored by CLAMP_TO_GROUND for rendering,\n // but might be relevant if you read the marker's position later.\n // For CLAMP_TO_GROUND, it's often set to 0.0.\n }\n label = \"Clamped to Ground\"\n altitudeMode = AltitudeMode.CLAMP_TO_GROUND\n isExtruded = true\n isDrawnWhenOccluded = true\n })\n \n // Marker 4: Relative to Mesh\n googleMap3D.addMarker(markerOptions {\n position = latLngAltitude {\n latitude = 52.520835071144226\n longitude = 13.409426847943774\n altitude = 10.0 // Altitude relative to 3D mesh (buildings, terrain features)\n }\n label = \"Relative to Mesh (10m)\"\n altitudeMode = AltitudeMode.RELATIVE_TO_MESH\n isExtruded = true\n isDrawnWhenOccluded = true\n })\n \n \n```"]]