Aggiungere un poligono a una mappa
Mantieni tutto organizzato con le raccolte
Salva e classifica i contenuti in base alle tue preferenze.
Seleziona piattaforma:
Android
iOS
Il seguente esempio di codice mostra come aggiungere un poligono 3D e posizionarlo
nello spazio 3D chiamando il metodo
addPolygon
. 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 and define variables
import com.google.android.gms.maps3d.model.LatLngAltitude
import com.google.android.gms.maps3d.model.polygonOptions
val zooOutline = """
39.7508987, -104.9565381
39.7502883, -104.9565489
39.7501976, -104.9563557
39.7501481, -104.955594
39.7499171, -104.9553043
39.7495872, -104.9551648
39.7492407, -104.954961
39.7489685, -104.9548859
39.7484488, -104.9548966
39.7481189, -104.9548859
39.7479539, -104.9547679
39.7479209, -104.9544567
39.7476487, -104.9535341
39.7475085, -104.9525792
39.7474095, -104.9519247
39.747525, -104.9513776
39.7476734, -104.9511844
39.7478137, -104.9506265
39.7477559, -104.9496395
39.7477477, -104.9486203
39.7478467, -104.9475796
39.7482344, -104.9465818
39.7486138, -104.9457878
39.7491005, -104.9454874
39.7495789, -104.945938
39.7500491, -104.9466998
39.7503213, -104.9474615
39.7505358, -104.9486954
39.7505111, -104.950648
39.7511215, -104.9506587
39.7511173, -104.9527187
39.7511091, -104.9546445
39.7508987, -104.9565381""".trimIndent()
.split("\n")
.map { line -> line.split(",").map { it.trim().toDouble() } }
.map { coords ->
latLngAltitude {
latitude = coords[0]
longitude = coords[1]
altitude = 0.0
}
}
val zooPolygonOptions = polygonOptions {
outerCoordinates = zooOutline
fillColor = Color.argb(70, 255, 255, 0)
strokeColor = Color.GREEN
strokeWidth = 3.0
altitudeMode = AltitudeMode.CLAMP_TO_GROUND
}
val zooPolygon = googleMap3D.addPolygon(zooPolygonOptions)
...
// Add to the onMap3DViewReady method, after the googleMap3D object has been initialized
googleMap3D.setCamera(
camera {
center = latLngAltitude {
latitude = 39.748477
longitude = -104.947575
altitude = 1610.0
}
heading = 290.0
tilt = 47.0
range = 2251.0
}
)
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,["# Add a polygon to a map\n\nSelect platform: [Android](/maps/documentation/maps-3d/android-sdk/add-polygons \"View this page for the Android platform docs.\") [iOS](/maps/documentation/maps-3d/ios-sdk/add-polygons \"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\nThe following code sample demonstrates how to add a 3D polygon and position\nit in 3D space by calling the\n[`addPolygon`](/maps/documentation/maps-3d/android-sdk/reference/com/google/android/gms/maps3d/GoogleMap3D#addPolygon(com.google.android.gms.maps3d.model.PolygonOptions))\nmethod. 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)\nto set up 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 and define variables\nimport com.google.android.gms.maps3d.model.LatLngAltitude\nimport com.google.android.gms.maps3d.model.polygonOptions\n\nval zooOutline = \"\"\"\n 39.7508987, -104.9565381\n 39.7502883, -104.9565489\n 39.7501976, -104.9563557\n 39.7501481, -104.955594\n 39.7499171, -104.9553043\n 39.7495872, -104.9551648\n 39.7492407, -104.954961\n 39.7489685, -104.9548859\n 39.7484488, -104.9548966\n 39.7481189, -104.9548859\n 39.7479539, -104.9547679\n 39.7479209, -104.9544567\n 39.7476487, -104.9535341\n 39.7475085, -104.9525792\n 39.7474095, -104.9519247\n 39.747525, -104.9513776\n 39.7476734, -104.9511844\n 39.7478137, -104.9506265\n 39.7477559, -104.9496395\n 39.7477477, -104.9486203\n 39.7478467, -104.9475796\n 39.7482344, -104.9465818\n 39.7486138, -104.9457878\n 39.7491005, -104.9454874\n 39.7495789, -104.945938\n 39.7500491, -104.9466998\n 39.7503213, -104.9474615\n 39.7505358, -104.9486954\n 39.7505111, -104.950648\n 39.7511215, -104.9506587\n 39.7511173, -104.9527187\n 39.7511091, -104.9546445\n 39.7508987, -104.9565381\"\"\".trimIndent()\n .split(\"\\n\")\n .map { line -\u003e line.split(\",\").map { it.trim().toDouble() } }\n .map { coords -\u003e\n latLngAltitude {\n latitude = coords[0]\n longitude = coords[1]\n altitude = 0.0\n }\n }\n\nval zooPolygonOptions = polygonOptions {\n outerCoordinates = zooOutline\n fillColor = Color.argb(70, 255, 255, 0)\n strokeColor = Color.GREEN\n strokeWidth = 3.0\n altitudeMode = AltitudeMode.CLAMP_TO_GROUND\n}\n\nval zooPolygon = googleMap3D.addPolygon(zooPolygonOptions)\n\n...\n\n// Add to the onMap3DViewReady method, after the googleMap3D object has been initialized\ngoogleMap3D.setCamera(\n camera {\n center = latLngAltitude {\n latitude = 39.748477\n longitude = -104.947575\n altitude = 1610.0\n }\n heading = 290.0\n tilt = 47.0\n range = 2251.0\n }\n)\n```"]]