From c673d28fd39f3cee14d5eec9a09b5d18b448f06b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Enrique=20Lo=CC=81pez=20Man=CC=83as?= Date: Wed, 4 Mar 2026 16:51:24 +0100 Subject: [PATCH 01/36] docs: headers --- settings.gradle.kts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/settings.gradle.kts b/settings.gradle.kts index a554202b..53a350d7 100644 --- a/settings.gradle.kts +++ b/settings.gradle.kts @@ -1,5 +1,5 @@ /* - * Copyright 2025 Google LLC + * Copyright 2026 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. From 45874dac4172fad34c92a4d55876aa8dcfc87c34 Mon Sep 17 00:00:00 2001 From: dkhawk <107309+dkhawk@users.noreply.github.com> Date: Wed, 4 Mar 2026 13:16:24 -0700 Subject: [PATCH 02/36] feat: Add standalone scripts for cataloging Maps3D API snippets coverage --- snippets/CATALOG.md | 1434 +++++++++++++++++ .../example/snippets/java/MapActivity.java | 2 +- snippets/scripts/api_manifest.json | 475 ++++++ snippets/scripts/catalog_api.py | 225 +++ snippets/scripts/generate_manifest.py | 143 ++ 5 files changed, 2278 insertions(+), 1 deletion(-) create mode 100644 snippets/CATALOG.md create mode 100644 snippets/scripts/api_manifest.json create mode 100644 snippets/scripts/catalog_api.py create mode 100644 snippets/scripts/generate_manifest.py diff --git a/snippets/CATALOG.md b/snippets/CATALOG.md new file mode 100644 index 00000000..ca7e2741 --- /dev/null +++ b/snippets/CATALOG.md @@ -0,0 +1,1434 @@ +# Maps3D API Snippets Catalog + +This document was auto-generated by `scripts/catalog_api.py`. It serves as a cross-reference matrix ensuring that every critical feature in the 3D Maps SDK is actively demonstrated inside a snippet boundary (`// [START ...]`). + +## Kotlin Snippets +### `Camera` +- `getCenter`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:93](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L93) (Tag: `maps_android_3d_camera_events_kt`) +- `setCenter`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:34](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L34) (Tag: `maps_android_3d_camera_fly_to_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:58](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L58) (Tag: `maps_android_3d_camera_fly_around_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:49](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L49) (Tag: `maps_android_3d_init_basic_kt`) +- `setHeading`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:40](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L40) (Tag: `maps_android_3d_camera_fly_to_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:54](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L54) (Tag: `maps_android_3d_init_basic_kt`) +- `setRange`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:57](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L57) (Tag: `maps_android_3d_init_basic_kt`) +- `setRoll`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:56](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L56) (Tag: `maps_android_3d_init_basic_kt`) +- `setTilt`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:39](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L39) (Tag: `maps_android_3d_camera_fly_to_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:55](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L55) (Tag: `maps_android_3d_init_basic_kt`) +- `writeToParcel`: ❌ No coverage + +### `CameraRestriction` +- `setBounds`: ❌ No coverage +- `setMaxAltitude`: ❌ No coverage +- `setMaxHeading`: ❌ No coverage +- `setMaxTilt`: ❌ No coverage +- `setMinAltitude`: ❌ No coverage +- `setMinHeading`: ❌ No coverage +- `setMinTilt`: ❌ No coverage +- `writeToParcel`: ❌ No coverage + +### `FlyAroundOptions` +- `getCenter`: ❌ No coverage +- `getDurationInMillis`: ❌ No coverage +- `getRounds`: ❌ No coverage +- `setCenter`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:67](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L67) (Tag: `maps_android_3d_camera_fly_around_kt`) +- `setDurationInMillis`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:69](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L69) (Tag: `maps_android_3d_camera_fly_around_kt`) +- `setRounds`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:68](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L68) (Tag: `maps_android_3d_camera_fly_around_kt`) +- `writeToParcel`: ❌ No coverage + +### `FlyToOptions` +- `getDurationInMillis`: ❌ No coverage +- `getEndCamera`: ❌ No coverage +- `setDurationInMillis`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:45](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L45) (Tag: `maps_android_3d_camera_fly_to_kt`) +- `setEndCamera`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:44](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L44) (Tag: `maps_android_3d_camera_fly_to_kt`) +- `writeToParcel`: ❌ No coverage + +### `Glyph` +- `equals`: ❌ No coverage +- `fromCircle`: ❌ No coverage +- `fromColor`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:99](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L99) (Tag: `maps_android_3d_marker_custom_icon_kt`) +- `fromText`: ❌ No coverage +- `getColor`: ❌ No coverage +- `getImage`: ❌ No coverage +- `getText`: ❌ No coverage +- `hashCode`: ❌ No coverage +- `setColor`: ❌ No coverage +- `setImage`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:101](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L101) (Tag: `maps_android_3d_marker_custom_icon_kt`) +- `setText`: ❌ No coverage +- `writeToParcel`: ❌ No coverage + +### `GoogleMap3D` +- `addMarker`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:119](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L119) (Tag: `maps_android_3d_marker_custom_icon_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:50](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L50) (Tag: `maps_android_3d_marker_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:72](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L72) (Tag: `maps_android_3d_marker_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:81](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L81) (Tag: `maps_android_3d_marker_click_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:40](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L40) (Tag: `maps_android_3d_popover_add_kt`) +- `addModel`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:45](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L45) (Tag: `maps_android_3d_model_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:70](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L70) (Tag: `maps_android_3d_model_options_kt`) +- `addPolygon`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:48](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L48) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:73](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L73) (Tag: `maps_android_3d_polygon_extruded_kt`) +- `addPolyline`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:45](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L45) (Tag: `maps_android_3d_polyline_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:71](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L71) (Tag: `maps_android_3d_polyline_options_kt`) +- `addPopover`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:56](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L56) (Tag: `maps_android_3d_popover_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:79](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L79) (Tag: `maps_android_3d_popover_options_kt`) +- `flyCameraAround`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:72](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L72) (Tag: `maps_android_3d_camera_fly_around_kt`) +- `flyCameraTo`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:48](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L48) (Tag: `maps_android_3d_camera_fly_to_kt`) +- `getCamera`: ❌ No coverage +- `getCameraRestriction`: ❌ No coverage +- `getMapMode`: ❌ No coverage +- `setCamera`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:59](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L59) (Tag: `maps_android_3d_init_basic_kt`) +- `setCameraAnimationEndListener`: ❌ No coverage +- `setCameraChangedListener`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:91](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L91) (Tag: `maps_android_3d_camera_events_kt`) +- `setCameraRestriction`: ❌ No coverage +- `setMap3DClickListener`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:31](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L31) (Tag: `maps_android_3d_place_click_kt`) +- `setMapMode`: ❌ No coverage +- `setOnMapReadyListener`: + - [MapActivity.kt:32](MapActivity.kt#L32) (Tag: `No Tag`) + - [MapActivity.kt:48](MapActivity.kt#L48) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:78](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L78) (Tag: `maps_android_3d_init_listeners_kt`) +- `setOnMapSteadyListener`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:87](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L87) (Tag: `maps_android_3d_init_listeners_kt`) +- `stopCameraAnimation`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:81](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L81) (Tag: `maps_android_3d_camera_stop_kt`) + +### `Hole` +- `getVertices`: ❌ No coverage +- `setVertices`: ❌ No coverage +- `writeToParcel`: ❌ No coverage + +### `ImageView` +- `equals`: ❌ No coverage +- `getResourceId`: ❌ No coverage +- `hashCode`: ❌ No coverage +- `setResourceId`: ❌ No coverage +- `writeToParcel`: ❌ No coverage + +### `LatLngAltitude` +- `getAltitude`: ❌ No coverage +- `getLatitude`: ❌ No coverage +- `getLongitude`: ❌ No coverage +- `getPosition`: ❌ No coverage +- `setAltitude`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:37](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L37) (Tag: `maps_android_3d_camera_fly_to_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:61](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L61) (Tag: `maps_android_3d_camera_fly_around_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:52](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L52) (Tag: `maps_android_3d_init_basic_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:107](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L107) (Tag: `maps_android_3d_marker_custom_icon_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:41](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L41) (Tag: `maps_android_3d_marker_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:63](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L63) (Tag: `maps_android_3d_marker_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:82](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L82) (Tag: `maps_android_3d_marker_click_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:36](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L36) (Tag: `maps_android_3d_model_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:58](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L58) (Tag: `maps_android_3d_model_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:33](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L33) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:34](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L34) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:35](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L35) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:36](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L36) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:37](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L37) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:58](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L58) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:59](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L59) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:60](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L60) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:61](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L61) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:62](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L62) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:33](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L33) (Tag: `maps_android_3d_polyline_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:34](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L34) (Tag: `maps_android_3d_polyline_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:35](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L35) (Tag: `maps_android_3d_polyline_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:55](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L55) (Tag: `maps_android_3d_polyline_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:56](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L56) (Tag: `maps_android_3d_polyline_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:38](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L38) (Tag: `maps_android_3d_popover_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:74](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L74) (Tag: `maps_android_3d_popover_options_kt`) +- `setLatitude`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:35](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L35) (Tag: `maps_android_3d_camera_fly_to_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:59](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L59) (Tag: `maps_android_3d_camera_fly_around_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:50](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L50) (Tag: `maps_android_3d_init_basic_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:105](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L105) (Tag: `maps_android_3d_marker_custom_icon_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:39](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L39) (Tag: `maps_android_3d_marker_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:61](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L61) (Tag: `maps_android_3d_marker_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:82](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L82) (Tag: `maps_android_3d_marker_click_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:34](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L34) (Tag: `maps_android_3d_model_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:56](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L56) (Tag: `maps_android_3d_model_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:33](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L33) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:34](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L34) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:35](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L35) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:36](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L36) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:37](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L37) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:58](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L58) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:59](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L59) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:60](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L60) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:61](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L61) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:62](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L62) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:33](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L33) (Tag: `maps_android_3d_polyline_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:34](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L34) (Tag: `maps_android_3d_polyline_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:35](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L35) (Tag: `maps_android_3d_polyline_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:55](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L55) (Tag: `maps_android_3d_polyline_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:56](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L56) (Tag: `maps_android_3d_polyline_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:38](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L38) (Tag: `maps_android_3d_popover_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:74](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L74) (Tag: `maps_android_3d_popover_options_kt`) +- `setLongitude`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:36](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L36) (Tag: `maps_android_3d_camera_fly_to_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:60](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L60) (Tag: `maps_android_3d_camera_fly_around_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:51](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L51) (Tag: `maps_android_3d_init_basic_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:106](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L106) (Tag: `maps_android_3d_marker_custom_icon_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:40](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L40) (Tag: `maps_android_3d_marker_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:62](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L62) (Tag: `maps_android_3d_marker_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:82](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L82) (Tag: `maps_android_3d_marker_click_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:35](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L35) (Tag: `maps_android_3d_model_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:57](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L57) (Tag: `maps_android_3d_model_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:33](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L33) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:34](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L34) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:35](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L35) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:36](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L36) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:37](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L37) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:58](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L58) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:59](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L59) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:60](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L60) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:61](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L61) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:62](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L62) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:33](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L33) (Tag: `maps_android_3d_polyline_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:34](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L34) (Tag: `maps_android_3d_polyline_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:35](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L35) (Tag: `maps_android_3d_polyline_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:55](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L55) (Tag: `maps_android_3d_polyline_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:56](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L56) (Tag: `maps_android_3d_polyline_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:38](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L38) (Tag: `maps_android_3d_popover_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:74](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L74) (Tag: `maps_android_3d_popover_options_kt`) +- `writeToParcel`: ❌ No coverage + +### `LatLngBounds` +- `getNorthEastLat`: ❌ No coverage +- `getNorthEastLng`: ❌ No coverage +- `getSouthWestLat`: ❌ No coverage +- `getSouthWestLng`: ❌ No coverage +- `setNorthEastLat`: ❌ No coverage +- `setNorthEastLng`: ❌ No coverage +- `setSouthWestLat`: ❌ No coverage +- `setSouthWestLng`: ❌ No coverage +- `writeToParcel`: ❌ No coverage + +### `Map3DOptions` +- `attributes`: ❌ No coverage +- `bounds`: ❌ No coverage +- `centerAlt`: ❌ No coverage +- `centerLat`: ❌ No coverage +- `centerLng`: ❌ No coverage +- `defaultUiDisabled`: ❌ No coverage +- `fromAttributeSet`: ❌ No coverage +- `getAttributes`: ❌ No coverage +- `getBounds`: ❌ No coverage +- `getCenterAlt`: ❌ No coverage +- `getCenterLat`: ❌ No coverage +- `getCenterLng`: ❌ No coverage +- `getDefaultUiDisabled`: ❌ No coverage +- `getHeading`: ❌ No coverage +- `getMapId`: ❌ No coverage +- `getMapMode`: ❌ No coverage +- `getMaxAltitude`: ❌ No coverage +- `getMaxHeading`: ❌ No coverage +- `getMaxTilt`: ❌ No coverage +- `getMinAltitude`: ❌ No coverage +- `getMinHeading`: ❌ No coverage +- `getMinTilt`: ❌ No coverage +- `getOptions`: ❌ No coverage +- `getRange`: ❌ No coverage +- `getRoll`: ❌ No coverage +- `getTilt`: ❌ No coverage +- `heading`: ❌ No coverage +- `mapId`: ❌ No coverage +- `mapMode`: ❌ No coverage +- `maxAltitude`: ❌ No coverage +- `maxHeading`: ❌ No coverage +- `maxTilt`: ❌ No coverage +- `minAltitude`: ❌ No coverage +- `minHeading`: ❌ No coverage +- `minTilt`: ❌ No coverage +- `options`: ❌ No coverage +- `range`: ❌ No coverage +- `roll`: ❌ No coverage +- `tilt`: ❌ No coverage + +### `Map3DView` +- `getMap3DViewAsync`: + - [MapActivity.kt:29](MapActivity.kt#L29) (Tag: `No Tag`) + - [MapActivity.kt:45](MapActivity.kt#L45) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:46](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L46) (Tag: `maps_android_3d_init_basic_kt`) +- `getOverlayView`: ❌ No coverage +- `getParams`: ❌ No coverage +- `overlayView`: ❌ No coverage +- `params`: ❌ No coverage +- `setParams`: ❌ No coverage + +### `Marker` +- `getAltitudeMode`: ❌ No coverage +- `getCollisionBehavior`: ❌ No coverage +- `getDrawsWhenOccluded`: ❌ No coverage +- `getId`: ❌ No coverage +- `getLabel`: ❌ No coverage +- `getPosition`: ❌ No coverage +- `getSizePreserved`: ❌ No coverage +- `getUrl`: ❌ No coverage +- `getZIndex`: ❌ No coverage +- `isExtruded`: ❌ No coverage +- `onMarkerClick`: ❌ No coverage +- `remove`: ❌ No coverage +- `setAltitudeMode`: ❌ No coverage +- `setClickListener`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:86](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L86) (Tag: `maps_android_3d_marker_click_kt`) +- `setCollisionBehavior`: ❌ No coverage +- `setDrawsWhenOccluded`: ❌ No coverage +- `setExtruded`: ❌ No coverage +- `setLabel`: ❌ No coverage +- `setPosition`: ❌ No coverage +- `setSizePreserved`: ❌ No coverage +- `setUrl`: ❌ No coverage +- `setZIndex`: ❌ No coverage + +### `MarkerOptions` +- `getAltitudeMode`: ❌ No coverage +- `getCollisionBehavior`: ❌ No coverage +- `getId`: ❌ No coverage +- `getLabel`: ❌ No coverage +- `getPosition`: ❌ No coverage +- `getZIndex`: ❌ No coverage +- `isDrawnWhenOccluded`: ❌ No coverage +- `isExtruded`: ❌ No coverage +- `isSizePreserved`: ❌ No coverage +- `setAltitudeMode`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:65](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L65) (Tag: `maps_android_3d_marker_options_kt`) +- `setCollisionBehavior`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:67](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L67) (Tag: `maps_android_3d_marker_options_kt`) +- `setDrawnWhenOccluded`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:69](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L69) (Tag: `maps_android_3d_marker_options_kt`) +- `setExtruded`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:68](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L68) (Tag: `maps_android_3d_marker_options_kt`) +- `setId`: ❌ No coverage +- `setLabel`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:109](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L109) (Tag: `maps_android_3d_marker_custom_icon_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:46](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L46) (Tag: `maps_android_3d_marker_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:66](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L66) (Tag: `maps_android_3d_marker_options_kt`) +- `setPosition`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:104](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L104) (Tag: `maps_android_3d_marker_custom_icon_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:45](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L45) (Tag: `maps_android_3d_marker_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:60](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L60) (Tag: `maps_android_3d_marker_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:82](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L82) (Tag: `maps_android_3d_marker_click_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:38](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L38) (Tag: `maps_android_3d_popover_add_kt`) +- `setSizePreserved`: ❌ No coverage +- `setZIndex`: ❌ No coverage + +### `MarkerOptions.that` +- `getStyle`: ❌ No coverage +- `setStyle`: ❌ No coverage +- `writeToParcel`: ❌ No coverage + +### `MarkerStyle` +- `equals`: ❌ No coverage +- `getImageView`: ❌ No coverage +- `getPinConfiguration`: ❌ No coverage +- `hashCode`: ❌ No coverage +- `writeToParcel`: ❌ No coverage + +### `Model` +- `getAltitudeMode`: ❌ No coverage +- `getId`: ❌ No coverage +- `getOrientation`: ❌ No coverage +- `getPosition`: ❌ No coverage +- `getScale`: ❌ No coverage +- `getUrl`: ❌ No coverage +- `onModelClick`: ❌ No coverage +- `remove`: ❌ No coverage +- `setAltitudeMode`: ❌ No coverage +- `setClickListener`: ❌ No coverage +- `setOrientation`: ❌ No coverage +- `setPosition`: ❌ No coverage +- `setScale`: ❌ No coverage +- `setUrl`: ❌ No coverage + +### `ModelOptions` +- `getAltitudeMode`: ❌ No coverage +- `getId`: ❌ No coverage +- `getOrientation`: ❌ No coverage +- `getPosition`: ❌ No coverage +- `getScale`: ❌ No coverage +- `getUrl`: ❌ No coverage +- `setAltitudeMode`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:42](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L42) (Tag: `maps_android_3d_model_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:67](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L67) (Tag: `maps_android_3d_model_options_kt`) +- `setId`: ❌ No coverage +- `setOrientation`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:62](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L62) (Tag: `maps_android_3d_model_options_kt`) +- `setPosition`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:40](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L40) (Tag: `maps_android_3d_model_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:55](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L55) (Tag: `maps_android_3d_model_options_kt`) +- `setScale`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:61](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L61) (Tag: `maps_android_3d_model_options_kt`) +- `setUrl`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:41](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L41) (Tag: `maps_android_3d_model_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:60](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L60) (Tag: `maps_android_3d_model_options_kt`) +- `writeToParcel`: ❌ No coverage + +### `Orientation` +- `getHeading`: ❌ No coverage +- `getRoll`: ❌ No coverage +- `getTilt`: ❌ No coverage +- `setHeading`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:64](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L64) (Tag: `maps_android_3d_model_options_kt`) +- `setRoll`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:65](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L65) (Tag: `maps_android_3d_model_options_kt`) +- `setTilt`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:63](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L63) (Tag: `maps_android_3d_model_options_kt`) +- `writeToParcel`: ❌ No coverage + +### `PinConfiguration` +- `builder`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:111](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L111) (Tag: `maps_android_3d_marker_custom_icon_kt`) +- `equals`: ❌ No coverage +- `getBackgroundColor`: ❌ No coverage +- `getBorderColor`: ❌ No coverage +- `getGlyph`: ❌ No coverage +- `getScale`: ❌ No coverage +- `hashCode`: ❌ No coverage +- `setBackgroundColor`: ❌ No coverage +- `setBorderColor`: ❌ No coverage +- `setGlyph`: ❌ No coverage +- `setScale`: ❌ No coverage +- `writeToParcel`: ❌ No coverage + +### `PinConfiguration.Builder` +- `build`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:116](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L116) (Tag: `maps_android_3d_marker_custom_icon_kt`) +- `setBackgroundColor`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:114](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L114) (Tag: `maps_android_3d_marker_custom_icon_kt`) +- `setBorderColor`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:115](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L115) (Tag: `maps_android_3d_marker_custom_icon_kt`) +- `setGlyph`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:113](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L113) (Tag: `maps_android_3d_marker_custom_icon_kt`) +- `setScale`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:112](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L112) (Tag: `maps_android_3d_marker_custom_icon_kt`) + +### `Polygon` +- `getAltitudeMode`: ❌ No coverage +- `getDrawsOccludedSegments`: ❌ No coverage +- `getExtruded`: ❌ No coverage +- `getFillColor`: ❌ No coverage +- `getGeodesic`: ❌ No coverage +- `getId`: ❌ No coverage +- `getInnerCoordinates`: ❌ No coverage +- `getInnerPaths`: ❌ No coverage +- `getOuterCoordinates`: ❌ No coverage +- `getPath`: ❌ No coverage +- `getStrokeColor`: ❌ No coverage +- `getStrokeWidth`: ❌ No coverage +- `getZIndex`: ❌ No coverage +- `onPolygonClick`: ❌ No coverage +- `remove`: ❌ No coverage +- `setAltitudeMode`: ❌ No coverage +- `setClickListener`: ❌ No coverage +- `setDrawsOccludedSegments`: ❌ No coverage +- `setExtruded`: ❌ No coverage +- `setFillColor`: ❌ No coverage +- `setGeodesic`: ❌ No coverage +- `setInnerCoordinates`: ❌ No coverage +- `setInnerPaths`: ❌ No coverage +- `setOuterCoordinates`: ❌ No coverage +- `setPath`: ❌ No coverage +- `setStrokeColor`: ❌ No coverage +- `setStrokeWidth`: ❌ No coverage +- `setZIndex`: ❌ No coverage + +### `PolygonOptions` +- `getAltitudeMode`: ❌ No coverage +- `getDrawsOccludedSegments`: ❌ No coverage +- `getExtruded`: ❌ No coverage +- `getFillColor`: ❌ No coverage +- `getGeodesic`: ❌ No coverage +- `getId`: ❌ No coverage +- `getInnerPaths`: ❌ No coverage +- `getPath`: ❌ No coverage +- `getStrokeColor`: ❌ No coverage +- `getStrokeWidth`: ❌ No coverage +- `getZIndex`: ❌ No coverage +- `setAltitudeMode`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:45](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L45) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:70](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L70) (Tag: `maps_android_3d_polygon_extruded_kt`) +- `setDrawsOccludedSegments`: ❌ No coverage +- `setExtruded`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:68](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L68) (Tag: `maps_android_3d_polygon_extruded_kt`) +- `setFillColor`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:42](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L42) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:67](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L67) (Tag: `maps_android_3d_polygon_extruded_kt`) +- `setGeodesic`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:69](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L69) (Tag: `maps_android_3d_polygon_extruded_kt`) +- `setId`: ❌ No coverage +- `setInnerPaths`: ❌ No coverage +- `setPath`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:41](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L41) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:66](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L66) (Tag: `maps_android_3d_polygon_extruded_kt`) +- `setStrokeColor`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:43](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L43) (Tag: `maps_android_3d_polygon_add_kt`) +- `setStrokeWidth`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:44](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L44) (Tag: `maps_android_3d_polygon_add_kt`) +- `setZIndex`: ❌ No coverage +- `writeToParcel`: ❌ No coverage + +### `Polyline` +- `getAltitudeMode`: ❌ No coverage +- `getCoordinates`: ❌ No coverage +- `getDrawsOccludedSegments`: ❌ No coverage +- `getGeodesic`: ❌ No coverage +- `getId`: ❌ No coverage +- `getOuterColor`: ❌ No coverage +- `getOuterWidth`: ❌ No coverage +- `getPath`: ❌ No coverage +- `getStrokeColor`: ❌ No coverage +- `getStrokeWidth`: ❌ No coverage +- `getZIndex`: ❌ No coverage +- `onPolylineClick`: ❌ No coverage +- `remove`: ❌ No coverage +- `setAltitudeMode`: ❌ No coverage +- `setClickListener`: ❌ No coverage +- `setCoordinates`: ❌ No coverage +- `setDrawsOccludedSegments`: ❌ No coverage +- `setGeodesic`: ❌ No coverage +- `setOuterColor`: ❌ No coverage +- `setOuterWidth`: ❌ No coverage +- `setPath`: ❌ No coverage +- `setStrokeColor`: ❌ No coverage +- `setStrokeWidth`: ❌ No coverage +- `setZIndex`: ❌ No coverage + +### `PolylineOptions` +- `getAltitudeMode`: ❌ No coverage +- `getDrawsOccludedSegments`: ❌ No coverage +- `getExtruded`: ❌ No coverage +- `getGeodesic`: ❌ No coverage +- `getId`: ❌ No coverage +- `getOuterColor`: ❌ No coverage +- `getOuterWidth`: ❌ No coverage +- `getPath`: ❌ No coverage +- `getStrokeColor`: ❌ No coverage +- `getStrokeWidth`: ❌ No coverage +- `getZIndex`: ❌ No coverage +- `setAltitudeMode`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:42](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L42) (Tag: `maps_android_3d_polyline_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:65](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L65) (Tag: `maps_android_3d_polyline_options_kt`) +- `setDrawsOccludedSegments`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:68](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L68) (Tag: `maps_android_3d_polyline_options_kt`) +- `setExtruded`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:66](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L66) (Tag: `maps_android_3d_polyline_options_kt`) +- `setGeodesic`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:67](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L67) (Tag: `maps_android_3d_polyline_options_kt`) +- `setId`: ❌ No coverage +- `setOuterColor`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:63](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L63) (Tag: `maps_android_3d_polyline_options_kt`) +- `setOuterWidth`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:64](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L64) (Tag: `maps_android_3d_polyline_options_kt`) +- `setPath`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:39](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L39) (Tag: `maps_android_3d_polyline_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:60](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L60) (Tag: `maps_android_3d_polyline_options_kt`) +- `setStrokeColor`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:40](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L40) (Tag: `maps_android_3d_polyline_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:61](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L61) (Tag: `maps_android_3d_polyline_options_kt`) +- `setStrokeWidth`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:41](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L41) (Tag: `maps_android_3d_polyline_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:62](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L62) (Tag: `maps_android_3d_polyline_options_kt`) +- `setZIndex`: ❌ No coverage +- `writeToParcel`: ❌ No coverage + +### `Popover` +- `altitudeMode`: ❌ No coverage +- `anchorId`: ❌ No coverage +- `anchorOffset`: ❌ No coverage +- `autoCloseEnabled`: ❌ No coverage +- `autoPanEnabled`: ❌ No coverage +- `autoPanFn`: ❌ No coverage +- `content`: ❌ No coverage +- `getAltitudeMode`: ❌ No coverage +- `getAnchorId`: ❌ No coverage +- `getAnchorOffset`: ❌ No coverage +- `getAutoCloseEnabled`: ❌ No coverage +- `getAutoPanEnabled`: ❌ No coverage +- `getAutoPanFn`: ❌ No coverage +- `getContent`: ❌ No coverage +- `getIsVisible`: ❌ No coverage +- `getPositionAnchor`: ❌ No coverage +- `getRemoveFn`: ❌ No coverage +- `hide`: ❌ No coverage +- `isVisible`: ❌ No coverage +- `positionAnchor`: ❌ No coverage +- `remove`: ❌ No coverage +- `removeFn`: ❌ No coverage +- `show`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:59](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L59) (Tag: `maps_android_3d_popover_add_kt`) +- `toggle`: ❌ No coverage + +### `PopoverOptions` +- `getAltitudeMode`: ❌ No coverage +- `getAnchorOffset`: ❌ No coverage +- `getAutoCloseEnabled`: ❌ No coverage +- `getAutoPanEnabled`: ❌ No coverage +- `getContent`: ❌ No coverage +- `getPopoverStyle`: ❌ No coverage +- `getPositionAnchor`: ❌ No coverage +- `setAltitudeMode`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:53](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L53) (Tag: `maps_android_3d_popover_add_kt`) +- `setAnchorOffset`: ❌ No coverage +- `setAutoCloseEnabled`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:75](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L75) (Tag: `maps_android_3d_popover_options_kt`) +- `setAutoPanEnabled`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:76](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L76) (Tag: `maps_android_3d_popover_options_kt`) +- `setContent`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:51](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L51) (Tag: `maps_android_3d_popover_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:73](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L73) (Tag: `maps_android_3d_popover_options_kt`) +- `setPopoverStyle`: ❌ No coverage +- `setPositionAnchor`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:52](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L52) (Tag: `maps_android_3d_popover_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:74](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L74) (Tag: `maps_android_3d_popover_options_kt`) + +### `PopoverShadow` +- `getColor`: ❌ No coverage +- `getOffsetX`: ❌ No coverage +- `getOffsetY`: ❌ No coverage +- `getRadius`: ❌ No coverage +- `setColor`: ❌ No coverage +- `setOffsetX`: ❌ No coverage +- `setOffsetY`: ❌ No coverage +- `setRadius`: ❌ No coverage + +### `PopoverStyle` +- `getBackgroundColor`: ❌ No coverage +- `getBorderRadius`: ❌ No coverage +- `getPadding`: ❌ No coverage +- `getShadow`: ❌ No coverage +- `setBackgroundColor`: ❌ No coverage +- `setBorderRadius`: ❌ No coverage +- `setPadding`: ❌ No coverage +- `setShadow`: ❌ No coverage + +### `Validators.for` +- `Anchorable`: ❌ No coverage +- `Camera`: ❌ No coverage +- `CameraRestriction`: ❌ No coverage +- `FlyAroundOptions`: ❌ No coverage +- `FlyToOptions`: ❌ No coverage +- `Hole`: ❌ No coverage +- `LatLngAltitude`: ❌ No coverage +- `LatLngBounds`: ❌ No coverage +- `Map3DOptions`: ❌ No coverage +- `MarkerOptions`: ❌ No coverage +- `ModelOptions`: ❌ No coverage +- `Orientation`: ❌ No coverage +- `PolygonOptions`: ❌ No coverage +- `PolylineOptions`: ❌ No coverage +- `PopoverOptions`: ❌ No coverage +- `Vector3D`: ❌ No coverage +- `requireNonNegative`: ❌ No coverage +- `validateAltitude`: ❌ No coverage +- `validateFinite`: ❌ No coverage +- `validateHeading`: ❌ No coverage +- `validateLatitude`: ❌ No coverage +- `validateLongitude`: ❌ No coverage +- `validateRange`: ❌ No coverage +- `validateRoll`: ❌ No coverage +- `validateTilt`: ❌ No coverage + +### `Vector3D` +- `getX`: ❌ No coverage +- `getY`: ❌ No coverage +- `getZ`: ❌ No coverage +- `setX`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:61](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L61) (Tag: `maps_android_3d_model_options_kt`) +- `setY`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:61](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L61) (Tag: `maps_android_3d_model_options_kt`) +- `setZ`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:61](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L61) (Tag: `maps_android_3d_model_options_kt`) +- `writeToParcel`: ❌ No coverage + +### Missing Extracted API Coverage (Kotlin Snippets) +The following non-getter/setter APIs currently have `0` occurrences within this section: + +- `Camera.writeToParcel` +- `CameraRestriction.writeToParcel` +- `FlyAroundOptions.writeToParcel` +- `FlyToOptions.writeToParcel` +- `Glyph.equals` +- `Glyph.fromCircle` +- `Glyph.fromText` +- `Glyph.hashCode` +- `Glyph.writeToParcel` +- `Hole.writeToParcel` +- `ImageView.equals` +- `ImageView.hashCode` +- `ImageView.writeToParcel` +- `LatLngAltitude.writeToParcel` +- `LatLngBounds.writeToParcel` +- `Map3DOptions.attributes` +- `Map3DOptions.bounds` +- `Map3DOptions.centerAlt` +- `Map3DOptions.centerLat` +- `Map3DOptions.centerLng` +- `Map3DOptions.defaultUiDisabled` +- `Map3DOptions.fromAttributeSet` +- `Map3DOptions.heading` +- `Map3DOptions.mapId` +- `Map3DOptions.mapMode` +- `Map3DOptions.maxAltitude` +- `Map3DOptions.maxHeading` +- `Map3DOptions.maxTilt` +- `Map3DOptions.minAltitude` +- `Map3DOptions.minHeading` +- `Map3DOptions.minTilt` +- `Map3DOptions.options` +- `Map3DOptions.range` +- `Map3DOptions.roll` +- `Map3DOptions.tilt` +- `Map3DView.overlayView` +- `Map3DView.params` +- `Marker.isExtruded` +- `Marker.onMarkerClick` +- `Marker.remove` +- `MarkerOptions.isDrawnWhenOccluded` +- `MarkerOptions.isExtruded` +- `MarkerOptions.isSizePreserved` +- `MarkerOptions.that.writeToParcel` +- `MarkerStyle.equals` +- `MarkerStyle.hashCode` +- `MarkerStyle.writeToParcel` +- `Model.onModelClick` +- `Model.remove` +- `ModelOptions.writeToParcel` +- `Orientation.writeToParcel` +- `PinConfiguration.equals` +- `PinConfiguration.hashCode` +- `PinConfiguration.writeToParcel` +- `Polygon.onPolygonClick` +- `Polygon.remove` +- `PolygonOptions.writeToParcel` +- `Polyline.onPolylineClick` +- `Polyline.remove` +- `PolylineOptions.writeToParcel` +- `Popover.altitudeMode` +- `Popover.anchorId` +- `Popover.anchorOffset` +- `Popover.autoCloseEnabled` +- `Popover.autoPanEnabled` +- `Popover.autoPanFn` +- `Popover.content` +- `Popover.hide` +- `Popover.isVisible` +- `Popover.positionAnchor` +- `Popover.remove` +- `Popover.removeFn` +- `Popover.toggle` +- `Validators.for.Anchorable` +- `Validators.for.Camera` +- `Validators.for.CameraRestriction` +- `Validators.for.FlyAroundOptions` +- `Validators.for.FlyToOptions` +- `Validators.for.Hole` +- `Validators.for.LatLngAltitude` +- `Validators.for.LatLngBounds` +- `Validators.for.Map3DOptions` +- `Validators.for.MarkerOptions` +- `Validators.for.ModelOptions` +- `Validators.for.Orientation` +- `Validators.for.PolygonOptions` +- `Validators.for.PolylineOptions` +- `Validators.for.PopoverOptions` +- `Validators.for.Vector3D` +- `Validators.for.requireNonNegative` +- `Validators.for.validateAltitude` +- `Validators.for.validateFinite` +- `Validators.for.validateHeading` +- `Validators.for.validateLatitude` +- `Validators.for.validateLongitude` +- `Validators.for.validateRange` +- `Validators.for.validateRoll` +- `Validators.for.validateTilt` +- `Vector3D.writeToParcel` + +## Java Snippets +### `Camera` +- `getCenter`: + - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:107](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L107) (Tag: `maps_android_3d_camera_events_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:99](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L99) (Tag: `No Tag`) +- `setCenter`: ❌ No coverage +- `setHeading`: ❌ No coverage +- `setRange`: ❌ No coverage +- `setRoll`: ❌ No coverage +- `setTilt`: ❌ No coverage +- `writeToParcel`: ❌ No coverage + +### `CameraRestriction` +- `setBounds`: ❌ No coverage +- `setMaxAltitude`: ❌ No coverage +- `setMaxHeading`: ❌ No coverage +- `setMaxTilt`: ❌ No coverage +- `setMinAltitude`: ❌ No coverage +- `setMinHeading`: ❌ No coverage +- `setMinTilt`: ❌ No coverage +- `writeToParcel`: ❌ No coverage + +### `FlyAroundOptions` +- `getCenter`: ❌ No coverage +- `getDurationInMillis`: ❌ No coverage +- `getRounds`: ❌ No coverage +- `setCenter`: ❌ No coverage +- `setDurationInMillis`: ❌ No coverage +- `setRounds`: ❌ No coverage +- `writeToParcel`: ❌ No coverage + +### `FlyToOptions` +- `getDurationInMillis`: ❌ No coverage +- `getEndCamera`: ❌ No coverage +- `setDurationInMillis`: ❌ No coverage +- `setEndCamera`: ❌ No coverage +- `writeToParcel`: ❌ No coverage + +### `Glyph` +- `equals`: ❌ No coverage +- `fromCircle`: ❌ No coverage +- `fromColor`: + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:109](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L109) (Tag: `maps_android_3d_marker_custom_icon_java`) +- `fromText`: ❌ No coverage +- `getColor`: ❌ No coverage +- `getImage`: ❌ No coverage +- `getText`: ❌ No coverage +- `hashCode`: ❌ No coverage +- `setColor`: ❌ No coverage +- `setImage`: + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:133](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L133) (Tag: `maps_android_3d_marker_custom_icon_java`) +- `setText`: ❌ No coverage +- `writeToParcel`: ❌ No coverage + +### `GoogleMap3D` +- `addMarker`: + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:147](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L147) (Tag: `maps_android_3d_marker_custom_icon_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:54](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L54) (Tag: `maps_android_3d_marker_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:73](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L73) (Tag: `maps_android_3d_marker_options_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:86](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L86) (Tag: `maps_android_3d_marker_click_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:47](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L47) (Tag: `maps_android_3d_popover_add_java`) +- `addModel`: + - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java:47](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L47) (Tag: `maps_android_3d_model_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java:65](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L65) (Tag: `maps_android_3d_model_options_java`) +- `addPolygon`: + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:56](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L56) (Tag: `maps_android_3d_polygon_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:80](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L80) (Tag: `maps_android_3d_polygon_extruded_java`) +- `addPolyline`: + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:53](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L53) (Tag: `maps_android_3d_polyline_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:78](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L78) (Tag: `maps_android_3d_polyline_options_java`) +- `addPopover`: + - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:63](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L63) (Tag: `maps_android_3d_popover_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:86](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L86) (Tag: `maps_android_3d_popover_options_java`) +- `flyCameraAround`: + - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:76](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L76) (Tag: `maps_android_3d_camera_fly_around_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:79](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L79) (Tag: `maps_android_3d_camera_fly_around_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:93](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L93) (Tag: `maps_android_3d_camera_stop_java`) +- `flyCameraTo`: + - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:54](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L54) (Tag: `maps_android_3d_camera_fly_to_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:57](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L57) (Tag: `maps_android_3d_camera_fly_to_java`) +- `getCamera`: ❌ No coverage +- `getCameraRestriction`: ❌ No coverage +- `getMapMode`: ❌ No coverage +- `setCamera`: + - [java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java:49](java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java#L49) (Tag: `maps_android_3d_init_basic_java`) +- `setCameraAnimationEndListener`: ❌ No coverage +- `setCameraChangedListener`: + - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:106](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L106) (Tag: `maps_android_3d_camera_events_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:95](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L95) (Tag: `maps_android_3d_camera_stop_java`) +- `setCameraRestriction`: ❌ No coverage +- `setMap3DClickListener`: + - [java-app/src/main/java/com/example/snippets/java/snippets/PlaceSnippets.java:38](java-app/src/main/java/com/example/snippets/java/snippets/PlaceSnippets.java#L38) (Tag: `maps_android_3d_place_click_java`) +- `setMapMode`: ❌ No coverage +- `setOnMapReadyListener`: + - [MapActivity.java:34](MapActivity.java#L34) (Tag: `No Tag`) + - [MapActivity.java:60](MapActivity.java#L60) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java:67](java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java#L67) (Tag: `maps_android_3d_init_listeners_java`) +- `setOnMapSteadyListener`: + - [java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java:78](java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java#L78) (Tag: `maps_android_3d_init_listeners_java`) +- `stopCameraAnimation`: + - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:85](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L85) (Tag: `maps_android_3d_camera_stop_java`) + +### `Hole` +- `getVertices`: ❌ No coverage +- `setVertices`: ❌ No coverage +- `writeToParcel`: ❌ No coverage + +### `ImageView` +- `equals`: ❌ No coverage +- `getResourceId`: ❌ No coverage +- `hashCode`: ❌ No coverage +- `setResourceId`: ❌ No coverage +- `writeToParcel`: ❌ No coverage + +### `LatLngAltitude` +- `getAltitude`: ❌ No coverage +- `getLatitude`: ❌ No coverage +- `getLongitude`: ❌ No coverage +- `getPosition`: ❌ No coverage +- `setAltitude`: ❌ No coverage +- `setLatitude`: ❌ No coverage +- `setLongitude`: ❌ No coverage +- `writeToParcel`: ❌ No coverage + +### `LatLngBounds` +- `getNorthEastLat`: ❌ No coverage +- `getNorthEastLng`: ❌ No coverage +- `getSouthWestLat`: ❌ No coverage +- `getSouthWestLng`: ❌ No coverage +- `setNorthEastLat`: ❌ No coverage +- `setNorthEastLng`: ❌ No coverage +- `setSouthWestLat`: ❌ No coverage +- `setSouthWestLng`: ❌ No coverage +- `writeToParcel`: ❌ No coverage + +### `Map3DOptions` +- `attributes`: ❌ No coverage +- `bounds`: ❌ No coverage +- `centerAlt`: ❌ No coverage +- `centerLat`: ❌ No coverage +- `centerLng`: ❌ No coverage +- `defaultUiDisabled`: ❌ No coverage +- `fromAttributeSet`: ❌ No coverage +- `getAttributes`: ❌ No coverage +- `getBounds`: ❌ No coverage +- `getCenterAlt`: ❌ No coverage +- `getCenterLat`: ❌ No coverage +- `getCenterLng`: ❌ No coverage +- `getDefaultUiDisabled`: ❌ No coverage +- `getHeading`: ❌ No coverage +- `getMapId`: ❌ No coverage +- `getMapMode`: ❌ No coverage +- `getMaxAltitude`: ❌ No coverage +- `getMaxHeading`: ❌ No coverage +- `getMaxTilt`: ❌ No coverage +- `getMinAltitude`: ❌ No coverage +- `getMinHeading`: ❌ No coverage +- `getMinTilt`: ❌ No coverage +- `getOptions`: ❌ No coverage +- `getRange`: ❌ No coverage +- `getRoll`: ❌ No coverage +- `getTilt`: ❌ No coverage +- `heading`: ❌ No coverage +- `mapId`: ❌ No coverage +- `mapMode`: ❌ No coverage +- `maxAltitude`: ❌ No coverage +- `maxHeading`: ❌ No coverage +- `maxTilt`: ❌ No coverage +- `minAltitude`: ❌ No coverage +- `minHeading`: ❌ No coverage +- `minTilt`: ❌ No coverage +- `options`: ❌ No coverage +- `range`: ❌ No coverage +- `roll`: ❌ No coverage +- `tilt`: ❌ No coverage + +### `Map3DView` +- `getMap3DViewAsync`: + - [MapActivity.java:31](MapActivity.java#L31) (Tag: `No Tag`) + - [MapActivity.java:52](MapActivity.java#L52) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java:43](java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java#L43) (Tag: `maps_android_3d_init_basic_java`) +- `getOverlayView`: ❌ No coverage +- `getParams`: ❌ No coverage +- `overlayView`: ❌ No coverage +- `params`: ❌ No coverage +- `setParams`: ❌ No coverage + +### `Marker` +- `getAltitudeMode`: ❌ No coverage +- `getCollisionBehavior`: ❌ No coverage +- `getDrawsWhenOccluded`: ❌ No coverage +- `getId`: ❌ No coverage +- `getLabel`: ❌ No coverage +- `getPosition`: ❌ No coverage +- `getSizePreserved`: ❌ No coverage +- `getUrl`: ❌ No coverage +- `getZIndex`: ❌ No coverage +- `isExtruded`: ❌ No coverage +- `onMarkerClick`: ❌ No coverage +- `remove`: ❌ No coverage +- `setAltitudeMode`: ❌ No coverage +- `setClickListener`: + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:90](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L90) (Tag: `maps_android_3d_marker_click_java`) +- `setCollisionBehavior`: ❌ No coverage +- `setDrawsWhenOccluded`: ❌ No coverage +- `setExtruded`: ❌ No coverage +- `setLabel`: ❌ No coverage +- `setPosition`: ❌ No coverage +- `setSizePreserved`: ❌ No coverage +- `setUrl`: ❌ No coverage +- `setZIndex`: ❌ No coverage + +### `MarkerOptions` +- `getAltitudeMode`: ❌ No coverage +- `getCollisionBehavior`: ❌ No coverage +- `getId`: ❌ No coverage +- `getLabel`: ❌ No coverage +- `getPosition`: ❌ No coverage +- `getZIndex`: ❌ No coverage +- `isDrawnWhenOccluded`: ❌ No coverage +- `isExtruded`: ❌ No coverage +- `isSizePreserved`: ❌ No coverage +- `setAltitudeMode`: + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:67](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L67) (Tag: `maps_android_3d_marker_options_java`) +- `setCollisionBehavior`: + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:69](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L69) (Tag: `maps_android_3d_marker_options_java`) +- `setDrawnWhenOccluded`: + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:71](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L71) (Tag: `maps_android_3d_marker_options_java`) +- `setExtruded`: + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:70](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L70) (Tag: `maps_android_3d_marker_options_java`) +- `setId`: ❌ No coverage +- `setLabel`: + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:137](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L137) (Tag: `maps_android_3d_marker_custom_icon_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:51](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L51) (Tag: `maps_android_3d_marker_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:68](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L68) (Tag: `maps_android_3d_marker_options_java`) +- `setPosition`: + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:136](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L136) (Tag: `maps_android_3d_marker_custom_icon_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:50](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L50) (Tag: `maps_android_3d_marker_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:66](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L66) (Tag: `maps_android_3d_marker_options_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:84](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L84) (Tag: `maps_android_3d_marker_click_java`) +- `setSizePreserved`: ❌ No coverage +- `setZIndex`: ❌ No coverage + +### `MarkerOptions.that` +- `getStyle`: ❌ No coverage +- `setStyle`: ❌ No coverage +- `writeToParcel`: ❌ No coverage + +### `MarkerStyle` +- `equals`: ❌ No coverage +- `getImageView`: ❌ No coverage +- `getPinConfiguration`: ❌ No coverage +- `hashCode`: ❌ No coverage +- `writeToParcel`: ❌ No coverage + +### `Model` +- `getAltitudeMode`: ❌ No coverage +- `getId`: ❌ No coverage +- `getOrientation`: ❌ No coverage +- `getPosition`: ❌ No coverage +- `getScale`: ❌ No coverage +- `getUrl`: ❌ No coverage +- `onModelClick`: ❌ No coverage +- `remove`: ❌ No coverage +- `setAltitudeMode`: ❌ No coverage +- `setClickListener`: ❌ No coverage +- `setOrientation`: ❌ No coverage +- `setPosition`: ❌ No coverage +- `setScale`: ❌ No coverage +- `setUrl`: ❌ No coverage + +### `ModelOptions` +- `getAltitudeMode`: ❌ No coverage +- `getId`: ❌ No coverage +- `getOrientation`: ❌ No coverage +- `getPosition`: ❌ No coverage +- `getScale`: ❌ No coverage +- `getUrl`: ❌ No coverage +- `setAltitudeMode`: + - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java:45](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L45) (Tag: `maps_android_3d_model_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java:63](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L63) (Tag: `maps_android_3d_model_options_java`) +- `setId`: ❌ No coverage +- `setOrientation`: + - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java:62](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L62) (Tag: `maps_android_3d_model_options_java`) +- `setPosition`: + - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java:43](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L43) (Tag: `maps_android_3d_model_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java:59](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L59) (Tag: `maps_android_3d_model_options_java`) +- `setScale`: + - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java:61](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L61) (Tag: `maps_android_3d_model_options_java`) +- `setUrl`: + - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java:44](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L44) (Tag: `maps_android_3d_model_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java:60](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L60) (Tag: `maps_android_3d_model_options_java`) +- `writeToParcel`: ❌ No coverage + +### `Orientation` +- `getHeading`: ❌ No coverage +- `getRoll`: ❌ No coverage +- `getTilt`: ❌ No coverage +- `setHeading`: ❌ No coverage +- `setRoll`: ❌ No coverage +- `setTilt`: ❌ No coverage +- `writeToParcel`: ❌ No coverage + +### `PinConfiguration` +- `builder`: + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:140](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L140) (Tag: `maps_android_3d_marker_custom_icon_java`) +- `equals`: ❌ No coverage +- `getBackgroundColor`: ❌ No coverage +- `getBorderColor`: ❌ No coverage +- `getGlyph`: ❌ No coverage +- `getScale`: ❌ No coverage +- `hashCode`: ❌ No coverage +- `setBackgroundColor`: ❌ No coverage +- `setBorderColor`: ❌ No coverage +- `setGlyph`: ❌ No coverage +- `setScale`: ❌ No coverage +- `writeToParcel`: ❌ No coverage + +### `PinConfiguration.Builder` +- `build`: + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:145](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L145) (Tag: `maps_android_3d_marker_custom_icon_java`) +- `setBackgroundColor`: + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:143](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L143) (Tag: `maps_android_3d_marker_custom_icon_java`) +- `setBorderColor`: + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:144](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L144) (Tag: `maps_android_3d_marker_custom_icon_java`) +- `setGlyph`: + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:142](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L142) (Tag: `maps_android_3d_marker_custom_icon_java`) +- `setScale`: + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:141](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L141) (Tag: `maps_android_3d_marker_custom_icon_java`) + +### `Polygon` +- `getAltitudeMode`: ❌ No coverage +- `getDrawsOccludedSegments`: ❌ No coverage +- `getExtruded`: ❌ No coverage +- `getFillColor`: ❌ No coverage +- `getGeodesic`: ❌ No coverage +- `getId`: ❌ No coverage +- `getInnerCoordinates`: ❌ No coverage +- `getInnerPaths`: ❌ No coverage +- `getOuterCoordinates`: ❌ No coverage +- `getPath`: ❌ No coverage +- `getStrokeColor`: ❌ No coverage +- `getStrokeWidth`: ❌ No coverage +- `getZIndex`: ❌ No coverage +- `onPolygonClick`: ❌ No coverage +- `remove`: ❌ No coverage +- `setAltitudeMode`: ❌ No coverage +- `setClickListener`: ❌ No coverage +- `setDrawsOccludedSegments`: ❌ No coverage +- `setExtruded`: ❌ No coverage +- `setFillColor`: ❌ No coverage +- `setGeodesic`: ❌ No coverage +- `setInnerCoordinates`: ❌ No coverage +- `setInnerPaths`: ❌ No coverage +- `setOuterCoordinates`: ❌ No coverage +- `setPath`: ❌ No coverage +- `setStrokeColor`: ❌ No coverage +- `setStrokeWidth`: ❌ No coverage +- `setZIndex`: ❌ No coverage + +### `PolygonOptions` +- `getAltitudeMode`: ❌ No coverage +- `getDrawsOccludedSegments`: ❌ No coverage +- `getExtruded`: ❌ No coverage +- `getFillColor`: ❌ No coverage +- `getGeodesic`: ❌ No coverage +- `getId`: ❌ No coverage +- `getInnerPaths`: ❌ No coverage +- `getPath`: ❌ No coverage +- `getStrokeColor`: ❌ No coverage +- `getStrokeWidth`: ❌ No coverage +- `getZIndex`: ❌ No coverage +- `setAltitudeMode`: + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:54](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L54) (Tag: `maps_android_3d_polygon_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:78](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L78) (Tag: `maps_android_3d_polygon_extruded_java`) +- `setDrawsOccludedSegments`: ❌ No coverage +- `setExtruded`: + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:76](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L76) (Tag: `maps_android_3d_polygon_extruded_java`) +- `setFillColor`: + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:51](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L51) (Tag: `maps_android_3d_polygon_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:75](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L75) (Tag: `maps_android_3d_polygon_extruded_java`) +- `setGeodesic`: + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:77](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L77) (Tag: `maps_android_3d_polygon_extruded_java`) +- `setId`: ❌ No coverage +- `setInnerPaths`: ❌ No coverage +- `setPath`: + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:50](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L50) (Tag: `maps_android_3d_polygon_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:74](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L74) (Tag: `maps_android_3d_polygon_extruded_java`) +- `setStrokeColor`: + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:52](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L52) (Tag: `maps_android_3d_polygon_add_java`) +- `setStrokeWidth`: + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:53](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L53) (Tag: `maps_android_3d_polygon_add_java`) +- `setZIndex`: ❌ No coverage +- `writeToParcel`: ❌ No coverage + +### `Polyline` +- `getAltitudeMode`: ❌ No coverage +- `getCoordinates`: ❌ No coverage +- `getDrawsOccludedSegments`: ❌ No coverage +- `getGeodesic`: ❌ No coverage +- `getId`: ❌ No coverage +- `getOuterColor`: ❌ No coverage +- `getOuterWidth`: ❌ No coverage +- `getPath`: ❌ No coverage +- `getStrokeColor`: ❌ No coverage +- `getStrokeWidth`: ❌ No coverage +- `getZIndex`: ❌ No coverage +- `onPolylineClick`: ❌ No coverage +- `remove`: ❌ No coverage +- `setAltitudeMode`: ❌ No coverage +- `setClickListener`: ❌ No coverage +- `setCoordinates`: ❌ No coverage +- `setDrawsOccludedSegments`: ❌ No coverage +- `setGeodesic`: ❌ No coverage +- `setOuterColor`: ❌ No coverage +- `setOuterWidth`: ❌ No coverage +- `setPath`: ❌ No coverage +- `setStrokeColor`: ❌ No coverage +- `setStrokeWidth`: ❌ No coverage +- `setZIndex`: ❌ No coverage + +### `PolylineOptions` +- `getAltitudeMode`: ❌ No coverage +- `getDrawsOccludedSegments`: ❌ No coverage +- `getExtruded`: ❌ No coverage +- `getGeodesic`: ❌ No coverage +- `getId`: ❌ No coverage +- `getOuterColor`: ❌ No coverage +- `getOuterWidth`: ❌ No coverage +- `getPath`: ❌ No coverage +- `getStrokeColor`: ❌ No coverage +- `getStrokeWidth`: ❌ No coverage +- `getZIndex`: ❌ No coverage +- `setAltitudeMode`: + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:51](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L51) (Tag: `maps_android_3d_polyline_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:73](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L73) (Tag: `maps_android_3d_polyline_options_java`) +- `setDrawsOccludedSegments`: + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:76](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L76) (Tag: `maps_android_3d_polyline_options_java`) +- `setExtruded`: + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:74](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L74) (Tag: `maps_android_3d_polyline_options_java`) +- `setGeodesic`: + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:75](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L75) (Tag: `maps_android_3d_polyline_options_java`) +- `setId`: ❌ No coverage +- `setOuterColor`: + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:71](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L71) (Tag: `maps_android_3d_polyline_options_java`) +- `setOuterWidth`: + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:72](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L72) (Tag: `maps_android_3d_polyline_options_java`) +- `setPath`: + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:48](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L48) (Tag: `maps_android_3d_polyline_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:68](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L68) (Tag: `maps_android_3d_polyline_options_java`) +- `setStrokeColor`: + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:49](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L49) (Tag: `maps_android_3d_polyline_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:69](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L69) (Tag: `maps_android_3d_polyline_options_java`) +- `setStrokeWidth`: + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:50](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L50) (Tag: `maps_android_3d_polyline_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:70](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L70) (Tag: `maps_android_3d_polyline_options_java`) +- `setZIndex`: ❌ No coverage +- `writeToParcel`: ❌ No coverage + +### `Popover` +- `altitudeMode`: ❌ No coverage +- `anchorId`: ❌ No coverage +- `anchorOffset`: ❌ No coverage +- `autoCloseEnabled`: ❌ No coverage +- `autoPanEnabled`: ❌ No coverage +- `autoPanFn`: ❌ No coverage +- `content`: ❌ No coverage +- `getAltitudeMode`: ❌ No coverage +- `getAnchorId`: ❌ No coverage +- `getAnchorOffset`: ❌ No coverage +- `getAutoCloseEnabled`: ❌ No coverage +- `getAutoPanEnabled`: ❌ No coverage +- `getAutoPanFn`: ❌ No coverage +- `getContent`: ❌ No coverage +- `getIsVisible`: ❌ No coverage +- `getPositionAnchor`: ❌ No coverage +- `getRemoveFn`: ❌ No coverage +- `hide`: ❌ No coverage +- `isVisible`: ❌ No coverage +- `positionAnchor`: ❌ No coverage +- `remove`: ❌ No coverage +- `removeFn`: ❌ No coverage +- `show`: + - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:67](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L67) (Tag: `maps_android_3d_popover_add_java`) +- `toggle`: ❌ No coverage + +### `PopoverOptions` +- `getAltitudeMode`: ❌ No coverage +- `getAnchorOffset`: ❌ No coverage +- `getAutoCloseEnabled`: ❌ No coverage +- `getAutoPanEnabled`: ❌ No coverage +- `getContent`: ❌ No coverage +- `getPopoverStyle`: ❌ No coverage +- `getPositionAnchor`: ❌ No coverage +- `setAltitudeMode`: + - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:61](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L61) (Tag: `maps_android_3d_popover_add_java`) +- `setAnchorOffset`: ❌ No coverage +- `setAutoCloseEnabled`: + - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:83](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L83) (Tag: `maps_android_3d_popover_options_java`) +- `setAutoPanEnabled`: + - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:84](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L84) (Tag: `maps_android_3d_popover_options_java`) +- `setContent`: + - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:59](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L59) (Tag: `maps_android_3d_popover_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:81](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L81) (Tag: `maps_android_3d_popover_options_java`) +- `setPopoverStyle`: ❌ No coverage +- `setPositionAnchor`: + - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:60](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L60) (Tag: `maps_android_3d_popover_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:82](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L82) (Tag: `maps_android_3d_popover_options_java`) + +### `PopoverShadow` +- `getColor`: ❌ No coverage +- `getOffsetX`: ❌ No coverage +- `getOffsetY`: ❌ No coverage +- `getRadius`: ❌ No coverage +- `setColor`: ❌ No coverage +- `setOffsetX`: ❌ No coverage +- `setOffsetY`: ❌ No coverage +- `setRadius`: ❌ No coverage + +### `PopoverStyle` +- `getBackgroundColor`: ❌ No coverage +- `getBorderRadius`: ❌ No coverage +- `getPadding`: ❌ No coverage +- `getShadow`: ❌ No coverage +- `setBackgroundColor`: ❌ No coverage +- `setBorderRadius`: ❌ No coverage +- `setPadding`: ❌ No coverage +- `setShadow`: ❌ No coverage + +### `Validators.for` +- `Anchorable`: ❌ No coverage +- `Camera`: ❌ No coverage +- `CameraRestriction`: ❌ No coverage +- `FlyAroundOptions`: ❌ No coverage +- `FlyToOptions`: ❌ No coverage +- `Hole`: ❌ No coverage +- `LatLngAltitude`: ❌ No coverage +- `LatLngBounds`: ❌ No coverage +- `Map3DOptions`: ❌ No coverage +- `MarkerOptions`: ❌ No coverage +- `ModelOptions`: ❌ No coverage +- `Orientation`: ❌ No coverage +- `PolygonOptions`: ❌ No coverage +- `PolylineOptions`: ❌ No coverage +- `PopoverOptions`: ❌ No coverage +- `Vector3D`: ❌ No coverage +- `requireNonNegative`: ❌ No coverage +- `validateAltitude`: ❌ No coverage +- `validateFinite`: ❌ No coverage +- `validateHeading`: ❌ No coverage +- `validateLatitude`: ❌ No coverage +- `validateLongitude`: ❌ No coverage +- `validateRange`: ❌ No coverage +- `validateRoll`: ❌ No coverage +- `validateTilt`: ❌ No coverage + +### `Vector3D` +- `getX`: ❌ No coverage +- `getY`: ❌ No coverage +- `getZ`: ❌ No coverage +- `setX`: ❌ No coverage +- `setY`: ❌ No coverage +- `setZ`: ❌ No coverage +- `writeToParcel`: ❌ No coverage + +### Missing Extracted API Coverage (Java Snippets) +The following non-getter/setter APIs currently have `0` occurrences within this section: + +- `Camera.writeToParcel` +- `CameraRestriction.writeToParcel` +- `FlyAroundOptions.writeToParcel` +- `FlyToOptions.writeToParcel` +- `Glyph.equals` +- `Glyph.fromCircle` +- `Glyph.fromText` +- `Glyph.hashCode` +- `Glyph.writeToParcel` +- `Hole.writeToParcel` +- `ImageView.equals` +- `ImageView.hashCode` +- `ImageView.writeToParcel` +- `LatLngAltitude.writeToParcel` +- `LatLngBounds.writeToParcel` +- `Map3DOptions.attributes` +- `Map3DOptions.bounds` +- `Map3DOptions.centerAlt` +- `Map3DOptions.centerLat` +- `Map3DOptions.centerLng` +- `Map3DOptions.defaultUiDisabled` +- `Map3DOptions.fromAttributeSet` +- `Map3DOptions.heading` +- `Map3DOptions.mapId` +- `Map3DOptions.mapMode` +- `Map3DOptions.maxAltitude` +- `Map3DOptions.maxHeading` +- `Map3DOptions.maxTilt` +- `Map3DOptions.minAltitude` +- `Map3DOptions.minHeading` +- `Map3DOptions.minTilt` +- `Map3DOptions.options` +- `Map3DOptions.range` +- `Map3DOptions.roll` +- `Map3DOptions.tilt` +- `Map3DView.overlayView` +- `Map3DView.params` +- `Marker.isExtruded` +- `Marker.onMarkerClick` +- `Marker.remove` +- `MarkerOptions.isDrawnWhenOccluded` +- `MarkerOptions.isExtruded` +- `MarkerOptions.isSizePreserved` +- `MarkerOptions.that.writeToParcel` +- `MarkerStyle.equals` +- `MarkerStyle.hashCode` +- `MarkerStyle.writeToParcel` +- `Model.onModelClick` +- `Model.remove` +- `ModelOptions.writeToParcel` +- `Orientation.writeToParcel` +- `PinConfiguration.equals` +- `PinConfiguration.hashCode` +- `PinConfiguration.writeToParcel` +- `Polygon.onPolygonClick` +- `Polygon.remove` +- `PolygonOptions.writeToParcel` +- `Polyline.onPolylineClick` +- `Polyline.remove` +- `PolylineOptions.writeToParcel` +- `Popover.altitudeMode` +- `Popover.anchorId` +- `Popover.anchorOffset` +- `Popover.autoCloseEnabled` +- `Popover.autoPanEnabled` +- `Popover.autoPanFn` +- `Popover.content` +- `Popover.hide` +- `Popover.isVisible` +- `Popover.positionAnchor` +- `Popover.remove` +- `Popover.removeFn` +- `Popover.toggle` +- `Validators.for.Anchorable` +- `Validators.for.Camera` +- `Validators.for.CameraRestriction` +- `Validators.for.FlyAroundOptions` +- `Validators.for.FlyToOptions` +- `Validators.for.Hole` +- `Validators.for.LatLngAltitude` +- `Validators.for.LatLngBounds` +- `Validators.for.Map3DOptions` +- `Validators.for.MarkerOptions` +- `Validators.for.ModelOptions` +- `Validators.for.Orientation` +- `Validators.for.PolygonOptions` +- `Validators.for.PolylineOptions` +- `Validators.for.PopoverOptions` +- `Validators.for.Vector3D` +- `Validators.for.requireNonNegative` +- `Validators.for.validateAltitude` +- `Validators.for.validateFinite` +- `Validators.for.validateHeading` +- `Validators.for.validateLatitude` +- `Validators.for.validateLongitude` +- `Validators.for.validateRange` +- `Validators.for.validateRoll` +- `Validators.for.validateTilt` +- `Vector3D.writeToParcel` + diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/MapActivity.java b/snippets/java-app/src/main/java/com/example/snippets/java/MapActivity.java index 13062471..d5187d0e 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/MapActivity.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/MapActivity.java @@ -58,7 +58,7 @@ public void onMap3DViewReady(@NonNull GoogleMap3D map) { runSnippet(); // <-- This will fail if the map is not ready map.setOnMapReadyListener(sceneReadiness -> { - if (!triggered && sceneReadiness >= 99.0) { + if (!triggered && sceneReadiness >= 99.9) { Log.w("MapActivity", "onMapReady sceneReadiness: " + sceneReadiness); triggered = true; runSnippet(); // <-- This will only be called the first time the map is ready diff --git a/snippets/scripts/api_manifest.json b/snippets/scripts/api_manifest.json new file mode 100644 index 00000000..da9ff1c3 --- /dev/null +++ b/snippets/scripts/api_manifest.json @@ -0,0 +1,475 @@ +{ + "Popover": [ + "altitudeMode", + "anchorId", + "anchorOffset", + "autoCloseEnabled", + "autoPanEnabled", + "autoPanFn", + "content", + "getAltitudeMode", + "getAnchorId", + "getAnchorOffset", + "getAutoCloseEnabled", + "getAutoPanEnabled", + "getAutoPanFn", + "getContent", + "getIsVisible", + "getPositionAnchor", + "getRemoveFn", + "hide", + "isVisible", + "positionAnchor", + "remove", + "removeFn", + "show", + "toggle" + ], + "GoogleMap3D": [ + "addMarker", + "addModel", + "addPolygon", + "addPolyline", + "addPopover", + "flyCameraAround", + "flyCameraTo", + "getCamera", + "getCameraRestriction", + "getMapMode", + "setCamera", + "setCameraAnimationEndListener", + "setCameraChangedListener", + "setCameraRestriction", + "setMap3DClickListener", + "setMapMode", + "setOnMapReadyListener", + "setOnMapSteadyListener", + "stopCameraAnimation" + ], + "Map3DView": [ + "getMap3DViewAsync", + "getOverlayView", + "getParams", + "overlayView", + "params", + "setParams" + ], + "Validators.for": [ + "Anchorable", + "Camera", + "CameraRestriction", + "FlyAroundOptions", + "FlyToOptions", + "Hole", + "LatLngAltitude", + "LatLngBounds", + "Map3DOptions", + "MarkerOptions", + "ModelOptions", + "Orientation", + "PolygonOptions", + "PolylineOptions", + "PopoverOptions", + "Vector3D", + "requireNonNegative", + "validateAltitude", + "validateFinite", + "validateHeading", + "validateLatitude", + "validateLongitude", + "validateRange", + "validateRoll", + "validateTilt" + ], + "Map3DOptions": [ + "attributes", + "bounds", + "centerAlt", + "centerLat", + "centerLng", + "defaultUiDisabled", + "fromAttributeSet", + "getAttributes", + "getBounds", + "getCenterAlt", + "getCenterLat", + "getCenterLng", + "getDefaultUiDisabled", + "getHeading", + "getMapId", + "getMapMode", + "getMaxAltitude", + "getMaxHeading", + "getMaxTilt", + "getMinAltitude", + "getMinHeading", + "getMinTilt", + "getOptions", + "getRange", + "getRoll", + "getTilt", + "heading", + "mapId", + "mapMode", + "maxAltitude", + "maxHeading", + "maxTilt", + "minAltitude", + "minHeading", + "minTilt", + "options", + "range", + "roll", + "tilt" + ], + "Polygon": [ + "getAltitudeMode", + "getDrawsOccludedSegments", + "getExtruded", + "getFillColor", + "getGeodesic", + "getId", + "getInnerCoordinates", + "getInnerPaths", + "getOuterCoordinates", + "getPath", + "getStrokeColor", + "getStrokeWidth", + "getZIndex", + "onPolygonClick", + "remove", + "setAltitudeMode", + "setClickListener", + "setDrawsOccludedSegments", + "setExtruded", + "setFillColor", + "setGeodesic", + "setInnerCoordinates", + "setInnerPaths", + "setOuterCoordinates", + "setPath", + "setStrokeColor", + "setStrokeWidth", + "setZIndex" + ], + "Orientation": [ + "getHeading", + "getRoll", + "getTilt", + "setHeading", + "setRoll", + "setTilt", + "writeToParcel" + ], + "Glyph": [ + "equals", + "fromCircle", + "fromColor", + "fromText", + "getColor", + "getImage", + "getText", + "hashCode", + "setColor", + "setImage", + "setText", + "writeToParcel" + ], + "PolylineOptions": [ + "getAltitudeMode", + "getDrawsOccludedSegments", + "getExtruded", + "getGeodesic", + "getId", + "getOuterColor", + "getOuterWidth", + "getPath", + "getStrokeColor", + "getStrokeWidth", + "getZIndex", + "setAltitudeMode", + "setDrawsOccludedSegments", + "setExtruded", + "setGeodesic", + "setId", + "setOuterColor", + "setOuterWidth", + "setPath", + "setStrokeColor", + "setStrokeWidth", + "setZIndex", + "writeToParcel" + ], + "PopoverOptions": [ + "getAltitudeMode", + "getAnchorOffset", + "getAutoCloseEnabled", + "getAutoPanEnabled", + "getContent", + "getPopoverStyle", + "getPositionAnchor", + "setAltitudeMode", + "setAnchorOffset", + "setAutoCloseEnabled", + "setAutoPanEnabled", + "setContent", + "setPopoverStyle", + "setPositionAnchor" + ], + "ImageView": [ + "equals", + "getResourceId", + "hashCode", + "setResourceId", + "writeToParcel" + ], + "ModelOptions": [ + "getAltitudeMode", + "getId", + "getOrientation", + "getPosition", + "getScale", + "getUrl", + "setAltitudeMode", + "setId", + "setOrientation", + "setPosition", + "setScale", + "setUrl", + "writeToParcel" + ], + "MarkerOptions": [ + "getAltitudeMode", + "getCollisionBehavior", + "getId", + "getLabel", + "getPosition", + "getZIndex", + "isDrawnWhenOccluded", + "isExtruded", + "isSizePreserved", + "setAltitudeMode", + "setCollisionBehavior", + "setDrawnWhenOccluded", + "setExtruded", + "setId", + "setLabel", + "setPosition", + "setSizePreserved", + "setZIndex" + ], + "MarkerOptions.that": [ + "getStyle", + "setStyle", + "writeToParcel" + ], + "LatLngBounds": [ + "getNorthEastLat", + "getNorthEastLng", + "getSouthWestLat", + "getSouthWestLng", + "setNorthEastLat", + "setNorthEastLng", + "setSouthWestLat", + "setSouthWestLng", + "writeToParcel" + ], + "CameraRestriction": [ + "setBounds", + "setMaxAltitude", + "setMaxHeading", + "setMaxTilt", + "setMinAltitude", + "setMinHeading", + "setMinTilt", + "writeToParcel" + ], + "Hole": [ + "getVertices", + "setVertices", + "writeToParcel" + ], + "MarkerStyle": [ + "equals", + "getImageView", + "getPinConfiguration", + "hashCode", + "writeToParcel" + ], + "PolygonOptions": [ + "getAltitudeMode", + "getDrawsOccludedSegments", + "getExtruded", + "getFillColor", + "getGeodesic", + "getId", + "getInnerPaths", + "getPath", + "getStrokeColor", + "getStrokeWidth", + "getZIndex", + "setAltitudeMode", + "setDrawsOccludedSegments", + "setExtruded", + "setFillColor", + "setGeodesic", + "setId", + "setInnerPaths", + "setPath", + "setStrokeColor", + "setStrokeWidth", + "setZIndex", + "writeToParcel" + ], + "PopoverShadow": [ + "getColor", + "getOffsetX", + "getOffsetY", + "getRadius", + "setColor", + "setOffsetX", + "setOffsetY", + "setRadius" + ], + "PopoverStyle": [ + "getBackgroundColor", + "getBorderRadius", + "getPadding", + "getShadow", + "setBackgroundColor", + "setBorderRadius", + "setPadding", + "setShadow" + ], + "FlyAroundOptions": [ + "getCenter", + "getDurationInMillis", + "getRounds", + "setCenter", + "setDurationInMillis", + "setRounds", + "writeToParcel" + ], + "Marker": [ + "getAltitudeMode", + "getCollisionBehavior", + "getDrawsWhenOccluded", + "getId", + "getLabel", + "getPosition", + "getSizePreserved", + "getUrl", + "getZIndex", + "isExtruded", + "onMarkerClick", + "remove", + "setAltitudeMode", + "setClickListener", + "setCollisionBehavior", + "setDrawsWhenOccluded", + "setExtruded", + "setLabel", + "setPosition", + "setSizePreserved", + "setUrl", + "setZIndex" + ], + "Camera": [ + "getCenter", + "setCenter", + "setHeading", + "setRange", + "setRoll", + "setTilt", + "writeToParcel" + ], + "LatLngAltitude": [ + "getAltitude", + "getLatitude", + "getLongitude", + "getPosition", + "setAltitude", + "setLatitude", + "setLongitude", + "writeToParcel" + ], + "Vector3D": [ + "getX", + "getY", + "getZ", + "setX", + "setY", + "setZ", + "writeToParcel" + ], + "PinConfiguration": [ + "builder", + "equals", + "getBackgroundColor", + "getBorderColor", + "getGlyph", + "getScale", + "hashCode", + "setBackgroundColor", + "setBorderColor", + "setGlyph", + "setScale", + "writeToParcel" + ], + "PinConfiguration.Builder": [ + "build", + "setBackgroundColor", + "setBorderColor", + "setGlyph", + "setScale" + ], + "Model": [ + "getAltitudeMode", + "getId", + "getOrientation", + "getPosition", + "getScale", + "getUrl", + "onModelClick", + "remove", + "setAltitudeMode", + "setClickListener", + "setOrientation", + "setPosition", + "setScale", + "setUrl" + ], + "Polyline": [ + "getAltitudeMode", + "getCoordinates", + "getDrawsOccludedSegments", + "getGeodesic", + "getId", + "getOuterColor", + "getOuterWidth", + "getPath", + "getStrokeColor", + "getStrokeWidth", + "getZIndex", + "onPolylineClick", + "remove", + "setAltitudeMode", + "setClickListener", + "setCoordinates", + "setDrawsOccludedSegments", + "setGeodesic", + "setOuterColor", + "setOuterWidth", + "setPath", + "setStrokeColor", + "setStrokeWidth", + "setZIndex" + ], + "FlyToOptions": [ + "getDurationInMillis", + "getEndCamera", + "setDurationInMillis", + "setEndCamera", + "writeToParcel" + ] +} \ No newline at end of file diff --git a/snippets/scripts/catalog_api.py b/snippets/scripts/catalog_api.py new file mode 100644 index 00000000..e03d2a17 --- /dev/null +++ b/snippets/scripts/catalog_api.py @@ -0,0 +1,225 @@ +import os +import re +import subprocess +import glob +from collections import defaultdict + +# Setup directories relative to the script location +SCRIPT_DIR = os.path.dirname(os.path.abspath(__file__)) +SNIPPETS_DIR = os.path.dirname(SCRIPT_DIR) +import json + +def extract_region_tags(snippets_dir): + region_tags = defaultdict(list) + + for root, _, filenames in os.walk(snippets_dir): + if 'build' in root or '.gradle' in root or 'scripts' in root: continue + for name in filenames: + if name.endswith(('.kt', '.java', '.xml')): + filepath = os.path.join(root, name) + with open(filepath, 'r', encoding='utf-8') as f: + try: + lines = f.readlines() + except UnicodeDecodeError: + continue + + active_tags = {} + for i, line in enumerate(lines): + line_num = i + 1 + start_match = re.search(r'\[START\s+([a-zA-Z0-9_]+)\]', line) + if start_match: + active_tags[start_match.group(1)] = line_num + end_match = re.search(r'\[END\s+([a-zA-Z0-9_]+)\]', line) + if end_match: + tag = end_match.group(1) + if tag in active_tags: + start_line = active_tags.pop(tag) + region_tags[filepath].append({ + 'tag': tag, + 'start': start_line, + 'end': line_num + }) + return region_tags + +def parse_javap_output(snippets_dir): + class_files = [] + for ext in ['kotlin-classes', 'compileDebugJavaWithJavac', 'javac']: + path = os.path.join(snippets_dir, f"**/build/**/{ext}/**/*.class") + class_files.extend(glob.glob(path, recursive=True)) + + usages = defaultdict(list) + + for cfile in class_files: + if 'R.class' in cfile or 'R$' in cfile or 'BuildConfig.class' in cfile: continue + + result = subprocess.run(['javap', '-c', '-l', '-p', '-constants', cfile], capture_output=True, text=True) + out = result.stdout + + lines = out.split('\n') + source_file = None + method_calls = [] + current_line_table = {} + + for line in lines: + line = line.strip() + if line.startswith("Compiled from "): + source_file_match = re.search(r'"([^"]+)"', line) + if source_file_match: + source_file = source_file_match.group(1) + + if "Code:" in line: + current_line_table = {} + method_calls = [] + + match_invoke = re.search(r'^(\d+):\s+invoke.*\s+//\s*(?:Field|Method|InterfaceMethod)\s+com/google/android/gms/maps3d/([^:]+)\.([^:("]+)', line) + if match_invoke: + offset = int(match_invoke.group(1)) + class_path = match_invoke.group(2) + method_name = match_invoke.group(3) + + class_parts = class_path.split('/')[-1].split('$') + # If there's an outer class and inner class, join them, else just class_name + # e.g. "PinConfiguration$Builder" -> "PinConfiguration.Builder" + if len(class_parts) > 1 and class_parts[-1] != "1": + class_name = f"{class_parts[0]}.{class_parts[-1]}" + else: + class_name = class_parts[0] + + if method_name == "": + method_name = class_parts[-1] + method_calls.append((offset, class_name, method_name)) + + match_line = re.search(r'line\s+(\d+):\s+(\d+)', line) + if match_line and "LineNumberTable:" in out: + line_num = int(match_line.group(1)) + offset = int(match_line.group(2)) + current_line_table[offset] = line_num + + if not line and method_calls and current_line_table: + sorted_offsets = sorted(current_line_table.keys()) + for (off, cname, mname) in method_calls: + matched_line = None + for o in reversed(sorted_offsets): + if off >= o: + matched_line = current_line_table[o] + break + if matched_line and source_file: + usages[f"{cname}.{mname}"].append({"file": source_file, "line": matched_line}) + method_calls = [] + current_line_table = {} + + return usages + +def format_catalog_section(section_title, api_surface, usages, file_map, region_tags, language_ext): + lines = [f"## {section_title}\n"] + missing_apis = [] + + for class_name, methods in sorted(api_surface.items()): + lines.append(f"### `{class_name}`\n") + methods = sorted(list(set(methods))) + + has_elements = False + for method in methods: + key = f"{class_name}.{method}" + use_list = usages.get(key, []) + + filtered_uses = [] + for u in use_list: + rel_path = file_map.get(u['file'], u['file']) + if rel_path.endswith(language_ext): + filtered_uses.append(u) + + if not filtered_uses: + if not (method.startswith("get") or method.startswith("set")): + missing_apis.append(key) + lines.append(f"- `{method}`: ❌ No coverage\n") + else: + formatted_uses = [] + for u in filtered_uses: + basename = u['file'] + line_num = u['line'] + rel_path = file_map.get(basename, basename) + + active_tag = "No Tag" + full_path_for_tag = None + for fp in region_tags.keys(): + if basename in fp: + full_path_for_tag = fp + break + + if full_path_for_tag and full_path_for_tag in region_tags: + for region in region_tags[full_path_for_tag]: + if region['start'] <= line_num <= region['end']: + active_tag = region['tag'] + break + + formatted_uses.append(f"[{rel_path}:{line_num}]({rel_path}#L{line_num}) (Tag: `{active_tag}`)") + + formatted_uses = sorted(list(set(formatted_uses))) + lines.append(f"- `{method}`:\n") + for fu in formatted_uses: + lines.append(f" - {fu}\n") + has_elements = True + + if not has_elements: + lines.append(f"_No public methods exposing documentation snippets detected._\n") + lines.append("\n") + + lines.append(f"### Missing Extracted API Coverage ({section_title})\n") + lines.append("The following non-getter/setter APIs currently have `0` occurrences within this section:\n\n") + if not missing_apis: + lines.append("🎉 All non-getter/setter APIs are fully covered!\n\n") + else: + for missing in sorted(missing_apis): + lines.append(f"- `{missing}`\n") + lines.append("\n") + + return lines, missing_apis + +def main(): + print(f"Cataloging Maps3D API snippets...\nSCRIPT_DIR: {SCRIPT_DIR}\nSNIPPETS_DIR: {SNIPPETS_DIR}") + + print("Compiling Snippets to ensure fresh bytecode...") + res = subprocess.run(["./gradlew", "assembleDebug"], cwd=SNIPPETS_DIR, capture_output=True, text=True) + if res.returncode != 0: + print(f"Warning: Build failed. javap results may be incomplete. {res.stderr}") + + manifest_path = os.path.join(SCRIPT_DIR, "api_manifest.json") + if not os.path.exists(manifest_path): + print(f"Error: API manifest resource not found at {manifest_path}") + return + + with open(manifest_path, "r", encoding="utf-8") as f: + api_surface = json.load(f) + + print(f"Loaded {sum(len(v) for v in api_surface.values())} API endpoints from {manifest_path}.") + + usages = parse_javap_output(SNIPPETS_DIR) + region_tags = extract_region_tags(SNIPPETS_DIR) + + file_map = {} + for filepath in region_tags.keys(): + basename = os.path.basename(filepath) + rel_path = os.path.relpath(filepath, SNIPPETS_DIR) + file_map[basename] = rel_path + + catalog_lines = ["# Maps3D API Snippets Catalog\n\n"] + catalog_lines.append("This document was auto-generated by `scripts/catalog_api.py`. It serves as a cross-reference matrix ensuring that every critical feature in the 3D Maps SDK is actively demonstrated inside a snippet boundary (`// [START ...]`).\n\n") + + # Generate Kotlin Section + kt_lines, kt_missing = format_catalog_section("Kotlin Snippets", api_surface, usages, file_map, region_tags, ".kt") + catalog_lines.extend(kt_lines) + + # Generate Java Section + java_lines, java_missing = format_catalog_section("Java Snippets", api_surface, usages, file_map, region_tags, ".java") + catalog_lines.extend(java_lines) + + catalog_path = os.path.join(SNIPPETS_DIR, "CATALOG.md") + with open(catalog_path, 'w', encoding='utf-8') as f: + f.writelines(catalog_lines) + + print(f"Catalog successfully generated at {catalog_path}.") + print(f"Identified {len(kt_missing)} missing APIs in Kotlin, and {len(java_missing)} in Java.") + +if __name__ == '__main__': + main() diff --git a/snippets/scripts/generate_manifest.py b/snippets/scripts/generate_manifest.py new file mode 100644 index 00000000..cfca7992 --- /dev/null +++ b/snippets/scripts/generate_manifest.py @@ -0,0 +1,143 @@ +import os +import re +import json +from collections import defaultdict + +# Setup directories relative to the script location +SCRIPT_DIR = os.path.dirname(os.path.abspath(__file__)) +SNIPPETS_DIR = os.path.dirname(SCRIPT_DIR) +MAPS3D_REF_DIR = os.path.join(SNIPPETS_DIR, "..", "maps3d-ref") + +# Functions to omit explicitly +LIFECYCLE_METHODS = { + "onCreate", "onDestroy", "onStart", "onStop", + "onResume", "onPause", "onLowMemory", "onSaveInstanceState", + "onAttachedToWindow", "onDetachedFromWindow", "onError" +} + +def find_source_files(directory): + files = [] + for root, _, filenames in os.walk(directory): + for name in filenames: + if name.endswith('.kt') or name.endswith('.java'): + files.append(os.path.join(root, name)) + return files + +def extract_api_surface(ref_dir): + """ + Parses maps3d-ref Kotlin and Java files to identify public Classes, Functions, and Properties. + Skips items annotated with @Hide, 'internal', or 'interface' declarations. + """ + api_surface = defaultdict(list) + src_files = find_source_files(ref_dir) + + for src_file in src_files: + with open(src_file, 'r', encoding='utf-8') as f: + lines = f.readlines() + + current_class = None + in_interface = False + skip_current_element = False + + for line in lines: + stripped = line.strip() + + # Reset skip flag if we find an actual class or function declaration + is_declaration = bool(re.search(r'\b(class|fun|val|var|interface|enum|public)\b', stripped)) + + if "@Hide" in stripped or "internal " in stripped or "private " in stripped or "protected " in stripped: + skip_current_element = True + if not is_declaration: + continue + + # Skip entire interfaces as requested + if "interface " in stripped and "class " not in stripped: + in_interface = True + continue + if in_interface and stripped == "}": + in_interface = False + continue + if in_interface: + continue + + class_match = re.search(r'(?:public\s+)?(?:final\s+)?(?:abstract\s+)?(?:open\s+)?(?:sealed\s+)?(?:data\s+)?class\s+(\w+)', stripped) + if not class_match: + class_match = re.search(r'(?:public\s+)?(?:static\s+)?(?:final\s+)?(?:public\s+)?enum\s+(\w+)', stripped) + + if class_match and not skip_current_element: + parsed_class = class_match.group(1) + basename = os.path.splitext(os.path.basename(src_file))[0] + if parsed_class != basename: + current_class = f"{basename}.{parsed_class}" + else: + current_class = parsed_class + elif class_match and skip_current_element: + current_class = None + + if is_declaration and skip_current_element: + skip_current_element = False + continue + + # Skip anonymous overrides (e.g. object: IOnPlaceClickListener { override fun ... }) + if "override " in stripped or "@Override" in stripped: + continue + + if current_class and not skip_current_element: + # 1. Kotlin Functions + fun_match = re.search(r'(?:public\s+)?fun\s+(?:<[^>]+>\s+)?(\w+)', stripped) + if fun_match: + api_surface[current_class].append(fun_match.group(1)) + + # 2. Kotlin Properties + prop_match = re.search(r'(?:public\s+)?(?:val|var)\s+(\w+)', stripped) + if prop_match: + prop_name = prop_match.group(1) + api_surface[current_class].append(prop_name) + capitalized = prop_name[0].upper() + prop_name[1:] + api_surface[current_class].append("get" + capitalized) + if "var " in stripped: + api_surface[current_class].append("set" + capitalized) + + # 3. Java Methods + # Match: public void setPosition(...) or public static float clamp(...) + java_method_match = re.search(r'public\s+(?:static\s+)?(?:final\s+)?(?:<[^>]+>\s+)?[\w\.<>\[\]]+\s+(\w+)\s*\(', stripped) + if java_method_match: + method_name = java_method_match.group(1) + if method_name != current_class: # Exclude Java constructors + api_surface[current_class].append(method_name) + + if skip_current_element and not stripped.startswith("@") and not stripped.startswith("//") and stripped != "": + skip_current_element = False + + # Post-processing Cleanup + api_surface.pop('for', None) + + if "Map3DView" in api_surface: + api_surface["Map3DView"] = [m for m in api_surface["Map3DView"] if m not in LIFECYCLE_METHODS] + + return api_surface + +def main(): + print(f"Extracting API surface from maps3d-ref at: {MAPS3D_REF_DIR}") + + if not os.path.exists(MAPS3D_REF_DIR): + print(f"Error: {MAPS3D_REF_DIR} does not exist.") + print("This script must be run from an environment where the 'maps3d-ref' source is available.") + return + + api_surface = extract_api_surface(MAPS3D_REF_DIR) + + # Deduplicate methods + for clazz in api_surface: + api_surface[clazz] = sorted(list(set(api_surface[clazz]))) + + manifest_path = os.path.join(SCRIPT_DIR, "api_manifest.json") + with open(manifest_path, "w", encoding="utf-8") as f: + json.dump(api_surface, f, indent=2) + + total_endpoints = sum(len(v) for v in api_surface.values()) + print(f"Successfully extracted {total_endpoints} API endpoints across {len(api_surface)} classes.") + print(f"Saved independent API resource to: {manifest_path}") + +if __name__ == '__main__': + main() From a64e0e7cfe7ba0d0e20ff236972bf26cadfec602 Mon Sep 17 00:00:00 2001 From: dkhawk <107309+dkhawk@users.noreply.github.com> Date: Wed, 18 Mar 2026 15:45:57 -0600 Subject: [PATCH 03/36] Refactor: PlaceSnippets listener to lambda and update CATALOG.md --- snippets/CATALOG.md | 3 +++ .../example/snippets/kotlin/snippets/PlaceSnippets.kt | 10 ++++------ 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/snippets/CATALOG.md b/snippets/CATALOG.md index ca7e2741..db5e9c0f 100644 --- a/snippets/CATALOG.md +++ b/snippets/CATALOG.md @@ -96,6 +96,7 @@ This document was auto-generated by `scripts/catalog_api.py`. It serves as a cro - `getCameraRestriction`: ❌ No coverage - `getMapMode`: ❌ No coverage - `setCamera`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:55](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L55) (Tag: `maps_android_3d_init_basic_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:59](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L59) (Tag: `maps_android_3d_init_basic_kt`) - `setCameraAnimationEndListener`: ❌ No coverage - `setCameraChangedListener`: @@ -107,8 +108,10 @@ This document was auto-generated by `scripts/catalog_api.py`. It serves as a cro - `setOnMapReadyListener`: - [MapActivity.kt:32](MapActivity.kt#L32) (Tag: `No Tag`) - [MapActivity.kt:48](MapActivity.kt#L48) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:74](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L74) (Tag: `maps_android_3d_init_listeners_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:78](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L78) (Tag: `maps_android_3d_init_listeners_kt`) - `setOnMapSteadyListener`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:83](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L83) (Tag: `maps_android_3d_init_listeners_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:87](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L87) (Tag: `maps_android_3d_init_listeners_kt`) - `stopCameraAnimation`: - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:81](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L81) (Tag: `maps_android_3d_camera_stop_kt`) diff --git a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt index a0252be0..1b3536a9 100644 --- a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt +++ b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt @@ -28,13 +28,11 @@ class PlaceSnippets(private val map: GoogleMap3D) { * Listens for clicks on 3D Places (buildings, POIs). */ fun listenToPlaceClicks() { - map.setMap3DClickListener(object : OnMap3DClickListener { - override fun onMap3DClick(location: LatLngAltitude, placeId: String?) { - if (placeId != null) { - // Handle place click - } + map.setMap3DClickListener { location, placeId -> + if (placeId != null) { + // Handle place click } - }) + } } // [END maps_android_3d_place_click_kt] } From 6a28888ff49dbaac4db38fdcc76bba5108d7042c Mon Sep 17 00:00:00 2001 From: dkhawk <107309+dkhawk@users.noreply.github.com> Date: Thu, 19 Mar 2026 14:09:21 -0600 Subject: [PATCH 04/36] Refine camera animations and upgrade button aesthetics in snippets app --- .../main/res/drawable/photo_camera_24px.xml | 25 +++ .../main/res/drawable/restart_alt_24px.xml | 25 +++ .../src/main/res/layout/activity_map.xml | 42 +++- .../java/ExampleInstrumentedTest.java | 41 ---- .../snippets/java/MapActivityTest.java | 41 ---- .../snippets/java/SnippetDiscoveryTest.java | 36 ++++ .../java-app/src/main/AndroidManifest.xml | 6 +- .../snippets/java/JavaSnippetsActivity.java | 6 +- .../example/snippets/java/MapActivity.java | 58 ++++-- .../snippets/java/SnippetGroupAdapter.java | 126 ++++++++++++ .../snippets/java/SnippetGroupInfo.java | 30 +++ .../snippets/java/SnippetItemInfo.java | 28 +++ .../snippets/java/SnippetRegistry.java | 152 +++++++------- .../java/annotations/SnippetGroup.java | 23 +++ .../java/annotations/SnippetItem.java | 23 +++ .../java/snippets/CameraControlSnippets.java | 123 ++++++++---- .../java/snippets/MapInitSnippets.java | 21 +- .../java/snippets/MarkerSnippets.java | 78 +++++++- .../snippets/java/snippets/ModelSnippets.java | 24 ++- .../snippets/java/snippets/PlaceSnippets.java | 15 +- .../java/snippets/PolygonSnippets.java | 24 ++- .../java/snippets/PolylineSnippets.java | 24 ++- .../java/snippets/PopoverSnippets.java | 24 ++- .../res/layout/list_item_group_header.xml | 9 + .../java-app/src/main/res/values/themes.xml | 6 +- .../kotlin/ExampleInstrumentedTest.kt | 44 ---- .../snippets/kotlin/SnippetDiscoveryTest.kt | 18 ++ .../kotlin-app/src/main/AndroidManifest.xml | 4 +- .../snippets/kotlin/KotlinSnippetsActivity.kt | 65 +++--- .../example/snippets/kotlin/MapActivity.kt | 107 ++++++++-- .../snippets/kotlin/SnippetRegistry.kt | 181 +++++++++-------- .../kotlin/annotations/SnippetGroup.kt | 14 ++ .../kotlin/annotations/SnippetItem.kt | 14 ++ .../kotlin/snippets/CameraControlSnippets.kt | 188 ++++++++++++++---- .../kotlin/snippets/MapInitSnippets.kt | 16 +- .../kotlin/snippets/MarkerSnippets.kt | 101 +++++++++- .../snippets/kotlin/snippets/ModelSnippets.kt | 24 ++- .../snippets/kotlin/snippets/PlaceSnippets.kt | 15 +- .../kotlin/snippets/PolygonSnippets.kt | 24 ++- .../kotlin/snippets/PolylineSnippets.kt | 24 ++- .../kotlin/snippets/PopoverSnippets.kt | 24 ++- .../snippets/kotlin/utils/MapExtensions.kt | 48 +++++ .../kotlin-app/src/main/res/values/themes.xml | 6 + 43 files changed, 1429 insertions(+), 498 deletions(-) create mode 100644 snippets/common/src/main/res/drawable/photo_camera_24px.xml create mode 100644 snippets/common/src/main/res/drawable/restart_alt_24px.xml delete mode 100644 snippets/java-app/src/androidTest/java/com/example/snippets/java/ExampleInstrumentedTest.java delete mode 100644 snippets/java-app/src/androidTest/java/com/example/snippets/java/MapActivityTest.java create mode 100644 snippets/java-app/src/androidTest/java/com/example/snippets/java/SnippetDiscoveryTest.java create mode 100644 snippets/java-app/src/main/java/com/example/snippets/java/SnippetGroupAdapter.java create mode 100644 snippets/java-app/src/main/java/com/example/snippets/java/SnippetGroupInfo.java create mode 100644 snippets/java-app/src/main/java/com/example/snippets/java/SnippetItemInfo.java create mode 100644 snippets/java-app/src/main/java/com/example/snippets/java/annotations/SnippetGroup.java create mode 100644 snippets/java-app/src/main/java/com/example/snippets/java/annotations/SnippetItem.java create mode 100644 snippets/java-app/src/main/res/layout/list_item_group_header.xml delete mode 100644 snippets/kotlin-app/src/androidTest/java/com/example/snippets/kotlin/ExampleInstrumentedTest.kt create mode 100644 snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/annotations/SnippetGroup.kt create mode 100644 snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/annotations/SnippetItem.kt create mode 100644 snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/utils/MapExtensions.kt diff --git a/snippets/common/src/main/res/drawable/photo_camera_24px.xml b/snippets/common/src/main/res/drawable/photo_camera_24px.xml new file mode 100644 index 00000000..a926b427 --- /dev/null +++ b/snippets/common/src/main/res/drawable/photo_camera_24px.xml @@ -0,0 +1,25 @@ + + + + diff --git a/snippets/common/src/main/res/drawable/restart_alt_24px.xml b/snippets/common/src/main/res/drawable/restart_alt_24px.xml new file mode 100644 index 00000000..0a8cde2d --- /dev/null +++ b/snippets/common/src/main/res/drawable/restart_alt_24px.xml @@ -0,0 +1,25 @@ + + + + diff --git a/snippets/common/src/main/res/layout/activity_map.xml b/snippets/common/src/main/res/layout/activity_map.xml index 053a06fe..109d0dac 100644 --- a/snippets/common/src/main/res/layout/activity_map.xml +++ b/snippets/common/src/main/res/layout/activity_map.xml @@ -1,3 +1,4 @@ + - + android:layout_height="match_parent"> + + + + + + + + + + + + + + diff --git a/snippets/java-app/src/androidTest/java/com/example/snippets/java/ExampleInstrumentedTest.java b/snippets/java-app/src/androidTest/java/com/example/snippets/java/ExampleInstrumentedTest.java deleted file mode 100644 index 1b6bbad3..00000000 --- a/snippets/java-app/src/androidTest/java/com/example/snippets/java/ExampleInstrumentedTest.java +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Copyright 2026 Google LLC - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package com.example.snippets.java; - -import androidx.test.ext.junit.rules.ActivityScenarioRule; -import androidx.test.ext.junit.runners.AndroidJUnit4; -import androidx.test.platform.app.InstrumentationRegistry; -import org.junit.Rule; -import org.junit.Test; -import org.junit.runner.RunWith; - -import static org.junit.Assert.assertEquals; - -@RunWith(AndroidJUnit4.class) -public class ExampleInstrumentedTest { - - @Rule - public ActivityScenarioRule activityRule = - new ActivityScenarioRule<>(MainActivity.class); - - @Test - public void useAppContext() { - // Context of the app under test. - String packageName = InstrumentationRegistry.getInstrumentation().getTargetContext().getPackageName(); - assertEquals("com.example.snippets.java", packageName); - } -} diff --git a/snippets/java-app/src/androidTest/java/com/example/snippets/java/MapActivityTest.java b/snippets/java-app/src/androidTest/java/com/example/snippets/java/MapActivityTest.java deleted file mode 100644 index bb564524..00000000 --- a/snippets/java-app/src/androidTest/java/com/example/snippets/java/MapActivityTest.java +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Copyright 2026 Google LLC - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package com.example.snippets.java; - -import androidx.test.core.app.ActivityScenario; -import androidx.test.ext.junit.runners.AndroidJUnit4; -import org.junit.Test; -import org.junit.runner.RunWith; - -import static androidx.test.espresso.Espresso.onView; -import static androidx.test.espresso.assertion.ViewAssertions.matches; -import static androidx.test.espresso.matcher.ViewMatchers.isDisplayed; -import static androidx.test.espresso.matcher.ViewMatchers.withId; -import com.example.snippets.java.MapActivity; // Implicitly imported if in same package but good to be explicit or if names collide - -@RunWith(AndroidJUnit4.class) -public class MapActivityTest { - - @Test - public void mapActivityLaunches() { - try (ActivityScenario scenario = ActivityScenario.launch(MapActivity.class)) { - // Check if map view is displayed - // R.id.map is in com.example.snippets.common.R - onView(withId(com.example.snippets.common.R.id.map)).check(matches(isDisplayed())); - } - } -} diff --git a/snippets/java-app/src/androidTest/java/com/example/snippets/java/SnippetDiscoveryTest.java b/snippets/java-app/src/androidTest/java/com/example/snippets/java/SnippetDiscoveryTest.java new file mode 100644 index 00000000..4ec8fd0a --- /dev/null +++ b/snippets/java-app/src/androidTest/java/com/example/snippets/java/SnippetDiscoveryTest.java @@ -0,0 +1,36 @@ +package com.example.snippets.java; + +import android.content.Context; +import androidx.test.core.app.ApplicationProvider; +import androidx.test.ext.junit.runners.AndroidJUnit4; +import org.junit.Test; +import org.junit.runner.RunWith; +import java.util.List; + +import static org.junit.Assert.assertFalse; +import static org.junit.Assert.assertNotNull; + +@RunWith(AndroidJUnit4.class) +public class SnippetDiscoveryTest { + + @Test + public void verifySnippetGroupsLoaded() { + // Use the application context for scanning if needed, although scanning currently triggers from local setup + List groups = SnippetRegistry.getSnippetGroups(); + + assertNotNull("Snippet groups list should not be null", groups); + assertFalse("Snippet groups list should not be empty", groups.isEmpty()); + + for (SnippetGroupInfo group : groups) { + assertNotNull("Group title should not be null", group.getTitle()); + assertFalse("Group title should not be empty", group.getTitle().isEmpty()); + assertFalse("Group '" + group.getTitle() + "' must have items", group.getItems().isEmpty()); + + for (SnippetItemInfo item : group.getItems()) { + assertNotNull("Snippet title should not be null", item.getTitle()); + assertFalse("Snippet title should not be empty", item.getTitle().isEmpty()); + assertNotNull("Snippet description should not be null", item.getDescription()); + } + } + } +} diff --git a/snippets/java-app/src/main/AndroidManifest.xml b/snippets/java-app/src/main/AndroidManifest.xml index d6b6997b..6e0becd9 100644 --- a/snippets/java-app/src/main/AndroidManifest.xml +++ b/snippets/java-app/src/main/AndroidManifest.xml @@ -30,7 +30,8 @@ tools:targetApi="31"> + android:exported="true" + android:launchMode="singleTask"> @@ -40,7 +41,8 @@ + android:label="Snippet Demo" + android:theme="@style/Theme.Snippets.Map" /> diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/JavaSnippetsActivity.java b/snippets/java-app/src/main/java/com/example/snippets/java/JavaSnippetsActivity.java index ba27d9f6..1fb2a8cd 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/JavaSnippetsActivity.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/JavaSnippetsActivity.java @@ -46,11 +46,11 @@ protected void onCreate(Bundle savedInstanceState) { return WindowInsetsCompat.CONSUMED; }); - List snippets = new ArrayList<>(SnippetRegistry.snippets.values()); + List groups = SnippetRegistry.getSnippetGroups(); - SnippetAdapter adapter = new SnippetAdapter(snippets, snippet -> { + SnippetGroupAdapter adapter = new SnippetGroupAdapter(groups, item -> { Intent intent = new Intent(this, MapActivity.class); - intent.putExtra(MapActivity.EXTRA_SNIPPET_TITLE, snippet.title); + intent.putExtra(MapActivity.EXTRA_SNIPPET_TITLE, item.getTitle()); startActivity(intent); }); recyclerView.setAdapter(adapter); diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/MapActivity.java b/snippets/java-app/src/main/java/com/example/snippets/java/MapActivity.java index d5187d0e..c0a702ca 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/MapActivity.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/MapActivity.java @@ -48,22 +48,39 @@ protected void onCreate(Bundle savedInstanceState) { map3DView = findViewById(R.id.map); map3DView.onCreate(savedInstanceState); + findViewById(R.id.snapshot_button).setOnClickListener(v -> { + if (map != null) { + com.google.android.gms.maps3d.model.Camera cam = map.getCamera(); + if (cam != null && cam.getCenter() != null) { + com.google.android.gms.maps3d.model.LatLngAltitude center = cam.getCenter(); + double rawHeading = cam.getHeading() != null ? cam.getHeading() : 0.0; + double heading = (rawHeading % 360.0 + 360.0) % 360.0; + + double rawRoll = cam.getRoll() != null ? cam.getRoll() : 0.0; + double roll = rawRoll == -0.0 ? 0.0 : rawRoll; + + Log.d("MapActivity", String.format( + "Camera Pose:\ncenter = latLngAltitude {\n latitude = %.6f\n longitude = %.6f\n altitude = %.2f\n}\ntilt = %.2f\nheading = %.2f\nrange = %.2f\nroll = %.2f", + center.getLatitude(), center.getLongitude(), center.getAltitude(), + cam.getTilt() != null ? cam.getTilt() : 0.0, heading, cam.getRange() != null ? cam.getRange() : 0.0, roll + )); + } + } else { + Log.d("MapActivity", "Map NOT initialized yet"); + } + }); + + findViewById(R.id.reset_view_button).setOnClickListener(v -> runSnippet()); + snippetTitle = getIntent().getStringExtra(EXTRA_SNIPPET_TITLE); map3DView.getMap3DViewAsync(new OnMap3DViewReadyCallback() { @Override public void onMap3DViewReady(@NonNull GoogleMap3D map) { MapActivity.this.map = map; - Log.w("MapActivity", "onMap3DViewReady" + map); - - runSnippet(); // <-- This will fail if the map is not ready + Log.w("MapActivity", "onMap3DViewReady " + map); - map.setOnMapReadyListener(sceneReadiness -> { - if (!triggered && sceneReadiness >= 99.9) { - Log.w("MapActivity", "onMapReady sceneReadiness: " + sceneReadiness); - triggered = true; - runSnippet(); // <-- This will only be called the first time the map is ready - } - }); + // Simple 3-second delay to bypass readiness bugs as requested + runSnippet(); } @Override @@ -74,17 +91,20 @@ public void onError(@NonNull Exception error) { } protected void runSnippet() { - // Map is ready if (snippetTitle != null) { - Snippet snippet = SnippetRegistry.snippets.get(snippetTitle); + // Use SnippetItemInfo from updated Registry + SnippetItemInfo snippet = SnippetRegistry.snippets.get(snippetTitle); if (snippet != null) { - try { - snippet.action.execute(MapActivity.this, map); - runOnUiThread(() -> Toast.makeText(MapActivity.this, "Running: " + snippetTitle, Toast.LENGTH_SHORT).show()); - } catch (Exception e) { - runOnUiThread(() -> Toast.makeText(MapActivity.this, "Error: " + e.getMessage(), Toast.LENGTH_LONG).show()); - e.printStackTrace(); - } + // 3 second delay + new android.os.Handler(android.os.Looper.getMainLooper()).postDelayed(() -> { + try { + snippet.getAction().execute(MapActivity.this, map); + runOnUiThread(() -> Toast.makeText(MapActivity.this, "Running: " + snippetTitle, Toast.LENGTH_SHORT).show()); + } catch (Exception e) { + runOnUiThread(() -> Toast.makeText(MapActivity.this, "Error: " + e.getMessage(), Toast.LENGTH_LONG).show()); + e.printStackTrace(); + } + }, 3000); } else { runOnUiThread(() -> Toast.makeText(MapActivity.this, "Snippet not found: " + snippetTitle, Toast.LENGTH_LONG).show()); } diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/SnippetGroupAdapter.java b/snippets/java-app/src/main/java/com/example/snippets/java/SnippetGroupAdapter.java new file mode 100644 index 00000000..9c7368da --- /dev/null +++ b/snippets/java-app/src/main/java/com/example/snippets/java/SnippetGroupAdapter.java @@ -0,0 +1,126 @@ +package com.example.snippets.java; + +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; +import android.widget.TextView; +import androidx.annotation.NonNull; +import androidx.recyclerview.widget.RecyclerView; +import java.util.ArrayList; +import java.util.List; + +/** + * Adapter supporting grouped category headers and snippet items representing the hierarchy. + */ +public class SnippetGroupAdapter extends RecyclerView.Adapter { + + private static final int TYPE_HEADER = 0; + private static final int TYPE_ITEM = 1; + + private final List items = new ArrayList<>(); + private final List groups; + private final java.util.Set expandedGroups = new java.util.HashSet<>(); + private final OnItemClickListener listener; + + public interface OnItemClickListener { + void onItemClick(SnippetItemInfo item); + } + + public SnippetGroupAdapter(List groups, OnItemClickListener listener) { + this.groups = groups; + this.listener = listener; + // All groups expanded by default + for (SnippetGroupInfo group : groups) { + expandedGroups.add(group.getTitle()); + } + rebuildItems(); + } + + private void rebuildItems() { + items.clear(); + for (SnippetGroupInfo group : groups) { + items.add(group); // Header + if (expandedGroups.contains(group.getTitle())) { + items.addAll(group.getItems()); // Sub-items + } + } + } + + @Override + public int getItemViewType(int position) { + if (items.get(position) instanceof SnippetGroupInfo) { + return TYPE_HEADER; + } else { + return TYPE_ITEM; + } + } + + @NonNull + @Override + public RecyclerView.ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) { + if (viewType == TYPE_HEADER) { + View view = LayoutInflater.from(parent.getContext()) + .inflate(R.layout.list_item_group_header, parent, false); + return new HeaderViewHolder(view); + } else { + View view = LayoutInflater.from(parent.getContext()) + .inflate(R.layout.list_item_snippet, parent, false); + return new ItemViewHolder(view); + } + } + + @Override + public void onBindViewHolder(@NonNull RecyclerView.ViewHolder holder, int position) { + if (getItemViewType(position) == TYPE_HEADER) { + SnippetGroupInfo group = (SnippetGroupInfo) items.get(position); + boolean isExpanded = expandedGroups.contains(group.getTitle()); + ((HeaderViewHolder) holder).bind(group, isExpanded, v -> { + if (isExpanded) { + expandedGroups.remove(group.getTitle()); + } else { + expandedGroups.add(group.getTitle()); + } + rebuildItems(); + notifyDataSetChanged(); + }); + } else { + ((ItemViewHolder) holder).bind((SnippetItemInfo) items.get(position), listener); + } + } + + @Override + public int getItemCount() { + return items.size(); + } + + static class HeaderViewHolder extends RecyclerView.ViewHolder { + private final TextView headerTitle; + + public HeaderViewHolder(@NonNull View itemView) { + super(itemView); + headerTitle = itemView.findViewById(R.id.headerTitle); + } + + public void bind(SnippetGroupInfo group, boolean isExpanded, View.OnClickListener clickListener) { + headerTitle.setText((isExpanded ? "▼ " : "▶ ") + group.getTitle()); + itemView.setOnClickListener(clickListener); + } + } + + static class ItemViewHolder extends RecyclerView.ViewHolder { + private final TextView title; + private final TextView description; + + public ItemViewHolder(@NonNull View itemView) { + super(itemView); + title = itemView.findViewById(R.id.title); + description = itemView.findViewById(R.id.description); + } + + public void bind(final SnippetItemInfo item, final OnItemClickListener listener) { + title.setText(item.getTitle()); + description.setText(item.getDescription()); + itemView.setOnClickListener(v -> listener.onItemClick(item)); + } + } +} diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/SnippetGroupInfo.java b/snippets/java-app/src/main/java/com/example/snippets/java/SnippetGroupInfo.java new file mode 100644 index 00000000..649ff40d --- /dev/null +++ b/snippets/java-app/src/main/java/com/example/snippets/java/SnippetGroupInfo.java @@ -0,0 +1,30 @@ +package com.example.snippets.java; + +import java.util.List; + +/** + * Model class containing metadata and items for a grouped category of snippets. + */ +public class SnippetGroupInfo { + private final String title; + private final String description; + private final List items; + + public SnippetGroupInfo(String title, String description, List items) { + this.title = title; + this.description = description; + this.items = items; + } + + public String getTitle() { + return title; + } + + public String getDescription() { + return description; + } + + public List getItems() { + return items; + } +} diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/SnippetItemInfo.java b/snippets/java-app/src/main/java/com/example/snippets/java/SnippetItemInfo.java new file mode 100644 index 00000000..895dfe0e --- /dev/null +++ b/snippets/java-app/src/main/java/com/example/snippets/java/SnippetItemInfo.java @@ -0,0 +1,28 @@ +package com.example.snippets.java; + +/** + * Model class containing metadata and execution logic for an individual snippet item. + */ +public class SnippetItemInfo { + private final String title; + private final String description; + private final SnippetAction action; + + public SnippetItemInfo(String title, String description, SnippetAction action) { + this.title = title; + this.description = description; + this.action = action; + } + + public String getTitle() { + return title; + } + + public String getDescription() { + return description; + } + + public SnippetAction getAction() { + return action; + } +} diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/SnippetRegistry.java b/snippets/java-app/src/main/java/com/example/snippets/java/SnippetRegistry.java index 3ef15ea7..0df3653d 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/SnippetRegistry.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/SnippetRegistry.java @@ -18,83 +18,95 @@ import com.example.snippets.java.snippets.*; +import java.lang.reflect.Method; +import java.util.ArrayList; +import java.util.Arrays; import java.util.LinkedHashMap; +import java.util.List; import java.util.Map; +import com.example.snippets.java.annotations.SnippetGroup; +import com.example.snippets.java.annotations.SnippetItem; +import android.content.Context; +import com.google.android.gms.maps3d.GoogleMap3D; public class SnippetRegistry { - public static final Map snippets = new LinkedHashMap<>(); - static { - registerSnippet("Map Initialization - Listeners", - "Initializes a 3D map and logs events when the scene is ready (100% loaded) and steady (camera stopped moving).", - (context, map) -> new MapInitSnippets().setupMapListeners(context, map)); - - registerSnippet("Camera - Fly To", - "Animates the camera to a specific position (Lat: 37.422, Lng: -122.084, Alt: 100m) with a 45-degree tilt and 90-degree heading over 5 seconds.", - (context, map) -> new CameraControlSnippets(map).flyCameraToPosition()); - - registerSnippet("Camera - Fly Around", - "Rotates the camera 360 degrees around a specific location (Lat: 37.422, Lng: -122.084) over 10 seconds.", - (context, map) -> new CameraControlSnippets(map).flyCameraAroundLocation()); - - registerSnippet("Camera - Stop Animation", - "Stops any currently running camera animation immediately.", - (context, map) -> new CameraControlSnippets(map).stopAnimation()); - - registerSnippet("Camera - Listen Events", - "Logs camera change events to the console, printing the center coordinates as the camera moves.", - (context, map) -> new CameraControlSnippets(map).listenToCameraEvents()); - - registerSnippet("Markers - Basic", - "Adds a standard marker at Lat: 37.422, Lng: -122.084, Alt: 10m.", - (context, map) -> new MarkerSnippets(map).addBasicMarker()); - - registerSnippet("Markers - Advanced", - "Adds a 'Priority Marker' at Lat: 37.422, Lng: -122.084, Alt: 10m (Relative to Ground) that is extruded and collides with other markers.", - (context, map) -> new MarkerSnippets(map).addAdvancedMarker()); - - registerSnippet("Markers - Click", - "Adds a marker at Lat: 37.42, Lng: -122.08 that logs a message when clicked.", - (context, map) -> new MarkerSnippets(map).handleMarkerClick()); - - registerSnippet("Polygons - Basic", - "Draws a red polygon with a blue stroke around a small area near Lat: 37.42, Lng: -122.08.", - (context, map) -> new PolygonSnippets(map).addBasicPolygon()); - - registerSnippet("Polygons - Extruded", - "Draws a semi-transparent red extruded polygon (height 50m) around a small area near Lat: 37.42, Lng: -122.08.", - (context, map) -> new PolygonSnippets(map).addExtrudedPolygon()); - - registerSnippet("Polylines - Basic", - "Draws a thick red polyline connecting three points near Lat: 37.42, Lng: -122.08.", - (context, map) -> new PolylineSnippets(map).addBasicPolyline()); - - registerSnippet("Polylines - Styled", - "Draws a magenta polyline with a green outline, extruded and following the ground curvature (geodesic), connecting two points.", - (context, map) -> new PolylineSnippets(map).addStyledPolyline()); - - registerSnippet("Models - Basic", - "Loads a GLB model from a URL (https://example.com/model.glb) and places it clamped to the ground at Lat: 37.422, Lng: -122.084.", - (context, map) -> new ModelSnippets(map).addBasicModel()); - - registerSnippet("Models - Advanced", - "Loads a GLB model from assets (my_model.glb), scales it by 2x, rotates it, and places it at 10m relative altitude.", - (context, map) -> new ModelSnippets(map).addAdvancedModel()); - - registerSnippet("Popovers - Marker", - "Adds a 'Hello Popover!' text bubble anchored to a marker at Lat: 37.422, Lng: -122.084.", - (context, map) -> new PopoverSnippets(context, map).addPopoverToMarker()); - - registerSnippet("Popovers - Configured", - "Adds an 'Info' popover anchored to a marker at [0,0] with auto-close enabled and auto-pan disabled.", - (context, map) -> new PopoverSnippets(context, map).addConfiguredPopover()); + private static final List> snippetClasses = Arrays.asList( + MapInitSnippets.class, + CameraControlSnippets.class, + MarkerSnippets.class, + PolygonSnippets.class, + PolylineSnippets.class, + ModelSnippets.class, + PopoverSnippets.class, + PlaceSnippets.class + ); + + /** + * Scans annotated classes to build the hierarchical snippet model. + */ + public static List getSnippetGroups() { + List groups = new ArrayList<>(); + + for (Class clazz : snippetClasses) { + SnippetGroup groupAnnotation = clazz.getAnnotation(SnippetGroup.class); + if (groupAnnotation == null) continue; + + List items = new ArrayList<>(); + + for (Method method : clazz.getDeclaredMethods()) { + SnippetItem itemAnnotation = method.getAnnotation(SnippetItem.class); + if (itemAnnotation == null) continue; + + items.add(new SnippetItemInfo( + itemAnnotation.title(), + itemAnnotation.description(), + (context, map) -> { + try { + Object instance = createInstance(clazz, context, map); + if (method.getParameterCount() == 0) { + method.invoke(instance); + } else if (method.getParameterCount() == 1 && method.getParameterTypes()[0] == Context.class) { + method.invoke(instance, context); + } + } catch (Exception e) { + e.printStackTrace(); + } + } + )); + } + + if (!items.isEmpty()) { + groups.add(new SnippetGroupInfo( + groupAnnotation.title(), + groupAnnotation.description(), + items + )); + } + } + return groups; + } - registerSnippet("Places - Listen Clicks", - "Sets up a listener that logs the Place ID when a user clicks on a 3D building or POI.", - (context, map) -> new PlaceSnippets(map).listenToPlaceClicks()); + private static Object createInstance(Class clazz, Context context, GoogleMap3D map) throws Exception { + try { + return clazz.getConstructor(Context.class, GoogleMap3D.class).newInstance(context, map); + } catch (NoSuchMethodException e1) { + try { + return clazz.getConstructor(GoogleMap3D.class).newInstance(map); + } catch (NoSuchMethodException e2) { + return clazz.getConstructor().newInstance(); + } + } } - private static void registerSnippet(String title, String description, SnippetAction action) { - snippets.put(title, new Snippet(title, description, action)); + // Legacy support for Activities during refactoring + public static final Map snippets = new LinkedHashMap<>(); + + static { + for (SnippetGroupInfo group : getSnippetGroups()) { + for (SnippetItemInfo item : group.getItems()) { + snippets.put(item.getTitle(), item); + } + } } } diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/annotations/SnippetGroup.java b/snippets/java-app/src/main/java/com/example/snippets/java/annotations/SnippetGroup.java new file mode 100644 index 00000000..698eae87 --- /dev/null +++ b/snippets/java-app/src/main/java/com/example/snippets/java/annotations/SnippetGroup.java @@ -0,0 +1,23 @@ +package com.example.snippets.java.annotations; + +import java.lang.annotation.ElementType; +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; +import java.lang.annotation.Target; + +/** + * Marks a class containing multiple snippet methods with category metadata. + */ +@Target(ElementType.TYPE) +@Retention(RetentionPolicy.RUNTIME) +public @interface SnippetGroup { + /** + * @return The displayed title for this snippet category. + */ + String title(); + + /** + * @return A brief explanation of what the category contains. + */ + String description() default ""; +} diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/annotations/SnippetItem.java b/snippets/java-app/src/main/java/com/example/snippets/java/annotations/SnippetItem.java new file mode 100644 index 00000000..391860d5 --- /dev/null +++ b/snippets/java-app/src/main/java/com/example/snippets/java/annotations/SnippetItem.java @@ -0,0 +1,23 @@ +package com.example.snippets.java.annotations; + +import java.lang.annotation.ElementType; +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; +import java.lang.annotation.Target; + +/** + * Marks a method inside a [SnippetGroup] with execution metadata. + */ +@Target(ElementType.METHOD) +@Retention(RetentionPolicy.RUNTIME) +public @interface SnippetItem { + /** + * @return The displayed title for this individual snippet action. + */ + String title(); + + /** + * @return A brief explanation of what the snippet achieves. + */ + String description() default ""; +} diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java index 04dee065..5603514b 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java @@ -27,7 +27,13 @@ import com.google.android.gms.maps3d.model.FlyAroundOptions; import com.google.android.gms.maps3d.model.FlyToOptions; import com.google.android.gms.maps3d.model.LatLngAltitude; +import com.example.snippets.java.annotations.SnippetGroup; +import com.example.snippets.java.annotations.SnippetItem; +@SnippetGroup( + title = "Camera", + description = "Snippets demonstrating dynamic camera orchestration and animations." +) public class CameraControlSnippets { private final GoogleMap3D map; @@ -41,15 +47,14 @@ public CameraControlSnippets(GoogleMap3D map) { * Animates the camera to a specific position (coordinates, heading, tilt) over * a duration. */ + @SnippetItem( + title = "Fly To", + description = "Animates the camera to a specific position with a tilt and heading over 5 seconds." + ) public void flyCameraToPosition() { - LatLngAltitude center = new LatLngAltitude(37.4220, -122.0841, 100.0); + LatLngAltitude center = new LatLngAltitude(38.743829, -109.499512, 1460.37); // Create a target camera: - // center: LatLngAltitude target - // heading: 90.0 (East) - // tilt: 45.0 degrees - // roll: 0.0 (level) - // range: 1000.0 meters - Camera targetCamera = new Camera(center, 90.0, 45.0, 0.0, 1000.0); + Camera targetCamera = new Camera(center, 338.52, 76.16, 0.0, 191.71); // FlyToOptions constructor: endCamera, durationInMillis FlyToOptions options = new FlyToOptions(targetCamera, 5000L); @@ -58,57 +63,103 @@ public void flyCameraToPosition() { } // [END maps_android_3d_camera_fly_to_java] - // [START maps_android_3d_camera_fly_around_java] /** * Orbits the camera around a specific location. */ + @SuppressWarnings("unused") + @SnippetItem( + title = "Fly Around", + description = "Rotates the camera 360 degrees around a specific location over 10 seconds." + ) public void flyCameraAroundLocation() { - LatLngAltitude center = new LatLngAltitude(37.4220, -122.0841, 0.0); + // [START maps_android_3d_camera_fly_around_java] + LatLngAltitude center = new LatLngAltitude(38.743502, -109.499374, 1467.0); // Create a target camera: - // center: LatLngAltitude target - // heading: 0.0 (North) - // tilt: 45.0 degrees - // roll: 0.0 (level) - // range: 500.0 meters - Camera targetCamera = new Camera(center, 0.0, 45.0, 0.0, 500.0); + Camera targetCamera = new Camera(center, 349.6, 58.1, 0.0, 138.2); // Orbit around the target // FlyAroundOptions constructor: center, durationInMillis, rounds - FlyAroundOptions options = new FlyAroundOptions(targetCamera, 10000L, 1.0); - - map.flyCameraAround(options); + FlyAroundOptions options = new FlyAroundOptions(targetCamera, 6000L, 2.0); + + // Although not completely necessary, the experience will be usually be better by + // waiting for the camera to steady before starting the flyCameraAround + map.setCamera(targetCamera); + + map.setOnMapSteadyListener(isSteady -> { + if (isSteady) { + map.setOnMapSteadyListener(null); // Cleanup + map.flyCameraAround(options); + } + }); + // [END maps_android_3d_camera_fly_around_java] } - // [END maps_android_3d_camera_fly_around_java] - // [START maps_android_3d_camera_stop_java] /** * Stops the current camera animation. */ + @SuppressWarnings("unused") + @SnippetItem( + title = "Stop Animation", + description = "Stops any currently running camera animation immediately." + ) public void stopAnimation() { - LatLngAltitude center = new LatLngAltitude(37.4220, -122.0841, 0.0); - Camera targetCamera = new Camera(center, 0.0, 45.0, 0.0, 500.0); - FlyAroundOptions options = new FlyAroundOptions(targetCamera, 30000L, 10.0); + // [START maps_android_3d_camera_stop_java] + LatLngAltitude center = new LatLngAltitude(38.743829, -109.499512, 1460.37); + Camera targetCamera = new Camera(center, 338.52, 76.16, 0.0, 191.71); - // 1. Start an animation so we have something to stop - map.flyCameraAround(options); + // 1. Start a slow flyTo animation so we have something to stop + map.flyCameraTo(new FlyToOptions(targetCamera, 10000L)); - // 2. Schedule the stop command after 3000ms (3 seconds) - new Handler(Looper.getMainLooper()).postDelayed(map::stopCameraAnimation, 3000); + // 2. Schedule the stop command after 2 seconds + new Handler(Looper.getMainLooper()).postDelayed(map::stopCameraAnimation, 2000); + // [END maps_android_3d_camera_stop_java] } - // [END maps_android_3d_camera_stop_java] - // [START maps_android_3d_camera_events_java] // [START maps_android_3d_camera_events_java] /** * Listens to camera change events and logs the visible region. */ + @SuppressWarnings("unused") + @SnippetItem( + title = "Listen Camera Events", + description = "Demonstrates camera change listening" + ) public void listenToCameraEvents() { - map.setCameraChangedListener(camera -> Log.d("Maps3D", "Camera State: " + - "Center: " + camera.getCenter() + - ", Heading: " + camera.getHeading() + - ", Tilt: " + camera.getTilt() + - ", Roll: " + camera.getRoll() + - ", Range: " + camera.getRange())); + // [START maps_android_3d_camera_events_java] + final long[] lastLogTime = {0L}; + map.setCameraChangedListener(camera -> { + long currentTime = System.currentTimeMillis(); + if (currentTime - lastLogTime[0] > 500) { // Limit to 1 log per 500ms + lastLogTime[0] = currentTime; + Log.d("Maps3D", "Camera State: " + + "Center: " + camera.getCenter() + + ", Heading: " + camera.getHeading() + + ", Tilt: " + camera.getTilt() + + ", Roll: " + camera.getRoll() + + ", Range: " + camera.getRange()); + } + }); + + // Detach after 5 seconds to prevent log spam + new android.os.Handler(android.os.Looper.getMainLooper()).postDelayed(() -> { + map.setCameraChangedListener(null); + }, 5000); + // [END maps_android_3d_camera_events_java] + } + + /** + * Listens to map steady state events. + */ + @SuppressWarnings("unused") + @SnippetItem( + title = "Listen Steady State", + description = "Logs to the console when the map finishes rendering or enters a steady state." + ) + public void listenToMapSteadyState() { + // [START maps_android_3d_camera_steady_java] + map.setOnMapSteadyListener(isSceneSteady -> { + Log.d("Maps3D", "Map Is Steady: " + isSceneSteady); + }); + // [END maps_android_3d_camera_steady_java] } - // [END maps_android_3d_camera_events_java] } diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java index 21cdb418..0a28d8ac 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java @@ -29,14 +29,19 @@ import android.os.Handler; import android.os.Looper; import android.widget.Toast; +import com.example.snippets.java.annotations.SnippetGroup; +import com.example.snippets.java.annotations.SnippetItem; +@SnippetGroup(title = "Map Initialization", description = "Snippets demonstrating map lifecycle, listeners and readiness states.") public class MapInitSnippets { - // [START maps_android_3d_init_basic_java] - /** - * Initializes a standard 3D Map View. - */ + @SnippetItem( + title = "Basic Map3D Initialization", + description = "Initializes a standard 3D Map View and sets an initial camera angle." + ) + @SuppressWarnings("unused") public void basicMap3D(Context context) { + // [START maps_android_3d_init_basic_java] Map3DView map3DView = new Map3DView(context); // Get the map asynchronously @@ -54,14 +59,16 @@ public void onError(@NonNull Exception e) { // Handle initialization error } }); + // [END maps_android_3d_init_basic_java] } - // [END maps_android_3d_init_basic_java] - // [START maps_android_3d_init_listeners_java] /** * Sets up listeners for map readiness and steady state. */ + @SuppressWarnings("unused") + @SnippetItem(title = "Listen Map Events", description = "Logs map events to the console, such as clicks or idle status.") public void setupMapListeners(Context context, GoogleMap3D map) { + // [START maps_android_3d_init_listeners_java] Handler mainHandler = new Handler(Looper.getMainLooper()); map.setOnMapReadyListener(new OnMapReadyListener() { @@ -85,6 +92,6 @@ public void onMapSteadyChange(boolean isSceneSteady) { } } }); + // [END maps_android_3d_init_listeners_java] } - // [END maps_android_3d_init_listeners_java] } diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java index 83d5d723..00ec109f 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java @@ -24,13 +24,21 @@ import com.google.android.gms.maps3d.model.Marker; import com.google.android.gms.maps3d.model.MarkerOptions; import com.google.android.gms.maps3d.model.PinConfiguration; +import com.google.android.gms.maps3d.model.Camera; +import com.google.android.gms.maps3d.model.FlyToOptions; import com.google.android.gms.maps3d.model.Glyph; import com.example.snippets.java.R; import android.content.Context; import android.graphics.Color; import android.widget.ImageView; import com.google.android.gms.maps3d.OnMarkerClickListener; +import com.example.snippets.java.annotations.SnippetGroup; +import com.example.snippets.java.annotations.SnippetItem; +@SnippetGroup( + title = "Markers", + description = "Snippets demonstrating standard, extruded, and custom styled markers." +) public class MarkerSnippets { private final GoogleMap3D map; @@ -39,11 +47,16 @@ public MarkerSnippets(GoogleMap3D map) { this.map = map; } - // [START maps_android_3d_marker_add_java] /** * Adds a basic marker to the map. */ + @SuppressWarnings("unused") + @SnippetItem( + title = "Basic", + description = "Adds a standard marker at Lat: 37.422, Lng: -122.084, Alt: 10m." + ) public void addBasicMarker() { + // [START maps_android_3d_marker_add_java] LatLngAltitude position = new LatLngAltitude(37.4220, -122.0841, 10.0); MarkerOptions options = new MarkerOptions(); @@ -52,38 +65,72 @@ public void addBasicMarker() { // MarkerOptions uses label, not title. Marker marker = map.addMarker(options); + // [START_EXCLUDE] + LatLngAltitude markerPos = options.getPosition(); + if (markerPos != null) { + LatLngAltitude camCenter = new LatLngAltitude(markerPos.getLatitude(), markerPos.getLongitude(), 0.0); + Camera targetCamera = new Camera(camCenter, 0.0, 45.0, 0.0, 500.0); + map.flyCameraTo(new FlyToOptions(targetCamera, 3000L)); + } + // [END_EXCLUDE] + // [END maps_android_3d_marker_add_java] } - // [END maps_android_3d_marker_add_java] - // [START maps_android_3d_marker_options_java] /** * Adds an advanced marker with detailed configuration options. */ + @SuppressWarnings("unused") + @SnippetItem( + title = "Advanced", + description = "Adds a 'Priority Marker' at Lat: 37.422, Lng: -122.084, Alt: 10m (Relative to Ground) that is extruded and collides with other markers." + ) public void addAdvancedMarker() { + // [START maps_android_3d_marker_options_java] LatLngAltitude position = new LatLngAltitude(37.4220, -122.0841, 10.0); MarkerOptions options = new MarkerOptions(); options.setPosition(position); options.setAltitudeMode(AltitudeMode.RELATIVE_TO_GROUND); options.setLabel("Priority Marker"); - options.setCollisionBehavior(CollisionBehavior.REQUIRED); + options.setCollisionBehavior(CollisionBehavior.OPTIONAL_AND_HIDES_LOWER_PRIORITY); options.setExtruded(true); options.setDrawnWhenOccluded(true); Marker marker = map.addMarker(options); + // [START_EXCLUDE] + LatLngAltitude markerPos = options.getPosition(); + if (markerPos != null) { + LatLngAltitude camCenter = new LatLngAltitude(markerPos.getLatitude(), markerPos.getLongitude(), 0.0); + Camera targetCamera = new Camera(camCenter, 0.0, 45.0, 0.0, 500.0); + map.flyCameraTo(new FlyToOptions(targetCamera, 3000L)); + } + // [END_EXCLUDE] + // [END maps_android_3d_marker_options_java] } - // [END maps_android_3d_marker_options_java] - // [START maps_android_3d_marker_click_java] /** * Adds a marker with a click listener. */ + @SuppressWarnings("unused") + @SnippetItem( + title = "Click", + description = "Adds a marker at Lat: 37.42, Lng: -122.08 that logs a message when clicked." + ) public void handleMarkerClick() { + // [START maps_android_3d_marker_click_java] LatLngAltitude position = new LatLngAltitude(37.42, -122.08, 0.0); MarkerOptions options = new MarkerOptions(); options.setPosition(position); Marker marker = map.addMarker(options); + // [START_EXCLUDE] + LatLngAltitude markerPos = options.getPosition(); + if (markerPos != null) { + LatLngAltitude camCenter = new LatLngAltitude(markerPos.getLatitude(), markerPos.getLongitude(), 0.0); + Camera targetCamera = new Camera(camCenter, 0.0, 45.0, 0.0, 500.0); + map.flyCameraTo(new FlyToOptions(targetCamera, 3000L)); + } + // [END_EXCLUDE] // [START_EXCLUDE] if (marker != null) { @@ -95,14 +142,19 @@ public void onMarkerClick() { }); } // [END_EXCLUDE] + // [END maps_android_3d_marker_click_java] } - // [END maps_android_3d_marker_click_java] - // [START maps_android_3d_marker_custom_icon_java] /** * Adds a marker with a custom icon using PinConfiguration. */ + @SuppressWarnings("unused") + @SnippetItem( + title = "Custom Icon", + description = "Adds a marker with a custom icon using PinConfiguration and Glyph styling." + ) public void addCustomMarker(Context context) { + // [START maps_android_3d_marker_custom_icon_java] LatLngAltitude position = new LatLngAltitude(37.4220, -122.0841, 10.0); // Create a Glyph with a custom image @@ -145,6 +197,14 @@ public void addCustomMarker(Context context) { .build()); Marker marker = map.addMarker(options); + // [START_EXCLUDE] + LatLngAltitude markerPos = options.getPosition(); + if (markerPos != null) { + LatLngAltitude camCenter = new LatLngAltitude(markerPos.getLatitude(), markerPos.getLongitude(), 0.0); + Camera targetCamera = new Camera(camCenter, 0.0, 45.0, 0.0, 500.0); + map.flyCameraTo(new FlyToOptions(targetCamera, 3000L)); + } + // [END_EXCLUDE] + // [END maps_android_3d_marker_custom_icon_java] } - // [END maps_android_3d_marker_custom_icon_java] } diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java index 1fc87b8b..1d911bd0 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java @@ -23,7 +23,13 @@ import com.google.android.gms.maps3d.model.ModelOptions; import com.google.android.gms.maps3d.model.Orientation; import com.google.android.gms.maps3d.model.Vector3D; +import com.example.snippets.java.annotations.SnippetGroup; +import com.example.snippets.java.annotations.SnippetItem; +@SnippetGroup( + title = "Models", + description = "Snippets demonstrating 3D Model (GLB) integration and configuration." +) public class ModelSnippets { private final GoogleMap3D map; @@ -32,11 +38,16 @@ public ModelSnippets(GoogleMap3D map) { this.map = map; } - // [START maps_android_3d_model_add_java] /** * Adds a basic 3D model (GLB) to the map from a URL. */ + @SuppressWarnings("unused") + @SnippetItem( + title = "Basic", + description = "Loads a GLB model from a URL and places it clamped to the ground." + ) public void addBasicModel() { + // [START maps_android_3d_model_add_java] LatLngAltitude position = new LatLngAltitude(37.4220, -122.0841, 0.0); ModelOptions options = new ModelOptions(); @@ -45,14 +56,19 @@ public void addBasicModel() { options.setAltitudeMode(AltitudeMode.CLAMP_TO_GROUND); Model model = map.addModel(options); + // [END maps_android_3d_model_add_java] } - // [END maps_android_3d_model_add_java] - // [START maps_android_3d_model_options_java] /** * Adds a 3D model with advanced configuration (scale, orientation). */ + @SuppressWarnings("unused") + @SnippetItem( + title = "Advanced", + description = "Loads a GLB model with advanced configuration (scale, orientation) from assets." + ) public void addAdvancedModel() { + // [START maps_android_3d_model_options_java] LatLngAltitude position = new LatLngAltitude(37.4220, -122.0841, 10.0); ModelOptions options = new ModelOptions(); @@ -63,6 +79,6 @@ public void addAdvancedModel() { options.setAltitudeMode(AltitudeMode.RELATIVE_TO_GROUND); Model model = map.addModel(options); + // [END maps_android_3d_model_options_java] } - // [END maps_android_3d_model_options_java] } diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PlaceSnippets.java b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PlaceSnippets.java index cb10cfea..5357be04 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PlaceSnippets.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PlaceSnippets.java @@ -21,7 +21,13 @@ import com.google.android.gms.maps3d.GoogleMap3D; import com.google.android.gms.maps3d.OnMap3DClickListener; import com.google.android.gms.maps3d.model.LatLngAltitude; +import com.example.snippets.java.annotations.SnippetGroup; +import com.example.snippets.java.annotations.SnippetItem; +@SnippetGroup( + title = "Places", + description = "Snippets demonstrating Place (POI/Building) interaction algorithms." +) public class PlaceSnippets { private final GoogleMap3D map; @@ -30,11 +36,16 @@ public PlaceSnippets(GoogleMap3D map) { this.map = map; } - // [START maps_android_3d_place_click_java] /** * Listens for clicks on 3D Places (buildings, POIs). */ + @SuppressWarnings("unused") + @SnippetItem( + title = "Listen Clicks", + description = "Sets up a listener that logs the Place ID when a user clicks on a 3D building or POI." + ) public void listenToPlaceClicks() { + // [START maps_android_3d_place_click_java] map.setMap3DClickListener(new OnMap3DClickListener() { @Override public void onMap3DClick(@NonNull LatLngAltitude location, @Nullable String placeId) { @@ -43,6 +54,6 @@ public void onMap3DClick(@NonNull LatLngAltitude location, @Nullable String plac } } }); + // [END maps_android_3d_place_click_java] } - // [END maps_android_3d_place_click_java] } diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java index d0ae7128..aab5cfb3 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java @@ -24,7 +24,13 @@ import com.google.android.gms.maps3d.model.PolygonOptions; import java.util.Arrays; import java.util.List; +import com.example.snippets.java.annotations.SnippetGroup; +import com.example.snippets.java.annotations.SnippetItem; +@SnippetGroup( + title = "Polygons", + description = "Snippets demonstrating 2D and 3D extruded polygon layers on the map." +) public class PolygonSnippets { private final GoogleMap3D map; @@ -33,11 +39,16 @@ public PolygonSnippets(GoogleMap3D map) { this.map = map; } - // [START maps_android_3d_polygon_add_java] /** * Adds a simple polygon to the map. */ + @SuppressWarnings("unused") + @SnippetItem( + title = "Basic", + description = "Draws a red polygon with a blue stroke around a small area near Lat: 37.42, Lng: -122.08." + ) public void addBasicPolygon() { + // [START maps_android_3d_polygon_add_java] List points = Arrays.asList( new LatLngAltitude(37.42, -122.08, 0.0), new LatLngAltitude(37.42, -122.09, 0.0), @@ -54,14 +65,19 @@ public void addBasicPolygon() { options.setAltitudeMode(AltitudeMode.CLAMP_TO_GROUND); Polygon polygon = map.addPolygon(options); + // [END maps_android_3d_polygon_add_java] } - // [END maps_android_3d_polygon_add_java] - // [START maps_android_3d_polygon_extruded_java] /** * Adds an extruded polygon with transparency. */ + @SuppressWarnings("unused") + @SnippetItem( + title = "Extruded", + description = "Draws a semi-transparent red extruded polygon (height 50m) around a small area near Lat: 37.42, Lng: -122.08." + ) public void addExtrudedPolygon() { + // [START maps_android_3d_polygon_extruded_java] List points = Arrays.asList( new LatLngAltitude(37.42, -122.08, 50.0), new LatLngAltitude(37.42, -122.09, 50.0), @@ -78,6 +94,6 @@ public void addExtrudedPolygon() { options.setAltitudeMode(AltitudeMode.RELATIVE_TO_GROUND); Polygon polygon = map.addPolygon(options); + // [END maps_android_3d_polygon_extruded_java] } - // [END maps_android_3d_polygon_extruded_java] } diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java index a4a54ec6..bc8f6160 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java @@ -24,7 +24,13 @@ import com.google.android.gms.maps3d.model.PolylineOptions; import java.util.Arrays; import java.util.List; +import com.example.snippets.java.annotations.SnippetGroup; +import com.example.snippets.java.annotations.SnippetItem; +@SnippetGroup( + title = "Polylines", + description = "Snippets demonstrating 2D and 3D extruded polyline paths on the map." +) public class PolylineSnippets { private final GoogleMap3D map; @@ -33,11 +39,16 @@ public PolylineSnippets(GoogleMap3D map) { this.map = map; } - // [START maps_android_3d_polyline_add_java] /** * Adds a basic polyline to the map. */ + @SuppressWarnings("unused") + @SnippetItem( + title = "Basic", + description = "Draws a thick red polyline connecting three points near Lat: 37.42, Lng: -122.08." + ) public void addBasicPolyline() { + // [START maps_android_3d_polyline_add_java] List points = Arrays.asList( new LatLngAltitude(37.42, -122.08, 0.0), new LatLngAltitude(37.43, -122.09, 0.0), @@ -51,14 +62,19 @@ public void addBasicPolyline() { options.setAltitudeMode(AltitudeMode.CLAMP_TO_GROUND); Polyline polyline = map.addPolyline(options); + // [END maps_android_3d_polyline_add_java] } - // [END maps_android_3d_polyline_add_java] - // [START maps_android_3d_polyline_options_java] /** * Adds a styled polyline with complex configuration. */ + @SuppressWarnings("unused") + @SnippetItem( + title = "Styled", + description = "Draws a magenta polyline with a green outline, extruded and following the ground curvature (geodesic), connecting two points." + ) public void addStyledPolyline() { + // [START maps_android_3d_polyline_options_java] List points = Arrays.asList( new LatLngAltitude(37.42, -122.08, 50.0), new LatLngAltitude(37.43, -122.09, 100.0) @@ -76,6 +92,6 @@ public void addStyledPolyline() { options.setDrawsOccludedSegments(true); Polyline polyline = map.addPolyline(options); + // [END maps_android_3d_polyline_options_java] } - // [END maps_android_3d_polyline_options_java] } diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java index 641dcbae..469c0d9b 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java @@ -27,7 +27,13 @@ import com.google.android.gms.maps3d.model.MarkerOptions; import com.google.android.gms.maps3d.Popover; import com.google.android.gms.maps3d.model.PopoverOptions; +import com.example.snippets.java.annotations.SnippetGroup; +import com.example.snippets.java.annotations.SnippetItem; +@SnippetGroup( + title = "Popovers", + description = "Snippets demonstrating anchored and configured 3D Popover views." +) public class PopoverSnippets { private final Context context; @@ -38,11 +44,16 @@ public PopoverSnippets(Context context, GoogleMap3D map) { this.map = map; } - // [START maps_android_3d_popover_add_java] /** * Adds a popover anchored to a marker. */ + @SuppressWarnings("unused") + @SnippetItem( + title = "Marker Anchor", + description = "Adds a 'Hello Popover!' text bubble anchored to a marker at Lat: 37.422, Lng: -122.084." + ) public void addPopoverToMarker() { + // [START maps_android_3d_popover_add_java] // Create a marker first Marker marker = map.addMarker(new MarkerOptions()); if (marker == null) @@ -66,14 +77,19 @@ public void addPopoverToMarker() { if (popover != null) { popover.show(); } + // [END maps_android_3d_popover_add_java] } - // [END maps_android_3d_popover_add_java] - // [START maps_android_3d_popover_options_java] /** * Adds a configured popover (auto-close enabled, auto-pan disabled). */ + @SuppressWarnings("unused") + @SnippetItem( + title = "Configured", + description = "Adds an 'Info' popover anchored to a marker at [0,0] with auto-close enabled and auto-pan disabled." + ) public void addConfiguredPopover() { + // [START maps_android_3d_popover_options_java] TextView textView = new TextView(context); textView.setText(com.example.snippets.common.R.string.popover_info); @@ -84,6 +100,6 @@ public void addConfiguredPopover() { options.setAutoPanEnabled(false); // Do not pan to popover map.addPopover(options); + // [END maps_android_3d_popover_options_java] } - // [END maps_android_3d_popover_options_java] } diff --git a/snippets/java-app/src/main/res/layout/list_item_group_header.xml b/snippets/java-app/src/main/res/layout/list_item_group_header.xml new file mode 100644 index 00000000..5b17eaf1 --- /dev/null +++ b/snippets/java-app/src/main/res/layout/list_item_group_header.xml @@ -0,0 +1,9 @@ + + diff --git a/snippets/java-app/src/main/res/values/themes.xml b/snippets/java-app/src/main/res/values/themes.xml index a6304a33..3802b9d9 100644 --- a/snippets/java-app/src/main/res/values/themes.xml +++ b/snippets/java-app/src/main/res/values/themes.xml @@ -17,7 +17,11 @@ + + + + + + From 8dc0d842739eb6e2caf5b92dabac8c7e8b95ef40 Mon Sep 17 00:00:00 2001 From: dkhawk <107309+dkhawk@users.noreply.github.com> Date: Thu, 19 Mar 2026 14:15:21 -0600 Subject: [PATCH 05/36] Sort snippet items alphabetically by title in Registry --- .../src/main/java/com/example/snippets/java/SnippetRegistry.java | 1 + .../src/main/java/com/example/snippets/kotlin/SnippetRegistry.kt | 1 + 2 files changed, 2 insertions(+) diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/SnippetRegistry.java b/snippets/java-app/src/main/java/com/example/snippets/java/SnippetRegistry.java index 0df3653d..efed354f 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/SnippetRegistry.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/SnippetRegistry.java @@ -77,6 +77,7 @@ public static List getSnippetGroups() { } if (!items.isEmpty()) { + items.sort((a, b) -> a.getTitle().compareTo(b.getTitle())); groups.add(new SnippetGroupInfo( groupAnnotation.title(), groupAnnotation.description(), diff --git a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/SnippetRegistry.kt b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/SnippetRegistry.kt index c542bc17..51f15262 100644 --- a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/SnippetRegistry.kt +++ b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/SnippetRegistry.kt @@ -92,6 +92,7 @@ object SnippetRegistry { } if (items.isNotEmpty()) { + items.sortBy { it.title } groups.add(SnippetGroupInfo( title = groupAnnotation.title, description = groupAnnotation.description, From 22e72e2676966a20bbc8c8ad50e463cc19a27079 Mon Sep 17 00:00:00 2001 From: dkhawk <107309+dkhawk@users.noreply.github.com> Date: Thu, 19 Mar 2026 14:41:18 -0600 Subject: [PATCH 06/36] Index snippet titles and add navigation controls --- .../src/main/res/drawable/arrow_back_24px.xml | 9 ++++ .../main/res/drawable/arrow_forward_24px.xml | 9 ++++ .../src/main/res/layout/activity_map.xml | 28 +++++++++++++ .../example/snippets/java/MapActivity.java | 37 ++++++++++++++++- .../snippets/java/SnippetItemInfo.java | 8 +++- .../snippets/java/SnippetRegistry.java | 1 + .../java/snippets/CameraControlSnippets.java | 18 ++++---- .../java/snippets/MapInitSnippets.java | 4 +- .../java/snippets/MarkerSnippets.java | 8 ++-- .../snippets/java/snippets/ModelSnippets.java | 4 +- .../snippets/java/snippets/PlaceSnippets.java | 2 +- .../java/snippets/PolygonSnippets.java | 4 +- .../java/snippets/PolylineSnippets.java | 4 +- .../java/snippets/PopoverSnippets.java | 4 +- .../example/snippets/kotlin/MapActivity.kt | 41 +++++++++++++++++-- .../snippets/kotlin/SnippetRegistry.kt | 2 + .../kotlin/snippets/CameraControlSnippets.kt | 31 +++++++------- .../kotlin/snippets/MapInitSnippets.kt | 2 +- .../kotlin/snippets/MarkerSnippets.kt | 8 ++-- .../snippets/kotlin/snippets/ModelSnippets.kt | 4 +- .../snippets/kotlin/snippets/PlaceSnippets.kt | 2 +- .../kotlin/snippets/PolygonSnippets.kt | 4 +- .../kotlin/snippets/PolylineSnippets.kt | 4 +- .../kotlin/snippets/PopoverSnippets.kt | 4 +- 24 files changed, 184 insertions(+), 58 deletions(-) create mode 100644 snippets/common/src/main/res/drawable/arrow_back_24px.xml create mode 100644 snippets/common/src/main/res/drawable/arrow_forward_24px.xml diff --git a/snippets/common/src/main/res/drawable/arrow_back_24px.xml b/snippets/common/src/main/res/drawable/arrow_back_24px.xml new file mode 100644 index 00000000..1073c4f4 --- /dev/null +++ b/snippets/common/src/main/res/drawable/arrow_back_24px.xml @@ -0,0 +1,9 @@ + + + diff --git a/snippets/common/src/main/res/drawable/arrow_forward_24px.xml b/snippets/common/src/main/res/drawable/arrow_forward_24px.xml new file mode 100644 index 00000000..686f693e --- /dev/null +++ b/snippets/common/src/main/res/drawable/arrow_forward_24px.xml @@ -0,0 +1,9 @@ + + + diff --git a/snippets/common/src/main/res/layout/activity_map.xml b/snippets/common/src/main/res/layout/activity_map.xml index 109d0dac..2dc8b7ce 100644 --- a/snippets/common/src/main/res/layout/activity_map.xml +++ b/snippets/common/src/main/res/layout/activity_map.xml @@ -25,6 +25,34 @@ android:layout_width="match_parent" android:layout_height="match_parent" /> + + + + + + + + + + runSnippet()); snippetTitle = getIntent().getStringExtra(EXTRA_SNIPPET_TITLE); + final java.util.List snippetList = new java.util.ArrayList<>(SnippetRegistry.snippets.values()); + for (int i = 0; i < snippetList.size(); i++) { + if (snippetList.get(i).getTitle().equals(snippetTitle)) { + currentIndex = i; + break; + } + } + + findViewById(R.id.previous_button).setOnClickListener(v -> { + if (snippetList.isEmpty()) return; + if (currentIndex > 0) { + currentIndex--; + } else { + currentIndex = snippetList.size() - 1; + } + snippetTitle = snippetList.get(currentIndex).getTitle(); + runSnippet(); + }); + + findViewById(R.id.next_button).setOnClickListener(v -> { + if (snippetList.isEmpty()) return; + if (currentIndex < snippetList.size() - 1) { + currentIndex++; + } else { + currentIndex = 0; + } + snippetTitle = snippetList.get(currentIndex).getTitle(); + runSnippet(); + }); + map3DView.getMap3DViewAsync(new OnMap3DViewReadyCallback() { @Override public void onMap3DViewReady(@NonNull GoogleMap3D map) { @@ -99,7 +130,11 @@ protected void runSnippet() { new android.os.Handler(android.os.Looper.getMainLooper()).postDelayed(() -> { try { snippet.getAction().execute(MapActivity.this, map); - runOnUiThread(() -> Toast.makeText(MapActivity.this, "Running: " + snippetTitle, Toast.LENGTH_SHORT).show()); + runOnUiThread(() -> Toast.makeText( + MapActivity.this, + snippet.getGroupTitle() + ": " + snippet.getTitle() + ".\n" + snippet.getDescription(), + Toast.LENGTH_LONG + ).show()); } catch (Exception e) { runOnUiThread(() -> Toast.makeText(MapActivity.this, "Error: " + e.getMessage(), Toast.LENGTH_LONG).show()); e.printStackTrace(); diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/SnippetItemInfo.java b/snippets/java-app/src/main/java/com/example/snippets/java/SnippetItemInfo.java index 895dfe0e..72dd238d 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/SnippetItemInfo.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/SnippetItemInfo.java @@ -6,11 +6,13 @@ public class SnippetItemInfo { private final String title; private final String description; + private final String groupTitle; private final SnippetAction action; - public SnippetItemInfo(String title, String description, SnippetAction action) { + public SnippetItemInfo(String title, String description, String groupTitle, SnippetAction action) { this.title = title; this.description = description; + this.groupTitle = groupTitle; this.action = action; } @@ -22,6 +24,10 @@ public String getDescription() { return description; } + public String getGroupTitle() { + return groupTitle; + } + public SnippetAction getAction() { return action; } diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/SnippetRegistry.java b/snippets/java-app/src/main/java/com/example/snippets/java/SnippetRegistry.java index efed354f..921b9081 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/SnippetRegistry.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/SnippetRegistry.java @@ -61,6 +61,7 @@ public static List getSnippetGroups() { items.add(new SnippetItemInfo( itemAnnotation.title(), itemAnnotation.description(), + groupAnnotation.title(), (context, map) -> { try { Object instance = createInstance(clazz, context, map); diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java index 5603514b..c251b7d9 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java @@ -48,7 +48,7 @@ public CameraControlSnippets(GoogleMap3D map) { * a duration. */ @SnippetItem( - title = "Fly To", + title = "1. Fly To", description = "Animates the camera to a specific position with a tilt and heading over 5 seconds." ) public void flyCameraToPosition() { @@ -68,7 +68,7 @@ public void flyCameraToPosition() { */ @SuppressWarnings("unused") @SnippetItem( - title = "Fly Around", + title = "2. Fly Around", description = "Rotates the camera 360 degrees around a specific location over 10 seconds." ) public void flyCameraAroundLocation() { @@ -99,16 +99,16 @@ public void flyCameraAroundLocation() { */ @SuppressWarnings("unused") @SnippetItem( - title = "Stop Animation", + title = "3. Stop Animation", description = "Stops any currently running camera animation immediately." ) public void stopAnimation() { // [START maps_android_3d_camera_stop_java] - LatLngAltitude center = new LatLngAltitude(38.743829, -109.499512, 1460.37); - Camera targetCamera = new Camera(center, 338.52, 76.16, 0.0, 191.71); + LatLngAltitude center = new LatLngAltitude(38.743502, -109.499374, 1467.0); + Camera targetCamera = new Camera(center, 349.6, 58.1, 0.0, 138.2); - // 1. Start a slow flyTo animation so we have something to stop - map.flyCameraTo(new FlyToOptions(targetCamera, 10000L)); + // 1. Start a perpetual flyAround animation so we have something to stop + map.flyCameraAround(new FlyAroundOptions(targetCamera, 30000L, 10.0)); // 2. Schedule the stop command after 2 seconds new Handler(Looper.getMainLooper()).postDelayed(map::stopCameraAnimation, 2000); @@ -121,7 +121,7 @@ public void stopAnimation() { */ @SuppressWarnings("unused") @SnippetItem( - title = "Listen Camera Events", + title = "4. Listen Camera Events", description = "Demonstrates camera change listening" ) public void listenToCameraEvents() { @@ -152,7 +152,7 @@ public void listenToCameraEvents() { */ @SuppressWarnings("unused") @SnippetItem( - title = "Listen Steady State", + title = "5. Listen Steady State", description = "Logs to the console when the map finishes rendering or enters a steady state." ) public void listenToMapSteadyState() { diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java index 0a28d8ac..0835e8ad 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java @@ -36,7 +36,7 @@ public class MapInitSnippets { @SnippetItem( - title = "Basic Map3D Initialization", + title = "1. Basic Map3D Initialization", description = "Initializes a standard 3D Map View and sets an initial camera angle." ) @SuppressWarnings("unused") @@ -66,7 +66,7 @@ public void onError(@NonNull Exception e) { * Sets up listeners for map readiness and steady state. */ @SuppressWarnings("unused") - @SnippetItem(title = "Listen Map Events", description = "Logs map events to the console, such as clicks or idle status.") + @SnippetItem(title = "2. Listen Map Events", description = "Logs map events to the console, such as clicks or idle status.") public void setupMapListeners(Context context, GoogleMap3D map) { // [START maps_android_3d_init_listeners_java] Handler mainHandler = new Handler(Looper.getMainLooper()); diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java index 00ec109f..f9705b12 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java @@ -52,7 +52,7 @@ public MarkerSnippets(GoogleMap3D map) { */ @SuppressWarnings("unused") @SnippetItem( - title = "Basic", + title = "1. Basic", description = "Adds a standard marker at Lat: 37.422, Lng: -122.084, Alt: 10m." ) public void addBasicMarker() { @@ -81,7 +81,7 @@ public void addBasicMarker() { */ @SuppressWarnings("unused") @SnippetItem( - title = "Advanced", + title = "2. Advanced", description = "Adds a 'Priority Marker' at Lat: 37.422, Lng: -122.084, Alt: 10m (Relative to Ground) that is extruded and collides with other markers." ) public void addAdvancedMarker() { @@ -113,7 +113,7 @@ public void addAdvancedMarker() { */ @SuppressWarnings("unused") @SnippetItem( - title = "Click", + title = "3. Click", description = "Adds a marker at Lat: 37.42, Lng: -122.08 that logs a message when clicked." ) public void handleMarkerClick() { @@ -150,7 +150,7 @@ public void onMarkerClick() { */ @SuppressWarnings("unused") @SnippetItem( - title = "Custom Icon", + title = "4. Custom Icon", description = "Adds a marker with a custom icon using PinConfiguration and Glyph styling." ) public void addCustomMarker(Context context) { diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java index 1d911bd0..6c0f4182 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java @@ -43,7 +43,7 @@ public ModelSnippets(GoogleMap3D map) { */ @SuppressWarnings("unused") @SnippetItem( - title = "Basic", + title = "1. Basic", description = "Loads a GLB model from a URL and places it clamped to the ground." ) public void addBasicModel() { @@ -64,7 +64,7 @@ public void addBasicModel() { */ @SuppressWarnings("unused") @SnippetItem( - title = "Advanced", + title = "2. Advanced", description = "Loads a GLB model with advanced configuration (scale, orientation) from assets." ) public void addAdvancedModel() { diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PlaceSnippets.java b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PlaceSnippets.java index 5357be04..3dde0d54 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PlaceSnippets.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PlaceSnippets.java @@ -41,7 +41,7 @@ public PlaceSnippets(GoogleMap3D map) { */ @SuppressWarnings("unused") @SnippetItem( - title = "Listen Clicks", + title = "1. Listen Clicks", description = "Sets up a listener that logs the Place ID when a user clicks on a 3D building or POI." ) public void listenToPlaceClicks() { diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java index aab5cfb3..301cf16b 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java @@ -44,7 +44,7 @@ public PolygonSnippets(GoogleMap3D map) { */ @SuppressWarnings("unused") @SnippetItem( - title = "Basic", + title = "1. Basic", description = "Draws a red polygon with a blue stroke around a small area near Lat: 37.42, Lng: -122.08." ) public void addBasicPolygon() { @@ -73,7 +73,7 @@ public void addBasicPolygon() { */ @SuppressWarnings("unused") @SnippetItem( - title = "Extruded", + title = "2. Extruded", description = "Draws a semi-transparent red extruded polygon (height 50m) around a small area near Lat: 37.42, Lng: -122.08." ) public void addExtrudedPolygon() { diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java index bc8f6160..49a56546 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java @@ -44,7 +44,7 @@ public PolylineSnippets(GoogleMap3D map) { */ @SuppressWarnings("unused") @SnippetItem( - title = "Basic", + title = "1. Basic", description = "Draws a thick red polyline connecting three points near Lat: 37.42, Lng: -122.08." ) public void addBasicPolyline() { @@ -70,7 +70,7 @@ public void addBasicPolyline() { */ @SuppressWarnings("unused") @SnippetItem( - title = "Styled", + title = "2. Styled", description = "Draws a magenta polyline with a green outline, extruded and following the ground curvature (geodesic), connecting two points." ) public void addStyledPolyline() { diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java index 469c0d9b..969cc1f6 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java @@ -49,7 +49,7 @@ public PopoverSnippets(Context context, GoogleMap3D map) { */ @SuppressWarnings("unused") @SnippetItem( - title = "Marker Anchor", + title = "1. Marker Anchor", description = "Adds a 'Hello Popover!' text bubble anchored to a marker at Lat: 37.422, Lng: -122.084." ) public void addPopoverToMarker() { @@ -85,7 +85,7 @@ public void addPopoverToMarker() { */ @SuppressWarnings("unused") @SnippetItem( - title = "Configured", + title = "2. Configured", description = "Adds an 'Info' popover anchored to a marker at [0,0] with auto-close enabled and auto-pan disabled." ) public void addConfiguredPopover() { diff --git a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt index 669fddec..b258cd46 100644 --- a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt +++ b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt @@ -47,6 +47,8 @@ class MapActivity : AppCompatActivity() { map3DView.onCreate(savedInstanceState) val snippetTitle = intent.getStringExtra(EXTRA_SNIPPET_TITLE) + val snippetList = SnippetRegistry.getSnippetGroups().flatMap { it.items } + var currentIndex = snippetList.indexOfFirst { it.title == snippetTitle } val printPoseBtn = findViewById(R.id.snapshot_button).apply { setOnClickListener { @@ -82,7 +84,34 @@ class MapActivity : AppCompatActivity() { val replayBtn = findViewById(R.id.reset_view_button).apply { setOnClickListener { - runSnippet(snippetTitle) + if (currentIndex >= 0) { + runSnippet(snippetList[currentIndex].title) + } + } + } + + // Previous and Next Nav buttons + findViewById(R.id.previous_button).apply { + setOnClickListener { + if (snippetList.isEmpty()) return@setOnClickListener + if (currentIndex > 0) { + currentIndex-- + } else { + currentIndex = snippetList.size - 1 + } + runSnippet(snippetList[currentIndex].title) + } + } + + findViewById(R.id.next_button).apply { + setOnClickListener { + if (snippetList.isEmpty()) return@setOnClickListener + if (currentIndex < snippetList.size - 1) { + currentIndex++ + } else { + currentIndex = 0 + } + runSnippet(snippetList[currentIndex].title) } } @@ -96,7 +125,9 @@ class MapActivity : AppCompatActivity() { } // Run snippet after initializing, resetting to global view first - runSnippet(snippetTitle) + if (currentIndex >= 0) { + runSnippet(snippetList[currentIndex].title) + } } override fun onError(error: java.lang.Exception) { @@ -168,7 +199,11 @@ class MapActivity : AppCompatActivity() { // 3. Play snippet try { snippet.action(this@MapActivity, googleMap3D, lifecycleScope) - Toast.makeText(this@MapActivity, "Running: $snippetTitle", Toast.LENGTH_SHORT).show() + Toast.makeText( + this@MapActivity, + "${snippet.groupTitle}: ${snippet.title}.\n${snippet.description}", + Toast.LENGTH_LONG + ).show() } catch (e: Exception) { Log.e("MapActivity", "Error running snippet: ${e.message}") } diff --git a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/SnippetRegistry.kt b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/SnippetRegistry.kt index 51f15262..6791911d 100644 --- a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/SnippetRegistry.kt +++ b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/SnippetRegistry.kt @@ -40,6 +40,7 @@ data class SnippetGroupInfo( data class SnippetItemInfo( val title: String, val description: String, + val groupTitle: String, val action: (Context, GoogleMap3D, kotlinx.coroutines.CoroutineScope) -> Unit ) @@ -72,6 +73,7 @@ object SnippetRegistry { items.add(SnippetItemInfo( title = itemAnnotation.title, description = itemAnnotation.description, + groupTitle = groupAnnotation.title, action = { context, map, scope -> try { val instance = createInstance(clazz, context, map, scope) diff --git a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt index 23cd19e6..781243ba 100644 --- a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt +++ b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt @@ -44,7 +44,7 @@ class CameraControlSnippets( */ @Suppress("unused") @SnippetItem( - title = "Fly To", + title = "1. Fly To", description = "Animates the camera to a specific position with a tilt and heading over 5 seconds." ) fun flyCameraToPosition() { @@ -75,7 +75,7 @@ class CameraControlSnippets( */ @Suppress("unused") @SnippetItem( - title = "Fly Around", + title = "2. Fly Around", description = "Rotates the camera 360 degrees around a specific location over 10 seconds." ) fun flyCameraAroundLocation() { @@ -119,7 +119,7 @@ class CameraControlSnippets( */ @Suppress("unused") @SnippetItem( - title = "Stop Animation", + title = "3. Stop Animation", description = "Stops any currently running camera animation immediately." ) fun stopAnimation() { @@ -127,13 +127,13 @@ class CameraControlSnippets( lifecycleScope.launch { val targetCamera = camera { center = latLngAltitude { - latitude = 38.743829 - longitude = -109.499512 - altitude = 1460.37 + latitude = 38.743502 + longitude = -109.499374 + altitude = 1467.0 } - tilt = 76.16 - heading = 338.52 - range = 191.71 + tilt = 58.1 + heading = 349.6 + range = 138.2 roll = 0.0 } @@ -149,10 +149,11 @@ class CameraControlSnippets( // [END_EXCLUDE] - // 1. Start a slow flyTo animation so we have something to stop - map.flyCameraTo(flyToOptions { - endCamera = targetCamera - durationInMillis = 10_000 // Slow flight so we can stop it + // 1. Start a perpetual flyAround animation so we have something to stop + map.flyCameraAround(flyAroundOptions { + center = targetCamera + rounds = 10.0 + durationInMillis = 30_000 }) lifecycleScope.launch { @@ -169,7 +170,7 @@ class CameraControlSnippets( */ @Suppress("unused") @SnippetItem( - title = "Listen Events", + title = "4. Listen Camera Events", description = "Logs camera change events to the console, printing the center coordinates as the camera moves." ) fun listenToCameraEvents() { @@ -200,7 +201,7 @@ class CameraControlSnippets( */ @Suppress("unused") @SnippetItem( - title = "Listen Steady State", + title = "5. Listen Steady State", description = "Logs to the console when the map finishes rendering or enters a steady state." ) fun listenToMapSteadyState() { diff --git a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt index 64f9ebbe..17c31102 100644 --- a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt +++ b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt @@ -78,7 +78,7 @@ class MapInitSnippets { */ @Suppress("unused") @SnippetItem( - title = "Listen Events", + title = "1. Listen Events", description = "Initializes a 3D map and logs events when the scene is ready (100% loaded) and steady (camera stopped moving)." ) fun setupMapListeners(context: Context, map: GoogleMap3D) { diff --git a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt index 90b91e66..b8d3d75d 100644 --- a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt +++ b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt @@ -43,7 +43,7 @@ class MarkerSnippets(private val map: GoogleMap3D) { */ @Suppress("unused") @SnippetItem( - title = "Basic", + title = "1. Basic", description = "Adds a standard marker at Lat: 37.422, Lng: -122.084, Alt: 10m." ) fun addBasicMarker() { @@ -84,7 +84,7 @@ class MarkerSnippets(private val map: GoogleMap3D) { */ @Suppress("unused") @SnippetItem( - title = "Advanced", + title = "2. Advanced", description = "Adds a 'Priority Marker' at Lat: 37.422, Lng: -122.084, Alt: 10m (Relative to Ground) that is extruded and collides with other markers." ) fun addAdvancedMarker() { @@ -126,7 +126,7 @@ class MarkerSnippets(private val map: GoogleMap3D) { */ @Suppress("unused") @SnippetItem( - title = "Click", + title = "3. Click", description = "Adds a marker at Lat: 37.42, Lng: -122.08 that logs a message when clicked." ) fun handleMarkerClick() { @@ -158,7 +158,7 @@ class MarkerSnippets(private val map: GoogleMap3D) { */ @Suppress("unused") @SnippetItem( - title = "Custom Icon", + title = "4. Custom Icon", description = "Adds a marker with a custom icon using PinConfiguration and Glyph styling." ) fun addCustomMarker(context: Context) { diff --git a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt index ebedec6e..c61fd1f7 100644 --- a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt +++ b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt @@ -36,7 +36,7 @@ class ModelSnippets(private val map: GoogleMap3D) { */ @Suppress("unused") @SnippetItem( - title = "Basic", + title = "1. Basic", description = "Loads a GLB model from a URL and places it clamped to the ground." ) fun addBasicModel() { @@ -62,7 +62,7 @@ class ModelSnippets(private val map: GoogleMap3D) { */ @Suppress("unused") @SnippetItem( - title = "Advanced", + title = "2. Advanced", description = "Loads a GLB model with advanced configuration (scale, orientation) from assets." ) fun addAdvancedModel() { diff --git a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt index ecd53b5d..360fd8dd 100644 --- a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt +++ b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt @@ -34,7 +34,7 @@ class PlaceSnippets(private val map: GoogleMap3D) { */ @Suppress("unused") @SnippetItem( - title = "Listen Clicks", + title = "1. Listen Clicks", description = "Sets up a listener that logs the Place ID when a user clicks on a 3D building or POI." ) fun listenToPlaceClicks() { diff --git a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt index eddd9878..a5dd0508 100644 --- a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt +++ b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt @@ -35,7 +35,7 @@ class PolygonSnippets(private val map: GoogleMap3D) { */ @Suppress("unused") @SnippetItem( - title = "Basic", + title = "1. Basic", description = "Draws a red polygon with a blue stroke around a small area near Lat: 37.42, Lng: -122.08." ) fun addBasicPolygon() { @@ -65,7 +65,7 @@ class PolygonSnippets(private val map: GoogleMap3D) { */ @Suppress("unused") @SnippetItem( - title = "Extruded", + title = "2. Extruded", description = "Draws a semi-transparent red extruded polygon (height 50m) around a small area near Lat: 37.42, Lng: -122.08." ) fun addExtrudedPolygon() { diff --git a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt index 8501df78..e1a33f30 100644 --- a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt +++ b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt @@ -35,7 +35,7 @@ class PolylineSnippets(private val map: GoogleMap3D) { */ @Suppress("unused") @SnippetItem( - title = "Basic", + title = "1. Basic", description = "Draws a thick red polyline connecting three points near Lat: 37.42, Lng: -122.08." ) fun addBasicPolyline() { @@ -62,7 +62,7 @@ class PolylineSnippets(private val map: GoogleMap3D) { */ @Suppress("unused") @SnippetItem( - title = "Styled", + title = "2. Styled", description = "Draws a magenta polyline with a green outline, extruded and following the ground curvature (geodesic), connecting two points." ) fun addStyledPolyline() { diff --git a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt index c2679bfa..fa5d3b79 100644 --- a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt +++ b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt @@ -39,7 +39,7 @@ class PopoverSnippets(private val context: Context, private val map: GoogleMap3D */ @Suppress("unused") @SnippetItem( - title = "Marker Anchor", + title = "1. Marker Anchor", description = "Adds a 'Hello Popover!' text bubble anchored to a marker at Lat: 37.422, Lng: -122.084." ) fun addPopoverToMarker() { @@ -76,7 +76,7 @@ class PopoverSnippets(private val context: Context, private val map: GoogleMap3D */ @Suppress("unused") @SnippetItem( - title = "Configured", + title = "2. Configured", description = "Adds an 'Info' popover anchored to a marker at [0,0] with auto-close enabled and auto-pan disabled." ) fun addConfiguredPopover() { From 3e5e39fc810f93bc3e15f75fdf51ec124ac05cc0 Mon Sep 17 00:00:00 2001 From: dkhawk <107309+dkhawk@users.noreply.github.com> Date: Thu, 19 Mar 2026 16:14:09 -0600 Subject: [PATCH 07/36] feat(snippets): Implement automatic cleanup and update snippet signatures - Added TrackedMap3D decorator to intercept map element additions. - Updated SnippetRegistry to support clearable items. - Added explicit cleanup invocation in MapActivity before execution. - Updated snippet constructors to take Context for UI operations. - Resolved type inference for clicks and steady listener events correctly. - Simplified descriptions by removing coordinate mentions. --- .../src/main/res/layout/activity_map.xml | 2 + .../snippets/java/JavaSnippetsActivity.java | 1 + .../example/snippets/java/MapActivity.java | 69 +++++++++++------ .../snippets/java/SnippetRegistry.java | 26 +++++-- .../example/snippets/java/TrackedMap3D.java | 76 +++++++++++++++++++ .../java/snippets/CameraControlSnippets.java | 5 +- .../java/snippets/MarkerSnippets.java | 21 +++-- .../snippets/java/snippets/ModelSnippets.java | 5 +- .../snippets/java/snippets/PlaceSnippets.java | 5 +- .../java/snippets/PolygonSnippets.java | 9 ++- .../java/snippets/PolylineSnippets.java | 7 +- .../java/snippets/PopoverSnippets.java | 9 ++- .../snippets/kotlin/KotlinSnippetsActivity.kt | 1 + .../example/snippets/kotlin/MapActivity.kt | 27 ++++--- .../snippets/kotlin/SnippetRegistry.kt | 33 ++++++-- .../example/snippets/kotlin/TrackedMap3D.kt | 64 ++++++++++++++++ .../kotlin/snippets/CameraControlSnippets.kt | 11 ++- .../kotlin/snippets/MapInitSnippets.kt | 7 ++ .../kotlin/snippets/MarkerSnippets.kt | 47 +++++++----- .../snippets/kotlin/snippets/ModelSnippets.kt | 8 +- .../snippets/kotlin/snippets/PlaceSnippets.kt | 8 +- .../kotlin/snippets/PolygonSnippets.kt | 12 +-- .../kotlin/snippets/PolylineSnippets.kt | 10 +-- .../kotlin/snippets/PopoverSnippets.kt | 18 ++--- .../snippets/kotlin/utils/MapExtensions.kt | 5 ++ 25 files changed, 362 insertions(+), 124 deletions(-) create mode 100644 snippets/java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java create mode 100644 snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt diff --git a/snippets/common/src/main/res/layout/activity_map.xml b/snippets/common/src/main/res/layout/activity_map.xml index 2dc8b7ce..e463be6f 100644 --- a/snippets/common/src/main/res/layout/activity_map.xml +++ b/snippets/common/src/main/res/layout/activity_map.xml @@ -25,6 +25,8 @@ android:layout_width="match_parent" android:layout_height="match_parent" /> + + { Intent intent = new Intent(this, MapActivity.class); + intent.putExtra("group_title", item.getGroupTitle()); intent.putExtra(MapActivity.EXTRA_SNIPPET_TITLE, item.getTitle()); startActivity(intent); }); diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/MapActivity.java b/snippets/java-app/src/main/java/com/example/snippets/java/MapActivity.java index 624489e1..5c5187ce 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/MapActivity.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/MapActivity.java @@ -38,6 +38,7 @@ public class MapActivity extends AppCompatActivity { private boolean triggered = false; private String snippetTitle; + private String groupTitle; private GoogleMap3D map; private int currentIndex = -1; @@ -73,10 +74,15 @@ protected void onCreate(Bundle savedInstanceState) { findViewById(R.id.reset_view_button).setOnClickListener(v -> runSnippet()); + groupTitle = getIntent().getStringExtra("group_title"); snippetTitle = getIntent().getStringExtra(EXTRA_SNIPPET_TITLE); - final java.util.List snippetList = new java.util.ArrayList<>(SnippetRegistry.snippets.values()); + final java.util.List snippetList = new java.util.ArrayList<>(); + for (SnippetGroupInfo group : SnippetRegistry.getSnippetGroups()) { + snippetList.addAll(group.getItems()); + } for (int i = 0; i < snippetList.size(); i++) { - if (snippetList.get(i).getTitle().equals(snippetTitle)) { + SnippetItemInfo item = snippetList.get(i); + if (item.getTitle().equals(snippetTitle) && (groupTitle == null || item.getGroupTitle().equals(groupTitle))) { currentIndex = i; break; } @@ -89,7 +95,9 @@ protected void onCreate(Bundle savedInstanceState) { } else { currentIndex = snippetList.size() - 1; } - snippetTitle = snippetList.get(currentIndex).getTitle(); + SnippetItemInfo item = snippetList.get(currentIndex); + groupTitle = item.getGroupTitle(); + snippetTitle = item.getTitle(); runSnippet(); }); @@ -100,7 +108,9 @@ protected void onCreate(Bundle savedInstanceState) { } else { currentIndex = 0; } - snippetTitle = snippetList.get(currentIndex).getTitle(); + SnippetItemInfo item = snippetList.get(currentIndex); + groupTitle = item.getGroupTitle(); + snippetTitle = item.getTitle(); runSnippet(); }); @@ -123,25 +133,38 @@ public void onError(@NonNull Exception error) { protected void runSnippet() { if (snippetTitle != null) { - // Use SnippetItemInfo from updated Registry - SnippetItemInfo snippet = SnippetRegistry.snippets.get(snippetTitle); - if (snippet != null) { - // 3 second delay - new android.os.Handler(android.os.Looper.getMainLooper()).postDelayed(() -> { - try { - snippet.getAction().execute(MapActivity.this, map); - runOnUiThread(() -> Toast.makeText( - MapActivity.this, - snippet.getGroupTitle() + ": " + snippet.getTitle() + ".\n" + snippet.getDescription(), - Toast.LENGTH_LONG - ).show()); - } catch (Exception e) { - runOnUiThread(() -> Toast.makeText(MapActivity.this, "Error: " + e.getMessage(), Toast.LENGTH_LONG).show()); - e.printStackTrace(); - } - }, 3000); - } else { - runOnUiThread(() -> Toast.makeText(MapActivity.this, "Snippet not found: " + snippetTitle, Toast.LENGTH_LONG).show()); + String key = groupTitle != null ? groupTitle + " - " + snippetTitle : snippetTitle; + SnippetItemInfo snippet = SnippetRegistry.snippets.get(key); + if (snippet == null) { + // Fallback linear scan + for (SnippetGroupInfo g : SnippetRegistry.getSnippetGroups()) { + for (SnippetItemInfo item : g.getItems()) { + if (item.getTitle().equals(snippetTitle)) { + snippet = item; + break; + } + } + } + } + final SnippetItemInfo finalSnippet = snippet; + if (finalSnippet != null) { + SnippetRegistry.clearTrackedItems(); + // 3 second delay + new android.os.Handler(android.os.Looper.getMainLooper()).postDelayed(() -> { + try { + finalSnippet.getAction().execute(MapActivity.this, map); + runOnUiThread(() -> Toast.makeText( + MapActivity.this, + finalSnippet.getGroupTitle() + ": " + finalSnippet.getTitle() + ".\n" + finalSnippet.getDescription(), + Toast.LENGTH_LONG + ).show()); + } catch (Exception e) { + runOnUiThread(() -> Toast.makeText(MapActivity.this, "Error: " + e.getMessage(), Toast.LENGTH_LONG).show()); + e.printStackTrace(); + } + }, 3000); + } else { + runOnUiThread(() -> Toast.makeText(MapActivity.this, "Snippet not found: " + snippetTitle, Toast.LENGTH_LONG).show()); } } } diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/SnippetRegistry.java b/snippets/java-app/src/main/java/com/example/snippets/java/SnippetRegistry.java index 921b9081..4198022f 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/SnippetRegistry.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/SnippetRegistry.java @@ -31,6 +31,21 @@ public class SnippetRegistry { + private static final java.util.List addedElements = new java.util.ArrayList<>(); + + public static void clearTrackedItems() { + for (Object item : addedElements) { + try { + if (item instanceof com.google.android.gms.maps3d.model.Marker) ((com.google.android.gms.maps3d.model.Marker) item).remove(); + else if (item instanceof com.google.android.gms.maps3d.model.Polyline) ((com.google.android.gms.maps3d.model.Polyline) item).remove(); + else if (item instanceof com.google.android.gms.maps3d.model.Polygon) ((com.google.android.gms.maps3d.model.Polygon) item).remove(); + else if (item instanceof com.google.android.gms.maps3d.model.Model) ((com.google.android.gms.maps3d.model.Model) item).remove(); + else if (item instanceof com.google.android.gms.maps3d.Popover) ((com.google.android.gms.maps3d.Popover) item).remove(); + } catch (Exception e) { /* ignore */ } + } + addedElements.clear(); + } + private static final List> snippetClasses = Arrays.asList( MapInitSnippets.class, CameraControlSnippets.class, @@ -64,7 +79,8 @@ public static List getSnippetGroups() { groupAnnotation.title(), (context, map) -> { try { - Object instance = createInstance(clazz, context, map); + TrackedMap3D trackedMap = new TrackedMap3D(map, addedElements); + Object instance = createInstance(clazz, context, trackedMap); if (method.getParameterCount() == 0) { method.invoke(instance); } else if (method.getParameterCount() == 1 && method.getParameterTypes()[0] == Context.class) { @@ -89,12 +105,12 @@ public static List getSnippetGroups() { return groups; } - private static Object createInstance(Class clazz, Context context, GoogleMap3D map) throws Exception { + private static Object createInstance(Class clazz, Context context, TrackedMap3D map) throws Exception { try { - return clazz.getConstructor(Context.class, GoogleMap3D.class).newInstance(context, map); + return clazz.getConstructor(Context.class, TrackedMap3D.class).newInstance(context, map); } catch (NoSuchMethodException e1) { try { - return clazz.getConstructor(GoogleMap3D.class).newInstance(map); + return clazz.getConstructor(TrackedMap3D.class).newInstance(map); } catch (NoSuchMethodException e2) { return clazz.getConstructor().newInstance(); } @@ -107,7 +123,7 @@ private static Object createInstance(Class clazz, Context context, GoogleMap3 static { for (SnippetGroupInfo group : getSnippetGroups()) { for (SnippetItemInfo item : group.getItems()) { - snippets.put(item.getTitle(), item); + snippets.put(group.getTitle() + " - " + item.getTitle(), item); } } } diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java b/snippets/java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java new file mode 100644 index 00000000..9fa82d83 --- /dev/null +++ b/snippets/java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java @@ -0,0 +1,76 @@ +package com.example.snippets.java; + +import com.google.android.gms.maps3d.GoogleMap3D; +import com.google.android.gms.maps3d.OnCameraChangedListener; +import com.google.android.gms.maps3d.OnMap3DClickListener; +import com.google.android.gms.maps3d.OnMapReadyListener; +import com.google.android.gms.maps3d.OnMapSteadyListener; +import com.google.android.gms.maps3d.OnCameraAnimationEndListener; +import com.google.android.gms.maps3d.Popover; +import com.google.android.gms.maps3d.model.Marker; +import com.google.android.gms.maps3d.model.MarkerOptions; +import com.google.android.gms.maps3d.model.Polyline; +import com.google.android.gms.maps3d.model.PolylineOptions; +import com.google.android.gms.maps3d.model.Polygon; +import com.google.android.gms.maps3d.model.PolygonOptions; +import com.google.android.gms.maps3d.model.Model; +import com.google.android.gms.maps3d.model.ModelOptions; +import com.google.android.gms.maps3d.model.PopoverOptions; + +import java.util.List; + +/** + * Decorator wrapper around GoogleMap3D to track elements added during a snippet session. + */ +public class TrackedMap3D { + + private final GoogleMap3D delegate; + private final List items; + + public TrackedMap3D(GoogleMap3D delegate, List items) { + this.delegate = delegate; + this.items = items; + } + + public Marker addMarker(MarkerOptions options) { + Marker marker = delegate.addMarker(options); + if (marker != null) items.add(marker); + return marker; + } + + public Polyline addPolyline(PolylineOptions options) { + Polyline polyline = delegate.addPolyline(options); + if (polyline != null) items.add(polyline); + return polyline; + } + + public Polygon addPolygon(PolygonOptions options) { + Polygon polygon = delegate.addPolygon(options); + if (polygon != null) items.add(polygon); + return polygon; + } + + public Model addModel(ModelOptions options) { + Model model = delegate.addModel(options); + if (model != null) items.add(model); + return model; + } + + public Popover addPopover(PopoverOptions options) { + Popover popover = delegate.addPopover(options); + if (popover != null) items.add(popover); + return popover; + } + + public void setCamera(com.google.android.gms.maps3d.model.Camera camera) { delegate.setCamera(camera); } + public void setCameraChangedListener(OnCameraChangedListener listener) { delegate.setCameraChangedListener(listener); } + public void setMap3DClickListener(OnMap3DClickListener listener) { delegate.setMap3DClickListener(listener); } + public void flyCameraAround(com.google.android.gms.maps3d.model.FlyAroundOptions options) { delegate.flyCameraAround(options); } + + // Pass-through standard map calls if any are invoked inside snippets + public com.google.android.gms.maps3d.model.Camera getCamera() { return delegate.getCamera(); } + public void stopCameraAnimation() { delegate.stopCameraAnimation(); } + public void flyCameraTo(com.google.android.gms.maps3d.model.FlyToOptions options) { delegate.flyCameraTo(options); } + public void setOnMapReadyListener(OnMapReadyListener listener) { delegate.setOnMapReadyListener(listener); } + public void setOnMapSteadyListener(OnMapSteadyListener listener) { delegate.setOnMapSteadyListener(listener); } +} diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java index c251b7d9..424c98a9 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java @@ -18,6 +18,7 @@ import androidx.annotation.NonNull; +import com.example.snippets.java.TrackedMap3D; import android.os.Handler; import android.os.Looper; import android.util.Log; @@ -36,9 +37,9 @@ ) public class CameraControlSnippets { - private final GoogleMap3D map; + private final TrackedMap3D map; - public CameraControlSnippets(GoogleMap3D map) { + public CameraControlSnippets(TrackedMap3D map) { this.map = map; } diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java index f9705b12..372e2a4d 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java @@ -16,8 +16,13 @@ package com.example.snippets.java.snippets; +import android.os.Handler; +import android.os.Looper; +import android.widget.Toast; + import androidx.annotation.NonNull; import com.google.android.gms.maps3d.GoogleMap3D; +import com.example.snippets.java.TrackedMap3D; import com.google.android.gms.maps3d.model.AltitudeMode; import com.google.android.gms.maps3d.model.CollisionBehavior; import com.google.android.gms.maps3d.model.LatLngAltitude; @@ -41,9 +46,11 @@ ) public class MarkerSnippets { - private final GoogleMap3D map; + private final Context context; + private final TrackedMap3D map; - public MarkerSnippets(GoogleMap3D map) { + public MarkerSnippets(Context context, TrackedMap3D map) { + this.context = context; this.map = map; } @@ -53,7 +60,7 @@ public MarkerSnippets(GoogleMap3D map) { @SuppressWarnings("unused") @SnippetItem( title = "1. Basic", - description = "Adds a standard marker at Lat: 37.422, Lng: -122.084, Alt: 10m." + description = "Adds a standard marker." ) public void addBasicMarker() { // [START maps_android_3d_marker_add_java] @@ -82,7 +89,7 @@ public void addBasicMarker() { @SuppressWarnings("unused") @SnippetItem( title = "2. Advanced", - description = "Adds a 'Priority Marker' at Lat: 37.422, Lng: -122.084, Alt: 10m (Relative to Ground) that is extruded and collides with other markers." + description = "Adds a 'Priority Marker' that is extruded and collides with other markers." ) public void addAdvancedMarker() { // [START maps_android_3d_marker_options_java] @@ -114,7 +121,7 @@ public void addAdvancedMarker() { @SuppressWarnings("unused") @SnippetItem( title = "3. Click", - description = "Adds a marker at Lat: 37.42, Lng: -122.08 that logs a message when clicked." + description = "Adds a marker that logs a message when clicked." ) public void handleMarkerClick() { // [START maps_android_3d_marker_click_java] @@ -137,7 +144,9 @@ public void handleMarkerClick() { marker.setClickListener(new OnMarkerClickListener() { @Override public void onMarkerClick() { - // Handle click + new Handler(Looper.getMainLooper()).post(() -> + Toast.makeText(context, "Marker Clicked!", Toast.LENGTH_SHORT).show() + ); } }); } diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java index 6c0f4182..e1b9291c 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java @@ -18,6 +18,7 @@ import com.google.android.gms.maps3d.GoogleMap3D; import com.google.android.gms.maps3d.model.AltitudeMode; +import com.example.snippets.java.TrackedMap3D; import com.google.android.gms.maps3d.model.LatLngAltitude; import com.google.android.gms.maps3d.model.Model; import com.google.android.gms.maps3d.model.ModelOptions; @@ -32,9 +33,9 @@ ) public class ModelSnippets { - private final GoogleMap3D map; + private final TrackedMap3D map; - public ModelSnippets(GoogleMap3D map) { + public ModelSnippets(TrackedMap3D map) { this.map = map; } diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PlaceSnippets.java b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PlaceSnippets.java index 3dde0d54..e7c838a8 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PlaceSnippets.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PlaceSnippets.java @@ -18,6 +18,7 @@ import androidx.annotation.NonNull; import androidx.annotation.Nullable; +import com.example.snippets.java.TrackedMap3D; import com.google.android.gms.maps3d.GoogleMap3D; import com.google.android.gms.maps3d.OnMap3DClickListener; import com.google.android.gms.maps3d.model.LatLngAltitude; @@ -30,9 +31,9 @@ ) public class PlaceSnippets { - private final GoogleMap3D map; + private final TrackedMap3D map; - public PlaceSnippets(GoogleMap3D map) { + public PlaceSnippets(TrackedMap3D map) { this.map = map; } diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java index 301cf16b..350407f2 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java @@ -18,6 +18,7 @@ import android.graphics.Color; import com.google.android.gms.maps3d.GoogleMap3D; +import com.example.snippets.java.TrackedMap3D; import com.google.android.gms.maps3d.model.AltitudeMode; import com.google.android.gms.maps3d.model.LatLngAltitude; import com.google.android.gms.maps3d.model.Polygon; @@ -33,9 +34,9 @@ ) public class PolygonSnippets { - private final GoogleMap3D map; + private final TrackedMap3D map; - public PolygonSnippets(GoogleMap3D map) { + public PolygonSnippets(TrackedMap3D map) { this.map = map; } @@ -45,7 +46,7 @@ public PolygonSnippets(GoogleMap3D map) { @SuppressWarnings("unused") @SnippetItem( title = "1. Basic", - description = "Draws a red polygon with a blue stroke around a small area near Lat: 37.42, Lng: -122.08." + description = "Draws a red polygon with a blue stroke around a small area" ) public void addBasicPolygon() { // [START maps_android_3d_polygon_add_java] @@ -74,7 +75,7 @@ public void addBasicPolygon() { @SuppressWarnings("unused") @SnippetItem( title = "2. Extruded", - description = "Draws a semi-transparent red extruded polygon (height 50m) around a small area near Lat: 37.42, Lng: -122.08." + description = "Draws a semi-transparent red extruded polygon (height 50m) around a small area" ) public void addExtrudedPolygon() { // [START maps_android_3d_polygon_extruded_java] diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java index 49a56546..7461ec51 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java @@ -18,6 +18,7 @@ import android.graphics.Color; import com.google.android.gms.maps3d.GoogleMap3D; +import com.example.snippets.java.TrackedMap3D; import com.google.android.gms.maps3d.model.AltitudeMode; import com.google.android.gms.maps3d.model.LatLngAltitude; import com.google.android.gms.maps3d.model.Polyline; @@ -33,9 +34,9 @@ ) public class PolylineSnippets { - private final GoogleMap3D map; + private final TrackedMap3D map; - public PolylineSnippets(GoogleMap3D map) { + public PolylineSnippets(TrackedMap3D map) { this.map = map; } @@ -45,7 +46,7 @@ public PolylineSnippets(GoogleMap3D map) { @SuppressWarnings("unused") @SnippetItem( title = "1. Basic", - description = "Draws a thick red polyline connecting three points near Lat: 37.42, Lng: -122.08." + description = "Draws a thick red polyline connecting three points" ) public void addBasicPolyline() { // [START maps_android_3d_polyline_add_java] diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java index 969cc1f6..53264dd0 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java @@ -18,6 +18,7 @@ import com.example.snippets.common.R; import android.content.Context; +import com.example.snippets.java.TrackedMap3D; import android.graphics.Color; import android.widget.TextView; import com.google.android.gms.maps3d.GoogleMap3D; @@ -37,9 +38,9 @@ public class PopoverSnippets { private final Context context; - private final GoogleMap3D map; + private final TrackedMap3D map; - public PopoverSnippets(Context context, GoogleMap3D map) { + public PopoverSnippets(Context context, TrackedMap3D map) { this.context = context; this.map = map; } @@ -50,7 +51,7 @@ public PopoverSnippets(Context context, GoogleMap3D map) { @SuppressWarnings("unused") @SnippetItem( title = "1. Marker Anchor", - description = "Adds a 'Hello Popover!' text bubble anchored to a marker at Lat: 37.422, Lng: -122.084." + description = "Adds a 'Hello Popover!' text bubble anchored to a marker" ) public void addPopoverToMarker() { // [START maps_android_3d_popover_add_java] @@ -86,7 +87,7 @@ public void addPopoverToMarker() { @SuppressWarnings("unused") @SnippetItem( title = "2. Configured", - description = "Adds an 'Info' popover anchored to a marker at [0,0] with auto-close enabled and auto-pan disabled." + description = "Adds an 'Info' popover anchored to a marker with auto-close enabled and auto-pan disabled." ) public void addConfiguredPopover() { // [START maps_android_3d_popover_options_java] diff --git a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/KotlinSnippetsActivity.kt b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/KotlinSnippetsActivity.kt index 014365ea..9ac2cc3e 100644 --- a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/KotlinSnippetsActivity.kt +++ b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/KotlinSnippetsActivity.kt @@ -58,6 +58,7 @@ class KotlinSnippetsActivity : AppCompatActivity() { contentPadding = innerPadding, onItemClick = { item -> val intent = Intent(this, MapActivity::class.java) + intent.putExtra("group_title", item.groupTitle) intent.putExtra(MapActivity.EXTRA_SNIPPET_TITLE, item.title) startActivity(intent) } diff --git a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt index b258cd46..8476c937 100644 --- a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt +++ b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt @@ -46,9 +46,10 @@ class MapActivity : AppCompatActivity() { map3DView = findViewById(R.id.map) map3DView.onCreate(savedInstanceState) + val groupTitle = intent.getStringExtra("group_title") val snippetTitle = intent.getStringExtra(EXTRA_SNIPPET_TITLE) val snippetList = SnippetRegistry.getSnippetGroups().flatMap { it.items } - var currentIndex = snippetList.indexOfFirst { it.title == snippetTitle } + var currentIndex = snippetList.indexOfFirst { it.title == snippetTitle && (groupTitle == null || it.groupTitle == groupTitle) } val printPoseBtn = findViewById(R.id.snapshot_button).apply { setOnClickListener { @@ -85,7 +86,8 @@ class MapActivity : AppCompatActivity() { val replayBtn = findViewById(R.id.reset_view_button).apply { setOnClickListener { if (currentIndex >= 0) { - runSnippet(snippetList[currentIndex].title) + val item = snippetList[currentIndex] + runSnippet(item.groupTitle, item.title) } } } @@ -99,7 +101,8 @@ class MapActivity : AppCompatActivity() { } else { currentIndex = snippetList.size - 1 } - runSnippet(snippetList[currentIndex].title) + val item = snippetList[currentIndex] + runSnippet(item.groupTitle, item.title) } } @@ -111,7 +114,8 @@ class MapActivity : AppCompatActivity() { } else { currentIndex = 0 } - runSnippet(snippetList[currentIndex].title) + val item = snippetList[currentIndex] + runSnippet(item.groupTitle, item.title) } } @@ -121,12 +125,12 @@ class MapActivity : AppCompatActivity() { // For simplicity, we run immediately, but add a listener for logs googleMap3D.setOnMapReadyListener { sceneReadiness -> - Log.d("MapActivity", "setOnMapReadyListener called") } // Run snippet after initializing, resetting to global view first if (currentIndex >= 0) { - runSnippet(snippetList[currentIndex].title) + val item = snippetList[currentIndex] + runSnippet(item.groupTitle, item.title) } } @@ -171,11 +175,16 @@ class MapActivity : AppCompatActivity() { super.onSaveInstanceState(outState) map3DView.onSaveInstanceState(outState) } - private fun runSnippet(snippetTitle: String?) { + private fun runSnippet(groupTitle: String?, snippetTitle: String?) { if (snippetTitle == null) return - val snippet = SnippetRegistry.snippets[snippetTitle] ?: return + val key = if (groupTitle != null) "$groupTitle - $snippetTitle" else snippetTitle + val snippet = SnippetRegistry.snippets[key] + ?: SnippetRegistry.getSnippetGroups().flatMap { it.items }.find { it.title == snippetTitle } + ?: return if (!::googleMap3D.isInitialized) return + SnippetRegistry.clearTrackedItems() + lifecycleScope.launch { // 1. Set camera to far global view val globalCamera = com.google.android.gms.maps3d.model.camera { @@ -198,7 +207,7 @@ class MapActivity : AppCompatActivity() { // 3. Play snippet try { - snippet.action(this@MapActivity, googleMap3D, lifecycleScope) + snippet.action(this@MapActivity, googleMap3D, lifecycleScope) Toast.makeText( this@MapActivity, "${snippet.groupTitle}: ${snippet.title}.\n${snippet.description}", diff --git a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/SnippetRegistry.kt b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/SnippetRegistry.kt index 6791911d..5240d144 100644 --- a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/SnippetRegistry.kt +++ b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/SnippetRegistry.kt @@ -45,6 +45,24 @@ data class SnippetItemInfo( ) object SnippetRegistry { + private val addedElements = mutableListOf() + + fun clearTrackedItems() { + addedElements.forEach { item -> + try { + when (item) { + is com.google.android.gms.maps3d.model.Marker -> item.remove() + is com.google.android.gms.maps3d.model.Polyline -> item.remove() + is com.google.android.gms.maps3d.model.Polygon -> item.remove() + is com.google.android.gms.maps3d.model.Model -> item.remove() + is com.google.android.gms.maps3d.Popover -> item.remove() + } + } catch (e: Exception) { + // Ignore failures to avoid crashing if already cleanup or invalid + } + } + addedElements.clear() + } private val snippetClasses = listOf( MapInitSnippets::class.java, @@ -76,7 +94,8 @@ object SnippetRegistry { groupTitle = groupAnnotation.title, action = { context, map, scope -> try { - val instance = createInstance(clazz, context, map, scope) + val trackedMap = TrackedMap3D(map, addedElements) + val instance = createInstance(clazz, context, trackedMap, scope) // Invoke method, passing parameters if needed, or assuming no-arg // Most snippet methods take no args because they use initialized class fields if (method.parameterCount == 0) { @@ -105,18 +124,18 @@ object SnippetRegistry { return groups } - private fun createInstance(clazz: Class<*>, context: Context, map: GoogleMap3D, scope: kotlinx.coroutines.CoroutineScope): Any { + private fun createInstance(clazz: Class<*>, context: Context, map: TrackedMap3D, scope: kotlinx.coroutines.CoroutineScope): Any { return try { - clazz.getConstructor(Context::class.java, GoogleMap3D::class.java, kotlinx.coroutines.CoroutineScope::class.java).newInstance(context, map, scope) + clazz.getConstructor(Context::class.java, TrackedMap3D::class.java, kotlinx.coroutines.CoroutineScope::class.java).newInstance(context, map, scope) } catch (e: Exception) { try { - clazz.getConstructor(GoogleMap3D::class.java, kotlinx.coroutines.CoroutineScope::class.java).newInstance(map, scope) + clazz.getConstructor(TrackedMap3D::class.java, kotlinx.coroutines.CoroutineScope::class.java).newInstance(map, scope) } catch (e: Exception) { try { - clazz.getConstructor(Context::class.java, GoogleMap3D::class.java).newInstance(context, map) + clazz.getConstructor(Context::class.java, TrackedMap3D::class.java).newInstance(context, map) } catch (e: Exception) { try { - clazz.getConstructor(GoogleMap3D::class.java).newInstance(map) + clazz.getConstructor(TrackedMap3D::class.java).newInstance(map) } catch (e: Exception) { clazz.getConstructor().newInstance() } @@ -128,7 +147,7 @@ object SnippetRegistry { // Legacy support for Activities during refactoring val snippets: Map by lazy { getSnippetGroups().flatMap { group -> - group.items.map { item -> item.title to item } + group.items.map { item -> "${item.groupTitle} - ${item.title}" to item } }.toMap() } } diff --git a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt new file mode 100644 index 00000000..72543b4b --- /dev/null +++ b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt @@ -0,0 +1,64 @@ +package com.example.snippets.kotlin + +import com.google.android.gms.maps3d.GoogleMap3D +import com.google.android.gms.maps3d.model.Marker +import com.google.android.gms.maps3d.model.MarkerOptions +import com.google.android.gms.maps3d.model.Polyline +import com.google.android.gms.maps3d.model.PolylineOptions +import com.google.android.gms.maps3d.model.Polygon +import com.google.android.gms.maps3d.model.PolygonOptions +import com.google.android.gms.maps3d.model.Model +import com.google.android.gms.maps3d.model.ModelOptions +import com.google.android.gms.maps3d.Popover +import com.google.android.gms.maps3d.model.PopoverOptions + +/** + * Decorator wrapper around GoogleMap3D to track elements added during a snippet session. + */ +class TrackedMap3D( + val delegate: GoogleMap3D, + private val items: MutableList +) { + + fun addMarker(options: MarkerOptions): Marker? { + val marker = delegate.addMarker(options) + if (marker != null) items.add(marker) + return marker + } + + fun addPolyline(options: PolylineOptions): Polyline? { + val polyline = delegate.addPolyline(options) + if (polyline != null) items.add(polyline) + return polyline + } + + fun addPolygon(options: PolygonOptions): Polygon? { + val polygon = delegate.addPolygon(options) + if (polygon != null) items.add(polygon) + return polygon + } + + fun addModel(options: ModelOptions): Model? { + val model = delegate.addModel(options) + if (model != null) items.add(model) + return model + } + + fun addPopover(options: PopoverOptions): Popover? { + val popover = delegate.addPopover(options) + if (popover != null) items.add(popover) + return popover + } + + fun setCamera(camera: com.google.android.gms.maps3d.model.Camera) = delegate.setCamera(camera) + fun setCameraChangedListener(listener: com.google.android.gms.maps3d.OnCameraChangedListener?) = delegate.setCameraChangedListener(listener) + fun setMap3DClickListener(listener: com.google.android.gms.maps3d.OnMap3DClickListener?) = delegate.setMap3DClickListener(listener) + + // Pass-through standard map calls if any are invoked inside snippets + fun getCamera() = delegate.getCamera() + fun stopCameraAnimation() = delegate.stopCameraAnimation() + fun flyCameraTo(options: com.google.android.gms.maps3d.model.FlyToOptions) = delegate.flyCameraTo(options) + fun flyCameraAround(options: com.google.android.gms.maps3d.model.FlyAroundOptions) = delegate.flyCameraAround(options) + fun setOnMapReadyListener(listener: com.google.android.gms.maps3d.OnMapReadyListener?) = delegate.setOnMapReadyListener(listener) + fun setOnMapSteadyListener(listener: com.google.android.gms.maps3d.OnMapSteadyListener?) = delegate.setOnMapSteadyListener(listener) +} diff --git a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt index 781243ba..b58ea083 100644 --- a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt +++ b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt @@ -17,9 +17,10 @@ package com.example.snippets.kotlin.snippets import android.util.Log +import com.example.snippets.kotlin.TrackedMap3D import com.example.snippets.kotlin.annotations.SnippetGroup import com.example.snippets.kotlin.annotations.SnippetItem -import com.google.android.gms.maps3d.GoogleMap3D +import com.example.snippets.kotlin.utils.awaitAnimation import com.google.android.gms.maps3d.model.camera import com.google.android.gms.maps3d.model.flyAroundOptions import com.google.android.gms.maps3d.model.flyToOptions @@ -27,15 +28,13 @@ import com.google.android.gms.maps3d.model.latLngAltitude import kotlinx.coroutines.delay import kotlinx.coroutines.launch import kotlin.time.Duration.Companion.seconds -import com.example.snippets.kotlin.utils.awaitAnimation -import com.example.snippets.kotlin.utils.awaitCameraSteady @SnippetGroup( title = "Camera", description = "Snippets demonstrating dynamic camera orchestration and animations." ) class CameraControlSnippets( - private val map: GoogleMap3D, + private val map: TrackedMap3D, private val lifecycleScope: kotlinx.coroutines.CoroutineScope ) { @@ -104,7 +103,7 @@ class CameraControlSnippets( durationInMillis = 6_000 } - map.setOnMapSteadyListener { isSceneSteady -> + map.setOnMapSteadyListener { isSceneSteady: Boolean -> if (isSceneSteady) { map.setOnMapSteadyListener(null) // Cleanup map.flyCameraAround(options) @@ -206,7 +205,7 @@ class CameraControlSnippets( ) fun listenToMapSteadyState() { // [START maps_android_3d_camera_steady_kt] - map.setOnMapSteadyListener { isSceneSteady -> + map.setOnMapSteadyListener { isSceneSteady: Boolean -> Log.d("Maps3D", "Map Is Steady: $isSceneSteady") } // [END maps_android_3d_camera_steady_kt] diff --git a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt index 17c31102..94b4dff1 100644 --- a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt +++ b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt @@ -43,6 +43,13 @@ class MapInitSnippets { * Initializes a standard 3D Map View using AndroidView in Compose. */ @Composable + // [START_EXCLUDE] + @Suppress("unused") + @SnippetItem( + title = "2. Add Map to AndroidView", + description = "Shows how to add a Map3DView to an AndroidView which bridges to Jetpack Compose." + ) + // [END_EXCLUDE] fun BasicMap3D() { AndroidView( modifier = Modifier.fillMaxSize(), diff --git a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt index b8d3d75d..697b3684 100644 --- a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt +++ b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt @@ -16,27 +16,30 @@ package com.example.snippets.kotlin.snippets -import com.google.android.gms.maps3d.GoogleMap3D -import com.google.android.gms.maps3d.model.AltitudeMode -import com.google.android.gms.maps3d.model.CollisionBehavior -import com.google.android.gms.maps3d.model.latLngAltitude -import com.google.android.gms.maps3d.model.markerOptions -import com.google.android.gms.maps3d.model.camera -import com.google.android.gms.maps3d.model.flyToOptions -import com.google.android.gms.maps3d.model.PinConfiguration -import com.google.android.gms.maps3d.model.Glyph -import com.example.snippets.kotlin.R import android.content.Context import android.graphics.Color -import android.widget.ImageView +import android.os.Handler +import android.os.Looper +import android.widget.Toast +import com.example.snippets.kotlin.R +import com.example.snippets.kotlin.TrackedMap3D import com.example.snippets.kotlin.annotations.SnippetGroup import com.example.snippets.kotlin.annotations.SnippetItem +import com.google.android.gms.maps3d.model.AltitudeMode +import com.google.android.gms.maps3d.model.CollisionBehavior +import com.google.android.gms.maps3d.model.Glyph +import com.google.android.gms.maps3d.model.ImageView +import com.google.android.gms.maps3d.model.PinConfiguration +import com.google.android.gms.maps3d.model.camera +import com.google.android.gms.maps3d.model.flyToOptions +import com.google.android.gms.maps3d.model.latLngAltitude +import com.google.android.gms.maps3d.model.markerOptions @SnippetGroup( title = "Markers", description = "Snippets demonstrating standard, extruded, and custom styled markers." ) -class MarkerSnippets(private val map: GoogleMap3D) { +class MarkerSnippets(private val context: Context, private val map: TrackedMap3D) { /** * Adds a basic marker to the map. @@ -44,7 +47,7 @@ class MarkerSnippets(private val map: GoogleMap3D) { @Suppress("unused") @SnippetItem( title = "1. Basic", - description = "Adds a standard marker at Lat: 37.422, Lng: -122.084, Alt: 10m." + description = "Adds a standard marker." ) fun addBasicMarker() { // [START maps_android_3d_marker_add_kt] @@ -85,7 +88,7 @@ class MarkerSnippets(private val map: GoogleMap3D) { @Suppress("unused") @SnippetItem( title = "2. Advanced", - description = "Adds a 'Priority Marker' at Lat: 37.422, Lng: -122.084, Alt: 10m (Relative to Ground) that is extruded and collides with other markers." + description = "Adds a 'Priority Marker' that is extruded and collides with other markers." ) fun addAdvancedMarker() { // [START maps_android_3d_marker_options_kt] @@ -107,8 +110,8 @@ class MarkerSnippets(private val map: GoogleMap3D) { map.flyCameraTo(flyToOptions { endCamera = camera { center = latLngAltitude { - latitude = options.position!!.latitude - longitude = options.position!!.longitude + latitude = options.position.latitude + longitude = options.position.longitude altitude = 0.0 } tilt = 45.0 @@ -127,7 +130,7 @@ class MarkerSnippets(private val map: GoogleMap3D) { @Suppress("unused") @SnippetItem( title = "3. Click", - description = "Adds a marker at Lat: 37.42, Lng: -122.08 that logs a message when clicked." + description = "Adds a marker that logs a message when clicked." ) fun handleMarkerClick() { // [START maps_android_3d_marker_click_kt] @@ -147,7 +150,9 @@ class MarkerSnippets(private val map: GoogleMap3D) { // [START_EXCLUDE] marker?.setClickListener { - // Handle click + Handler(Looper.getMainLooper()).post { + Toast.makeText(context, "Marker Clicked!", Toast.LENGTH_SHORT).show() + } } // [END_EXCLUDE] // [END maps_android_3d_marker_click_kt] @@ -166,7 +171,7 @@ class MarkerSnippets(private val map: GoogleMap3D) { // Create a Glyph with a custom image val glyphImage = Glyph.fromColor(Color.YELLOW) // Use the Maps SDK's ImageView, not the Android widget - glyphImage.setImage(com.google.android.gms.maps3d.model.ImageView(R.mipmap.ic_launcher)) + glyphImage.setImage(ImageView(R.mipmap.ic_launcher)) val options = markerOptions { position = latLngAltitude { @@ -189,8 +194,8 @@ class MarkerSnippets(private val map: GoogleMap3D) { map.flyCameraTo(flyToOptions { endCamera = camera { center = latLngAltitude { - latitude = options.position!!.latitude - longitude = options.position!!.longitude + latitude = options.position.latitude + longitude = options.position.longitude altitude = 0.0 } tilt = 45.0 diff --git a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt index c61fd1f7..7669c881 100644 --- a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt +++ b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt @@ -16,20 +16,20 @@ package com.example.snippets.kotlin.snippets -import com.google.android.gms.maps3d.GoogleMap3D +import com.example.snippets.kotlin.TrackedMap3D +import com.example.snippets.kotlin.annotations.SnippetGroup +import com.example.snippets.kotlin.annotations.SnippetItem import com.google.android.gms.maps3d.model.AltitudeMode import com.google.android.gms.maps3d.model.latLngAltitude import com.google.android.gms.maps3d.model.modelOptions import com.google.android.gms.maps3d.model.orientation import com.google.android.gms.maps3d.model.vector3D -import com.example.snippets.kotlin.annotations.SnippetGroup -import com.example.snippets.kotlin.annotations.SnippetItem @SnippetGroup( title = "Models", description = "Snippets demonstrating 3D Model (GLB) integration and configuration." ) -class ModelSnippets(private val map: GoogleMap3D) { +class ModelSnippets(private val map: TrackedMap3D) { /** * Adds a basic 3D model (GLB) to the map from a URL. diff --git a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt index 360fd8dd..5a0c2d0a 100644 --- a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt +++ b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt @@ -16,9 +16,7 @@ package com.example.snippets.kotlin.snippets -import com.google.android.gms.maps3d.GoogleMap3D -import com.google.android.gms.maps3d.OnMap3DClickListener -import com.google.android.gms.maps3d.model.LatLngAltitude +import com.example.snippets.kotlin.TrackedMap3D import com.example.snippets.kotlin.annotations.SnippetGroup import com.example.snippets.kotlin.annotations.SnippetItem @@ -26,9 +24,7 @@ import com.example.snippets.kotlin.annotations.SnippetItem title = "Places", description = "Snippets demonstrating Place (POI/Building) interaction algorithms." ) -class PlaceSnippets(private val map: GoogleMap3D) { - - +class PlaceSnippets(private val map: TrackedMap3D) { /** * Listens for clicks on 3D Places (buildings, POIs). */ diff --git a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt index a5dd0508..a27323c4 100644 --- a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt +++ b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt @@ -17,18 +17,18 @@ package com.example.snippets.kotlin.snippets import android.graphics.Color -import com.google.android.gms.maps3d.GoogleMap3D +import com.example.snippets.kotlin.TrackedMap3D +import com.example.snippets.kotlin.annotations.SnippetGroup +import com.example.snippets.kotlin.annotations.SnippetItem import com.google.android.gms.maps3d.model.AltitudeMode import com.google.android.gms.maps3d.model.latLngAltitude import com.google.android.gms.maps3d.model.polygonOptions -import com.example.snippets.kotlin.annotations.SnippetGroup -import com.example.snippets.kotlin.annotations.SnippetItem @SnippetGroup( title = "Polygons", description = "Snippets demonstrating 2D and 3D extruded polygon layers on the map." ) -class PolygonSnippets(private val map: GoogleMap3D) { +class PolygonSnippets(private val map: TrackedMap3D) { /** * Adds a simple polygon to the map. @@ -36,7 +36,7 @@ class PolygonSnippets(private val map: GoogleMap3D) { @Suppress("unused") @SnippetItem( title = "1. Basic", - description = "Draws a red polygon with a blue stroke around a small area near Lat: 37.42, Lng: -122.08." + description = "Draws a red polygon with a blue stroke around a small area" ) fun addBasicPolygon() { // [START maps_android_3d_polygon_add_kt] @@ -66,7 +66,7 @@ class PolygonSnippets(private val map: GoogleMap3D) { @Suppress("unused") @SnippetItem( title = "2. Extruded", - description = "Draws a semi-transparent red extruded polygon (height 50m) around a small area near Lat: 37.42, Lng: -122.08." + description = "Draws a semi-transparent red extruded polygon (height 50m) around a small area" ) fun addExtrudedPolygon() { // [START maps_android_3d_polygon_extruded_kt] diff --git a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt index e1a33f30..2624ad29 100644 --- a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt +++ b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt @@ -17,18 +17,18 @@ package com.example.snippets.kotlin.snippets import android.graphics.Color -import com.google.android.gms.maps3d.GoogleMap3D +import com.example.snippets.kotlin.TrackedMap3D +import com.example.snippets.kotlin.annotations.SnippetGroup +import com.example.snippets.kotlin.annotations.SnippetItem import com.google.android.gms.maps3d.model.AltitudeMode import com.google.android.gms.maps3d.model.latLngAltitude import com.google.android.gms.maps3d.model.polylineOptions -import com.example.snippets.kotlin.annotations.SnippetGroup -import com.example.snippets.kotlin.annotations.SnippetItem @SnippetGroup( title = "Polylines", description = "Snippets demonstrating 2D and 3D extruded polyline paths on the map." ) -class PolylineSnippets(private val map: GoogleMap3D) { +class PolylineSnippets(private val map: TrackedMap3D) { /** * Adds a basic polyline to the map. @@ -36,7 +36,7 @@ class PolylineSnippets(private val map: GoogleMap3D) { @Suppress("unused") @SnippetItem( title = "1. Basic", - description = "Draws a thick red polyline connecting three points near Lat: 37.42, Lng: -122.08." + description = "Draws a thick red polyline connecting three points" ) fun addBasicPolyline() { // [START maps_android_3d_polyline_add_kt] diff --git a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt index fa5d3b79..085b17b3 100644 --- a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt +++ b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt @@ -17,22 +17,22 @@ package com.example.snippets.kotlin.snippets import android.content.Context +import android.graphics.Color import android.widget.TextView -import com.google.android.gms.maps3d.GoogleMap3D +import com.example.snippets.common.R +import com.example.snippets.kotlin.TrackedMap3D +import com.example.snippets.kotlin.annotations.SnippetGroup +import com.example.snippets.kotlin.annotations.SnippetItem import com.google.android.gms.maps3d.model.AltitudeMode import com.google.android.gms.maps3d.model.latLngAltitude import com.google.android.gms.maps3d.model.markerOptions -import com.example.snippets.common.R -import android.graphics.Color import com.google.android.gms.maps3d.model.popoverOptions -import com.example.snippets.kotlin.annotations.SnippetGroup -import com.example.snippets.kotlin.annotations.SnippetItem @SnippetGroup( title = "Popovers", description = "Snippets demonstrating anchored and configured 3D Popover views." ) -class PopoverSnippets(private val context: Context, private val map: GoogleMap3D) { +class PopoverSnippets(private val context: Context, private val map: TrackedMap3D) { /** * Adds a popover anchored to a marker. @@ -40,7 +40,7 @@ class PopoverSnippets(private val context: Context, private val map: GoogleMap3D @Suppress("unused") @SnippetItem( title = "1. Marker Anchor", - description = "Adds a 'Hello Popover!' text bubble anchored to a marker at Lat: 37.422, Lng: -122.084." + description = "Adds a 'Hello Popover!' text bubble anchored to a marker" ) fun addPopoverToMarker() { // [START maps_android_3d_popover_add_kt] @@ -67,7 +67,7 @@ class PopoverSnippets(private val context: Context, private val map: GoogleMap3D val popover = map.addPopover(options) // You can show/hide it - popover.show() + popover?.show() // [END maps_android_3d_popover_add_kt] } @@ -77,7 +77,7 @@ class PopoverSnippets(private val context: Context, private val map: GoogleMap3D @Suppress("unused") @SnippetItem( title = "2. Configured", - description = "Adds an 'Info' popover anchored to a marker at [0,0] with auto-close enabled and auto-pan disabled." + description = "Adds an 'Info' popover anchored to a marker with auto-close enabled and auto-pan disabled." ) fun addConfiguredPopover() { // [START maps_android_3d_popover_options_kt] diff --git a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/utils/MapExtensions.kt b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/utils/MapExtensions.kt index f67389da..491316a1 100644 --- a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/utils/MapExtensions.kt +++ b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/utils/MapExtensions.kt @@ -3,6 +3,7 @@ package com.example.snippets.kotlin.utils import com.google.android.gms.maps3d.GoogleMap3D import kotlinx.coroutines.suspendCancellableCoroutine import kotlin.coroutines.resume +import com.example.snippets.kotlin.TrackedMap3D /** * **Coroutine Helper**: Awaiting Camera Animation. @@ -10,6 +11,10 @@ import kotlin.coroutines.resume * * @param action The block that triggers the animation, executed AFTER the listener is attached. */ +suspend fun TrackedMap3D.awaitAnimation(action: () -> Unit) { + this.delegate.awaitAnimation(action) +} + suspend fun GoogleMap3D.awaitAnimation(action: () -> Unit) = suspendCancellableCoroutine { continuation -> setCameraAnimationEndListener { setCameraAnimationEndListener(null) // Cleanup From 6db080a3c3b148506a98adda9ff58ace06a3cd49 Mon Sep 17 00:00:00 2001 From: dkhawk <107309+dkhawk@users.noreply.github.com> Date: Thu, 19 Mar 2026 16:40:51 -0600 Subject: [PATCH 08/36] feat(snippets): Remove unused GoogleMap3D imports and leftover FQDN and fix null checks --- .../snippets/java/JavaSnippetsActivity.java | 1 - .../example/snippets/java/MapActivity.java | 4 +- .../example/snippets/java/SnippetAdapter.java | 75 ------------------- .../snippets/java/SnippetRegistry.java | 1 - .../example/snippets/java/TrackedMap3D.java | 1 - .../java/snippets/CameraControlSnippets.java | 5 +- .../java/snippets/MarkerSnippets.java | 29 +------ .../snippets/java/snippets/ModelSnippets.java | 1 - .../snippets/java/snippets/PlaceSnippets.java | 1 - .../java/snippets/PolygonSnippets.java | 1 - .../java/snippets/PolylineSnippets.java | 1 - .../java/snippets/PopoverSnippets.java | 1 - 12 files changed, 5 insertions(+), 116 deletions(-) delete mode 100644 snippets/java-app/src/main/java/com/example/snippets/java/SnippetAdapter.java diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/JavaSnippetsActivity.java b/snippets/java-app/src/main/java/com/example/snippets/java/JavaSnippetsActivity.java index d077ae04..f6eef84e 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/JavaSnippetsActivity.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/JavaSnippetsActivity.java @@ -21,7 +21,6 @@ import androidx.appcompat.app.AppCompatActivity; import androidx.recyclerview.widget.LinearLayoutManager; import androidx.recyclerview.widget.RecyclerView; -import java.util.ArrayList; import java.util.List; import androidx.activity.EdgeToEdge; diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/MapActivity.java b/snippets/java-app/src/main/java/com/example/snippets/java/MapActivity.java index 5c5187ce..b89f4937 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/MapActivity.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/MapActivity.java @@ -35,8 +35,6 @@ public class MapActivity extends AppCompatActivity { private com.google.android.gms.maps3d.Map3DView map3DView; - private boolean triggered = false; - private String snippetTitle; private String groupTitle; private GoogleMap3D map; @@ -53,7 +51,7 @@ protected void onCreate(Bundle savedInstanceState) { findViewById(R.id.snapshot_button).setOnClickListener(v -> { if (map != null) { com.google.android.gms.maps3d.model.Camera cam = map.getCamera(); - if (cam != null && cam.getCenter() != null) { + if (cam != null) { com.google.android.gms.maps3d.model.LatLngAltitude center = cam.getCenter(); double rawHeading = cam.getHeading() != null ? cam.getHeading() : 0.0; double heading = (rawHeading % 360.0 + 360.0) % 360.0; diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/SnippetAdapter.java b/snippets/java-app/src/main/java/com/example/snippets/java/SnippetAdapter.java deleted file mode 100644 index 15ea3386..00000000 --- a/snippets/java-app/src/main/java/com/example/snippets/java/SnippetAdapter.java +++ /dev/null @@ -1,75 +0,0 @@ -/* - * Copyright 2026 Google LLC - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package com.example.snippets.java; - -import android.view.LayoutInflater; -import android.view.View; -import android.view.ViewGroup; -import android.widget.TextView; -import androidx.annotation.NonNull; -import androidx.recyclerview.widget.RecyclerView; -import java.util.List; - -public class SnippetAdapter extends RecyclerView.Adapter { - - private final List snippets; - private final OnItemClickListener listener; - - public interface OnItemClickListener { - void onItemClick(Snippet snippet); - } - - public SnippetAdapter(List snippets, OnItemClickListener listener) { - this.snippets = snippets; - this.listener = listener; - } - - @NonNull - @Override - public ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) { - View view = LayoutInflater.from(parent.getContext()) - .inflate(R.layout.list_item_snippet, parent, false); - return new ViewHolder(view); - } - - @Override - public void onBindViewHolder(@NonNull ViewHolder holder, int position) { - holder.bind(snippets.get(position), listener); - } - - @Override - public int getItemCount() { - return snippets.size(); - } - - static class ViewHolder extends RecyclerView.ViewHolder { - private final TextView title; - private final TextView description; - - public ViewHolder(@NonNull View itemView) { - super(itemView); - title = itemView.findViewById(R.id.title); - description = itemView.findViewById(R.id.description); - } - - public void bind(final Snippet snippet, final OnItemClickListener listener) { - title.setText(snippet.title); - description.setText(snippet.description); - itemView.setOnClickListener(v -> listener.onItemClick(snippet)); - } - } -} diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/SnippetRegistry.java b/snippets/java-app/src/main/java/com/example/snippets/java/SnippetRegistry.java index 4198022f..e5cf91c9 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/SnippetRegistry.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/SnippetRegistry.java @@ -27,7 +27,6 @@ import com.example.snippets.java.annotations.SnippetGroup; import com.example.snippets.java.annotations.SnippetItem; import android.content.Context; -import com.google.android.gms.maps3d.GoogleMap3D; public class SnippetRegistry { diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java b/snippets/java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java index 9fa82d83..bc6dcedd 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java @@ -5,7 +5,6 @@ import com.google.android.gms.maps3d.OnMap3DClickListener; import com.google.android.gms.maps3d.OnMapReadyListener; import com.google.android.gms.maps3d.OnMapSteadyListener; -import com.google.android.gms.maps3d.OnCameraAnimationEndListener; import com.google.android.gms.maps3d.Popover; import com.google.android.gms.maps3d.model.Marker; import com.google.android.gms.maps3d.model.MarkerOptions; diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java index 424c98a9..ccb24ab4 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java @@ -16,14 +16,11 @@ package com.example.snippets.java.snippets; -import androidx.annotation.NonNull; - import com.example.snippets.java.TrackedMap3D; import android.os.Handler; import android.os.Looper; import android.util.Log; -import com.google.android.gms.maps3d.GoogleMap3D; -import com.google.android.gms.maps3d.OnCameraChangedListener; + import com.google.android.gms.maps3d.model.Camera; import com.google.android.gms.maps3d.model.FlyAroundOptions; import com.google.android.gms.maps3d.model.FlyToOptions; diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java index 372e2a4d..e7b16730 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java @@ -20,8 +20,6 @@ import android.os.Looper; import android.widget.Toast; -import androidx.annotation.NonNull; -import com.google.android.gms.maps3d.GoogleMap3D; import com.example.snippets.java.TrackedMap3D; import com.google.android.gms.maps3d.model.AltitudeMode; import com.google.android.gms.maps3d.model.CollisionBehavior; @@ -32,10 +30,10 @@ import com.google.android.gms.maps3d.model.Camera; import com.google.android.gms.maps3d.model.FlyToOptions; import com.google.android.gms.maps3d.model.Glyph; +import com.google.android.gms.maps3d.model.ImageView; import com.example.snippets.java.R; import android.content.Context; import android.graphics.Color; -import android.widget.ImageView; import com.google.android.gms.maps3d.OnMarkerClickListener; import com.example.snippets.java.annotations.SnippetGroup; import com.example.snippets.java.annotations.SnippetItem; @@ -168,29 +166,8 @@ public void addCustomMarker(Context context) { // Create a Glyph with a custom image Glyph glyphImage = Glyph.fromColor(Color.YELLOW); - ImageView imageView = new ImageView(context); - imageView.setImageResource(R.mipmap.ic_launcher); - - // Glyph.setImage expects a com.google.android.gms.maps3d.model.ImageView? No, wait. - // It likely expects an android.view.View or specialized type. - // Checking the Kotlin sample: glyphImage.setImage(ImageView(context)...) - // If the error says "incompatible types: android.widget.ImageView cannot be converted to com.google.android.gms.maps3d.model.ImageView", - // then the SDK has its own ImageView wrapper or I am importing the wrong one. - // Actually, looking at the hierarchy, Glyph.setImage might take a View, but if there is a name collision... - // Let's assume the SDK expects the Android ImageView but maybe the signature is weird? - // Wait, the error `com.google.android.gms.maps3d.model.ImageView` suggests there IS a model class named ImageView. - // I should check if I need to wrap it or use that class. - // But the Kotlin sample used `android.widget.ImageView`. - // Let's look at the error again: "actual type is 'android.widget.ImageView', but 'com.google.android.gms.maps3d.model.ImageView' was expected." - // This implies `Glyph` has a method `setImage(com.google.android.gms.maps3d.model.ImageView)`? - // Or maybe I am shadowing it? - - // Let's try to use the SDK's ImageView if it exists, or check imports. - // Actually, looking at the user provided code: `glyphImage.setImage(ImageView(R.drawable.ook))` - // The user code seems to use a constructor `ImageView(Int)`. Android's ImageView takes Context. - // So `com.google.android.gms.maps3d.model.ImageView` must be a thing! - - com.google.android.gms.maps3d.model.ImageView mapImageView = new com.google.android.gms.maps3d.model.ImageView(R.mipmap.ic_launcher); + + ImageView mapImageView = new ImageView(R.mipmap.ic_launcher); glyphImage.setImage(mapImageView); MarkerOptions options = new MarkerOptions(); diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java index e1b9291c..cf1c0fc2 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java @@ -16,7 +16,6 @@ package com.example.snippets.java.snippets; -import com.google.android.gms.maps3d.GoogleMap3D; import com.google.android.gms.maps3d.model.AltitudeMode; import com.example.snippets.java.TrackedMap3D; import com.google.android.gms.maps3d.model.LatLngAltitude; diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PlaceSnippets.java b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PlaceSnippets.java index e7c838a8..fc8d7136 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PlaceSnippets.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PlaceSnippets.java @@ -19,7 +19,6 @@ import androidx.annotation.NonNull; import androidx.annotation.Nullable; import com.example.snippets.java.TrackedMap3D; -import com.google.android.gms.maps3d.GoogleMap3D; import com.google.android.gms.maps3d.OnMap3DClickListener; import com.google.android.gms.maps3d.model.LatLngAltitude; import com.example.snippets.java.annotations.SnippetGroup; diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java index 350407f2..8e11681f 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java @@ -17,7 +17,6 @@ package com.example.snippets.java.snippets; import android.graphics.Color; -import com.google.android.gms.maps3d.GoogleMap3D; import com.example.snippets.java.TrackedMap3D; import com.google.android.gms.maps3d.model.AltitudeMode; import com.google.android.gms.maps3d.model.LatLngAltitude; diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java index 7461ec51..9e845867 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java @@ -17,7 +17,6 @@ package com.example.snippets.java.snippets; import android.graphics.Color; -import com.google.android.gms.maps3d.GoogleMap3D; import com.example.snippets.java.TrackedMap3D; import com.google.android.gms.maps3d.model.AltitudeMode; import com.google.android.gms.maps3d.model.LatLngAltitude; diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java index 53264dd0..bfe34554 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java @@ -21,7 +21,6 @@ import com.example.snippets.java.TrackedMap3D; import android.graphics.Color; import android.widget.TextView; -import com.google.android.gms.maps3d.GoogleMap3D; import com.google.android.gms.maps3d.model.AltitudeMode; import com.google.android.gms.maps3d.model.LatLngAltitude; import com.google.android.gms.maps3d.model.Marker; From eb81605a50993a436b8002ed191133d89b146b88 Mon Sep 17 00:00:00 2001 From: dkhawk <107309+dkhawk@users.noreply.github.com> Date: Thu, 19 Mar 2026 16:49:29 -0600 Subject: [PATCH 09/36] feat(snippets): Remove FQDN from TrackedMap3D and SnippetsActivity - Added imports for Camera and FlyToOptions to TrackedMap3D (Java/Kotlin). - Simplified signatures in TrackedMap3D by removing com.google.android.gms.maps3d.model prefix. - Cleaned up Compose imports and variables in KotlinSnippetsActivity. - Simplified when statements and lambda signatures in SnippetRegistry with Kotlin imports. --- .../example/snippets/java/TrackedMap3D.java | 8 ++++--- .../snippets/kotlin/KotlinSnippetsActivity.kt | 6 +++-- .../snippets/kotlin/SnippetRegistry.kt | 24 ++++++++++++------- .../example/snippets/kotlin/TrackedMap3D.kt | 21 ++++++++++------ 4 files changed, 38 insertions(+), 21 deletions(-) diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java b/snippets/java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java index bc6dcedd..9ffe23de 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java @@ -6,6 +6,8 @@ import com.google.android.gms.maps3d.OnMapReadyListener; import com.google.android.gms.maps3d.OnMapSteadyListener; import com.google.android.gms.maps3d.Popover; +import com.google.android.gms.maps3d.model.Camera; +import com.google.android.gms.maps3d.model.FlyToOptions; import com.google.android.gms.maps3d.model.Marker; import com.google.android.gms.maps3d.model.MarkerOptions; import com.google.android.gms.maps3d.model.Polyline; @@ -61,15 +63,15 @@ public Popover addPopover(PopoverOptions options) { return popover; } - public void setCamera(com.google.android.gms.maps3d.model.Camera camera) { delegate.setCamera(camera); } + public void setCamera(Camera camera) { delegate.setCamera(camera); } public void setCameraChangedListener(OnCameraChangedListener listener) { delegate.setCameraChangedListener(listener); } public void setMap3DClickListener(OnMap3DClickListener listener) { delegate.setMap3DClickListener(listener); } public void flyCameraAround(com.google.android.gms.maps3d.model.FlyAroundOptions options) { delegate.flyCameraAround(options); } // Pass-through standard map calls if any are invoked inside snippets - public com.google.android.gms.maps3d.model.Camera getCamera() { return delegate.getCamera(); } + public Camera getCamera() { return delegate.getCamera(); } public void stopCameraAnimation() { delegate.stopCameraAnimation(); } - public void flyCameraTo(com.google.android.gms.maps3d.model.FlyToOptions options) { delegate.flyCameraTo(options); } + public void flyCameraTo(FlyToOptions options) { delegate.flyCameraTo(options); } public void setOnMapReadyListener(OnMapReadyListener listener) { delegate.setOnMapReadyListener(listener); } public void setOnMapSteadyListener(OnMapSteadyListener listener) { delegate.setOnMapSteadyListener(listener); } } diff --git a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/KotlinSnippetsActivity.kt b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/KotlinSnippetsActivity.kt index 9ac2cc3e..2f7fe003 100644 --- a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/KotlinSnippetsActivity.kt +++ b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/KotlinSnippetsActivity.kt @@ -23,6 +23,7 @@ import androidx.activity.enableEdgeToEdge import androidx.appcompat.app.AppCompatActivity import androidx.compose.foundation.clickable import androidx.compose.foundation.layout.Column +import androidx.compose.foundation.layout.PaddingValues import androidx.compose.foundation.layout.fillMaxSize import androidx.compose.foundation.layout.fillMaxWidth import androidx.compose.foundation.layout.padding @@ -35,6 +36,7 @@ import androidx.compose.material3.SnackbarHost import androidx.compose.material3.SnackbarHostState import androidx.compose.material3.Text import androidx.compose.runtime.Composable +import androidx.compose.runtime.mutableStateMapOf import androidx.compose.runtime.remember import androidx.compose.ui.Modifier import androidx.compose.ui.unit.dp @@ -73,10 +75,10 @@ class KotlinSnippetsActivity : AppCompatActivity() { fun SnippetGroupList( groups: List, modifier: Modifier = Modifier, - contentPadding: androidx.compose.foundation.layout.PaddingValues = androidx.compose.foundation.layout.PaddingValues(0.dp), + contentPadding: PaddingValues = PaddingValues(0.dp), onItemClick: (SnippetItemInfo) -> Unit ) { - val expandedGroups = remember { androidx.compose.runtime.mutableStateMapOf() } + val expandedGroups = remember { mutableStateMapOf() } LazyColumn( modifier = modifier, diff --git a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/SnippetRegistry.kt b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/SnippetRegistry.kt index 5240d144..d963f4b2 100644 --- a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/SnippetRegistry.kt +++ b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/SnippetRegistry.kt @@ -30,6 +30,12 @@ import com.google.android.gms.maps3d.GoogleMap3D import com.example.snippets.kotlin.annotations.SnippetGroup import com.example.snippets.kotlin.annotations.SnippetItem +import com.google.android.gms.maps3d.Popover +import com.google.android.gms.maps3d.model.Marker +import com.google.android.gms.maps3d.model.Model +import com.google.android.gms.maps3d.model.Polygon +import com.google.android.gms.maps3d.model.Polyline +import kotlinx.coroutines.CoroutineScope data class SnippetGroupInfo( val title: String, @@ -41,7 +47,7 @@ data class SnippetItemInfo( val title: String, val description: String, val groupTitle: String, - val action: (Context, GoogleMap3D, kotlinx.coroutines.CoroutineScope) -> Unit + val action: (Context, GoogleMap3D, CoroutineScope) -> Unit ) object SnippetRegistry { @@ -51,11 +57,11 @@ object SnippetRegistry { addedElements.forEach { item -> try { when (item) { - is com.google.android.gms.maps3d.model.Marker -> item.remove() - is com.google.android.gms.maps3d.model.Polyline -> item.remove() - is com.google.android.gms.maps3d.model.Polygon -> item.remove() - is com.google.android.gms.maps3d.model.Model -> item.remove() - is com.google.android.gms.maps3d.Popover -> item.remove() + is Marker -> item.remove() + is Polyline -> item.remove() + is Polygon -> item.remove() + is Model -> item.remove() + is Popover -> item.remove() } } catch (e: Exception) { // Ignore failures to avoid crashing if already cleanup or invalid @@ -124,12 +130,12 @@ object SnippetRegistry { return groups } - private fun createInstance(clazz: Class<*>, context: Context, map: TrackedMap3D, scope: kotlinx.coroutines.CoroutineScope): Any { + private fun createInstance(clazz: Class<*>, context: Context, map: TrackedMap3D, scope: CoroutineScope): Any { return try { - clazz.getConstructor(Context::class.java, TrackedMap3D::class.java, kotlinx.coroutines.CoroutineScope::class.java).newInstance(context, map, scope) + clazz.getConstructor(Context::class.java, TrackedMap3D::class.java, CoroutineScope::class.java).newInstance(context, map, scope) } catch (e: Exception) { try { - clazz.getConstructor(TrackedMap3D::class.java, kotlinx.coroutines.CoroutineScope::class.java).newInstance(map, scope) + clazz.getConstructor(TrackedMap3D::class.java, CoroutineScope::class.java).newInstance(map, scope) } catch (e: Exception) { try { clazz.getConstructor(Context::class.java, TrackedMap3D::class.java).newInstance(context, map) diff --git a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt index 72543b4b..f79ddf07 100644 --- a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt +++ b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt @@ -1,6 +1,10 @@ package com.example.snippets.kotlin import com.google.android.gms.maps3d.GoogleMap3D +import com.google.android.gms.maps3d.OnCameraChangedListener +import com.google.android.gms.maps3d.OnMap3DClickListener +import com.google.android.gms.maps3d.OnMapReadyListener +import com.google.android.gms.maps3d.OnMapSteadyListener import com.google.android.gms.maps3d.model.Marker import com.google.android.gms.maps3d.model.MarkerOptions import com.google.android.gms.maps3d.model.Polyline @@ -10,6 +14,9 @@ import com.google.android.gms.maps3d.model.PolygonOptions import com.google.android.gms.maps3d.model.Model import com.google.android.gms.maps3d.model.ModelOptions import com.google.android.gms.maps3d.Popover +import com.google.android.gms.maps3d.model.Camera +import com.google.android.gms.maps3d.model.FlyAroundOptions +import com.google.android.gms.maps3d.model.FlyToOptions import com.google.android.gms.maps3d.model.PopoverOptions /** @@ -50,15 +57,15 @@ class TrackedMap3D( return popover } - fun setCamera(camera: com.google.android.gms.maps3d.model.Camera) = delegate.setCamera(camera) - fun setCameraChangedListener(listener: com.google.android.gms.maps3d.OnCameraChangedListener?) = delegate.setCameraChangedListener(listener) - fun setMap3DClickListener(listener: com.google.android.gms.maps3d.OnMap3DClickListener?) = delegate.setMap3DClickListener(listener) + fun setCamera(camera: Camera) = delegate.setCamera(camera) + fun setCameraChangedListener(listener: OnCameraChangedListener?) = delegate.setCameraChangedListener(listener) + fun setMap3DClickListener(listener: OnMap3DClickListener?) = delegate.setMap3DClickListener(listener) // Pass-through standard map calls if any are invoked inside snippets fun getCamera() = delegate.getCamera() fun stopCameraAnimation() = delegate.stopCameraAnimation() - fun flyCameraTo(options: com.google.android.gms.maps3d.model.FlyToOptions) = delegate.flyCameraTo(options) - fun flyCameraAround(options: com.google.android.gms.maps3d.model.FlyAroundOptions) = delegate.flyCameraAround(options) - fun setOnMapReadyListener(listener: com.google.android.gms.maps3d.OnMapReadyListener?) = delegate.setOnMapReadyListener(listener) - fun setOnMapSteadyListener(listener: com.google.android.gms.maps3d.OnMapSteadyListener?) = delegate.setOnMapSteadyListener(listener) + fun flyCameraTo(options: FlyToOptions) = delegate.flyCameraTo(options) + fun flyCameraAround(options: FlyAroundOptions) = delegate.flyCameraAround(options) + fun setOnMapReadyListener(listener: OnMapReadyListener?) = delegate.setOnMapReadyListener(listener) + fun setOnMapSteadyListener(listener: OnMapSteadyListener?) = delegate.setOnMapSteadyListener(listener) } From 718952189fc14430ecc60cde14d45bf5b7e36d6b Mon Sep 17 00:00:00 2001 From: dkhawk <107309+dkhawk@users.noreply.github.com> Date: Thu, 19 Mar 2026 16:54:27 -0600 Subject: [PATCH 10/36] feat(snippets): Add camera movement to polygon snippets outside snippet tags --- .../snippets/java/snippets/PolygonSnippets.java | 8 ++++++++ .../snippets/kotlin/snippets/PolygonSnippets.kt | 16 ++++++++++++++++ 2 files changed, 24 insertions(+) diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java index 8e11681f..cccd283a 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java @@ -66,6 +66,10 @@ public void addBasicPolygon() { Polygon polygon = map.addPolygon(options); // [END maps_android_3d_polygon_add_java] + + com.google.android.gms.maps3d.model.Camera cam = new com.google.android.gms.maps3d.model.Camera(new LatLngAltitude(37.425, -122.085, 0.0), 0.0, 45.0, 0.0, 1000.0); + com.google.android.gms.maps3d.model.FlyToOptions flyTo = new com.google.android.gms.maps3d.model.FlyToOptions(cam, 3000L); + map.flyCameraTo(flyTo); } /** @@ -95,5 +99,9 @@ public void addExtrudedPolygon() { Polygon polygon = map.addPolygon(options); // [END maps_android_3d_polygon_extruded_java] + + com.google.android.gms.maps3d.model.Camera cam = new com.google.android.gms.maps3d.model.Camera(new LatLngAltitude(37.425, -122.085, 0.0), 0.0, 45.0, 0.0, 1000.0); + com.google.android.gms.maps3d.model.FlyToOptions flyTo = new com.google.android.gms.maps3d.model.FlyToOptions(cam, 3000L); + map.flyCameraTo(flyTo); } } diff --git a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt index a27323c4..787d3d87 100644 --- a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt +++ b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt @@ -58,6 +58,14 @@ class PolygonSnippets(private val map: TrackedMap3D) { val polygon = map.addPolygon(options) // [END maps_android_3d_polygon_add_kt] + + map.flyCameraTo(com.google.android.gms.maps3d.model.flyToOptions { + endCamera = com.google.android.gms.maps3d.model.camera { + center = latLngAltitude { latitude = 37.425; longitude = -122.085; altitude = 0.0 } + tilt = 45.0 + range = 1000.0 + } + }) } /** @@ -88,5 +96,13 @@ class PolygonSnippets(private val map: TrackedMap3D) { val polygon = map.addPolygon(options) // [END maps_android_3d_polygon_extruded_kt] + + map.flyCameraTo(com.google.android.gms.maps3d.model.flyToOptions { + endCamera = com.google.android.gms.maps3d.model.camera { + center = latLngAltitude { latitude = 37.425; longitude = -122.085; altitude = 0.0 } + tilt = 45.0 + range = 1000.0 + } + }) } } From 8ffdbaef1388379d9dbc3ccbda7475e9bfa22758 Mon Sep 17 00:00:00 2001 From: dkhawk <107309+dkhawk@users.noreply.github.com> Date: Thu, 19 Mar 2026 17:03:00 -0600 Subject: [PATCH 11/36] feat(snippets): Update Java polygon camera positions to match Kotlin --- .../snippets/java/snippets/PolygonSnippets.java | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java index cccd283a..ee31149a 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java @@ -19,6 +19,8 @@ import android.graphics.Color; import com.example.snippets.java.TrackedMap3D; import com.google.android.gms.maps3d.model.AltitudeMode; +import com.google.android.gms.maps3d.model.Camera; +import com.google.android.gms.maps3d.model.FlyToOptions; import com.google.android.gms.maps3d.model.LatLngAltitude; import com.google.android.gms.maps3d.model.Polygon; import com.google.android.gms.maps3d.model.PolygonOptions; @@ -67,8 +69,8 @@ public void addBasicPolygon() { Polygon polygon = map.addPolygon(options); // [END maps_android_3d_polygon_add_java] - com.google.android.gms.maps3d.model.Camera cam = new com.google.android.gms.maps3d.model.Camera(new LatLngAltitude(37.425, -122.085, 0.0), 0.0, 45.0, 0.0, 1000.0); - com.google.android.gms.maps3d.model.FlyToOptions flyTo = new com.google.android.gms.maps3d.model.FlyToOptions(cam, 3000L); + Camera cam = new Camera(new LatLngAltitude(37.424968, -122.084874, 19.90), 0.0, 45.02, 0.0, 4643.0); + FlyToOptions flyTo = new FlyToOptions(cam, 1000L); map.flyCameraTo(flyTo); } @@ -100,8 +102,8 @@ public void addExtrudedPolygon() { Polygon polygon = map.addPolygon(options); // [END maps_android_3d_polygon_extruded_java] - com.google.android.gms.maps3d.model.Camera cam = new com.google.android.gms.maps3d.model.Camera(new LatLngAltitude(37.425, -122.085, 0.0), 0.0, 45.0, 0.0, 1000.0); - com.google.android.gms.maps3d.model.FlyToOptions flyTo = new com.google.android.gms.maps3d.model.FlyToOptions(cam, 3000L); + Camera cam = new Camera(new LatLngAltitude(37.424968, -122.084874, 19.90), 0.0, 45.02, 0.0, 4643.0); + FlyToOptions flyTo = new FlyToOptions(cam, 1000L); map.flyCameraTo(flyTo); } } From 2eaf59bda808d9f1e44d82ae4464dcc29343c2e9 Mon Sep 17 00:00:00 2001 From: dkhawk <107309+dkhawk@users.noreply.github.com> Date: Thu, 19 Mar 2026 17:36:36 -0600 Subject: [PATCH 12/36] Update Popover and Place snippets with coordinates and camera support --- .../snippets/java/snippets/PlaceSnippets.java | 21 +++++++++-- .../java/snippets/PopoverSnippets.java | 24 +++++++++++-- .../snippets/kotlin/snippets/PlaceSnippets.kt | 25 +++++++++++-- .../kotlin/snippets/PopoverSnippets.kt | 36 +++++++++++++++++-- 4 files changed, 98 insertions(+), 8 deletions(-) diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PlaceSnippets.java b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PlaceSnippets.java index fc8d7136..cb9d56bd 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PlaceSnippets.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PlaceSnippets.java @@ -18,9 +18,15 @@ import androidx.annotation.NonNull; import androidx.annotation.Nullable; +import android.content.Context; +import android.os.Handler; +import android.os.Looper; +import android.widget.Toast; import com.example.snippets.java.TrackedMap3D; import com.google.android.gms.maps3d.OnMap3DClickListener; import com.google.android.gms.maps3d.model.LatLngAltitude; +import com.google.android.gms.maps3d.model.Camera; +import com.google.android.gms.maps3d.model.FlyToOptions; import com.example.snippets.java.annotations.SnippetGroup; import com.example.snippets.java.annotations.SnippetItem; @@ -30,9 +36,11 @@ ) public class PlaceSnippets { + private final Context context; private final TrackedMap3D map; - public PlaceSnippets(TrackedMap3D map) { + public PlaceSnippets(Context context, TrackedMap3D map) { + this.context = context; this.map = map; } @@ -50,10 +58,19 @@ public void listenToPlaceClicks() { @Override public void onMap3DClick(@NonNull LatLngAltitude location, @Nullable String placeId) { if (placeId != null) { - // Handle place click + // Handle place click - Show a Toast on the UI thread + new Handler(Looper.getMainLooper()).post(() -> { + Toast.makeText(context, "Clicked Place ID: " + placeId, Toast.LENGTH_SHORT).show(); + }); } } }); // [END maps_android_3d_place_click_java] + + // Position the camera to show the buildings (Empire State Building area) + LatLngAltitude position = new LatLngAltitude(40.7484, -73.9857, 0.0); + Camera targetCamera = new Camera(position, 0.0, 45.0, 0.0, 500.0); + FlyToOptions options = new FlyToOptions(targetCamera, 2000L); + map.flyCameraTo(options); } } diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java index bfe34554..4b0cd24f 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java @@ -27,6 +27,8 @@ import com.google.android.gms.maps3d.model.MarkerOptions; import com.google.android.gms.maps3d.Popover; import com.google.android.gms.maps3d.model.PopoverOptions; +import com.google.android.gms.maps3d.model.Camera; +import com.google.android.gms.maps3d.model.FlyToOptions; import com.example.snippets.java.annotations.SnippetGroup; import com.example.snippets.java.annotations.SnippetItem; @@ -90,16 +92,34 @@ public void addPopoverToMarker() { ) public void addConfiguredPopover() { // [START maps_android_3d_popover_options_java] + // Create a marker at an interesting location (e.g., Golden Gate Bridge) + MarkerOptions markerOptions = new MarkerOptions(); + LatLngAltitude position = new LatLngAltitude(37.8199, -122.4783, 0.0); + markerOptions.setPosition(position); + markerOptions.setLabel("Golden Gate Bridge"); + Marker marker = map.addMarker(markerOptions); + if (marker == null) return; + TextView textView = new TextView(context); textView.setText(com.example.snippets.common.R.string.popover_info); + textView.setPadding(16, 16, 16, 16); + textView.setBackgroundColor(Color.WHITE); PopoverOptions options = new PopoverOptions(); options.setContent(textView); - options.setPositionAnchor(new LatLngAltitude(0, 0, 0)); + options.setPositionAnchor(marker); options.setAutoCloseEnabled(true); // Close when clicking elsewhere options.setAutoPanEnabled(false); // Do not pan to popover - map.addPopover(options); + Popover popover = map.addPopover(options); + if (popover != null) { + popover.show(); + } // [END maps_android_3d_popover_options_java] + + // Position the camera to show the marker/popover + Camera targetCamera = new Camera(position, 0.0, 45.0, 0.0, 1000.0); + FlyToOptions flyToOptions = new FlyToOptions(targetCamera, 2000L); + map.flyCameraTo(flyToOptions); } } diff --git a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt index 5a0c2d0a..0a87921b 100644 --- a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt +++ b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt @@ -16,15 +16,22 @@ package com.example.snippets.kotlin.snippets +import android.content.Context +import android.os.Handler +import android.os.Looper +import android.widget.Toast import com.example.snippets.kotlin.TrackedMap3D import com.example.snippets.kotlin.annotations.SnippetGroup import com.example.snippets.kotlin.annotations.SnippetItem +import com.google.android.gms.maps3d.model.camera +import com.google.android.gms.maps3d.model.flyToOptions +import com.google.android.gms.maps3d.model.latLngAltitude @SnippetGroup( title = "Places", description = "Snippets demonstrating Place (POI/Building) interaction algorithms." ) -class PlaceSnippets(private val map: TrackedMap3D) { +class PlaceSnippets(private val context: Context, private val map: TrackedMap3D) { /** * Listens for clicks on 3D Places (buildings, POIs). */ @@ -37,9 +44,23 @@ class PlaceSnippets(private val map: TrackedMap3D) { // [START maps_android_3d_place_click_kt] map.setMap3DClickListener { location, placeId -> if (placeId != null) { - // Handle place click + // Handle place click - Show a Toast on the UI thread + Handler(Looper.getMainLooper()).post { + Toast.makeText(context, "Clicked Place ID: $placeId", Toast.LENGTH_SHORT).show() + } } } // [END maps_android_3d_place_click_kt] + + // Position the camera to show the buildings (Empire State Building area) + map.flyCameraTo(flyToOptions { + endCamera = camera { + center = latLngAltitude { latitude = 40.7484; longitude = -73.9857; altitude = 0.0 } + tilt = 45.0 + heading = 0.0 + range = 500.0 + } + durationInMillis = 2000 + }) } } diff --git a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt index 085b17b3..43ea2ed7 100644 --- a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt +++ b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt @@ -24,6 +24,8 @@ import com.example.snippets.kotlin.TrackedMap3D import com.example.snippets.kotlin.annotations.SnippetGroup import com.example.snippets.kotlin.annotations.SnippetItem import com.google.android.gms.maps3d.model.AltitudeMode +import com.google.android.gms.maps3d.model.camera +import com.google.android.gms.maps3d.model.flyToOptions import com.google.android.gms.maps3d.model.latLngAltitude import com.google.android.gms.maps3d.model.markerOptions import com.google.android.gms.maps3d.model.popoverOptions @@ -69,6 +71,16 @@ class PopoverSnippets(private val context: Context, private val map: TrackedMap3 // You can show/hide it popover?.show() // [END maps_android_3d_popover_add_kt] + + map.flyCameraTo(flyToOptions { + endCamera = camera { + center = latLngAltitude { latitude = 37.422; longitude = -122.084; altitude = 0.0 } + tilt = 45.0 + heading = 0.0 + range = 2000.0 + } + durationInMillis = 1000 + }) } /** @@ -81,18 +93,38 @@ class PopoverSnippets(private val context: Context, private val map: TrackedMap3 ) fun addConfiguredPopover() { // [START maps_android_3d_popover_options_kt] + // Create a marker at an interesting location (e.g., Golden Gate Bridge) + val markerOptions = markerOptions { + position = latLngAltitude { latitude = 37.8199; longitude = -122.4783; altitude = 0.0 } + label = "Golden Gate Bridge" + } + val marker = map.addMarker(markerOptions) ?: return + val textView = TextView(context).apply { text = context.getString(com.example.snippets.common.R.string.popover_info) + setPadding(16, 16, 16, 16) + setBackgroundColor(Color.WHITE) } val options = popoverOptions { content = textView - positionAnchor = latLngAltitude { latitude = 0.0; longitude = 0.0; altitude = 0.0 } + positionAnchor = marker autoCloseEnabled = true // Close when clicking elsewhere autoPanEnabled = false // Do not pan to popover } - map.addPopover(options) + val popover = map.addPopover(options) + popover?.show() // [END maps_android_3d_popover_options_kt] + + map.flyCameraTo(flyToOptions { + endCamera = camera { + center = latLngAltitude { latitude = 37.8199; longitude = -122.4783; altitude = 0.0 } + tilt = 45.0 + heading = 0.0 + range = 1000.0 + } + durationInMillis = 2000 + }) } } From 12d74c4e1bbfa2f5e2bae9c47da03d60d7d9ad7d Mon Sep 17 00:00:00 2001 From: dkhawk <107309+dkhawk@users.noreply.github.com> Date: Thu, 19 Mar 2026 17:37:57 -0600 Subject: [PATCH 13/36] Update Polyline and Polygon snippets with camera framing coordinates --- .../java/snippets/PolylineSnippets.java | 10 ++++++ .../kotlin/snippets/PolygonSnippets.kt | 34 +++++++++++++------ .../kotlin/snippets/PolylineSnippets.kt | 34 +++++++++++++++++-- 3 files changed, 66 insertions(+), 12 deletions(-) diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java index 9e845867..c1991474 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java @@ -26,6 +26,8 @@ import java.util.List; import com.example.snippets.java.annotations.SnippetGroup; import com.example.snippets.java.annotations.SnippetItem; +import com.google.android.gms.maps3d.model.Camera; +import com.google.android.gms.maps3d.model.FlyToOptions; @SnippetGroup( title = "Polylines", @@ -63,6 +65,10 @@ public void addBasicPolyline() { Polyline polyline = map.addPolyline(options); // [END maps_android_3d_polyline_add_java] + + Camera camera = new Camera(new LatLngAltitude(37.43, -122.085, 0.0), 0.0, 45.0, 0.0, 5000.0); + FlyToOptions flyToOptions = new FlyToOptions(camera, 1000L); + map.flyCameraTo(flyToOptions); } /** @@ -93,5 +99,9 @@ public void addStyledPolyline() { Polyline polyline = map.addPolyline(options); // [END maps_android_3d_polyline_options_java] + + Camera camera = new Camera(new LatLngAltitude(37.425, -122.085, 0.0), 0.0, 45.0, 0.0, 4000.0); + FlyToOptions flyToOptions = new FlyToOptions(camera, 1000L); + map.flyCameraTo(flyToOptions); } } diff --git a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt index 787d3d87..3e8f705e 100644 --- a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt +++ b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt @@ -21,6 +21,8 @@ import com.example.snippets.kotlin.TrackedMap3D import com.example.snippets.kotlin.annotations.SnippetGroup import com.example.snippets.kotlin.annotations.SnippetItem import com.google.android.gms.maps3d.model.AltitudeMode +import com.google.android.gms.maps3d.model.camera +import com.google.android.gms.maps3d.model.flyToOptions import com.google.android.gms.maps3d.model.latLngAltitude import com.google.android.gms.maps3d.model.polygonOptions @@ -59,12 +61,18 @@ class PolygonSnippets(private val map: TrackedMap3D) { val polygon = map.addPolygon(options) // [END maps_android_3d_polygon_add_kt] - map.flyCameraTo(com.google.android.gms.maps3d.model.flyToOptions { - endCamera = com.google.android.gms.maps3d.model.camera { - center = latLngAltitude { latitude = 37.425; longitude = -122.085; altitude = 0.0 } - tilt = 45.0 - range = 1000.0 + map.flyCameraTo(flyToOptions { + endCamera = camera { + center = latLngAltitude { + latitude = 37.424968 + longitude = -122.084874 + altitude = 19.90 + } + tilt = 45.02 + heading = 0.0 + range = 4643.0 } + durationInMillis = 1000 }) } @@ -97,12 +105,18 @@ class PolygonSnippets(private val map: TrackedMap3D) { val polygon = map.addPolygon(options) // [END maps_android_3d_polygon_extruded_kt] - map.flyCameraTo(com.google.android.gms.maps3d.model.flyToOptions { - endCamera = com.google.android.gms.maps3d.model.camera { - center = latLngAltitude { latitude = 37.425; longitude = -122.085; altitude = 0.0 } - tilt = 45.0 - range = 1000.0 + map.flyCameraTo(flyToOptions { + endCamera = camera { + center = latLngAltitude { + latitude = 37.424968 + longitude = -122.084874 + altitude = 19.90 + } + tilt = 45.02 + heading = 0.0 + range = 4643.0 } + durationInMillis = 1000 }) } } diff --git a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt index 2624ad29..0ac6ad6f 100644 --- a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt +++ b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt @@ -21,6 +21,8 @@ import com.example.snippets.kotlin.TrackedMap3D import com.example.snippets.kotlin.annotations.SnippetGroup import com.example.snippets.kotlin.annotations.SnippetItem import com.google.android.gms.maps3d.model.AltitudeMode +import com.google.android.gms.maps3d.model.camera +import com.google.android.gms.maps3d.model.flyToOptions import com.google.android.gms.maps3d.model.latLngAltitude import com.google.android.gms.maps3d.model.polylineOptions @@ -55,6 +57,20 @@ class PolylineSnippets(private val map: TrackedMap3D) { val polyline = map.addPolyline(options) // [END maps_android_3d_polyline_add_kt] + + map.flyCameraTo(flyToOptions { + endCamera = camera { + center = latLngAltitude { + latitude = 37.43 + longitude = -122.085 + altitude = 0.0 + } + tilt = 45.0 + heading = 0.0 + range = 5000.0 + } + durationInMillis = 1000 + }) } /** @@ -75,9 +91,9 @@ class PolylineSnippets(private val map: TrackedMap3D) { val options = polylineOptions { path = points strokeColor = 0xFFFF00FF.toInt() // Magenta - strokeWidth = 20.0 + strokeWidth = 2.0 outerColor = 0xFF00FF00.toInt() // Green - outerWidth = 2.0 + outerWidth = 1.0 altitudeMode = AltitudeMode.RELATIVE_TO_GROUND extruded = true geodesic = true @@ -86,5 +102,19 @@ class PolylineSnippets(private val map: TrackedMap3D) { val polyline = map.addPolyline(options) // [END maps_android_3d_polyline_options_kt] + + map.flyCameraTo(flyToOptions { + endCamera = camera { + center = latLngAltitude { + latitude = 37.425 + longitude = -122.085 + altitude = 0.0 + } + tilt = 45.0 + heading = 0.0 + range = 4000.0 + } + durationInMillis = 1000 + }) } } From a046580679aa27b6a114d402f4a1528061b64f42 Mon Sep 17 00:00:00 2001 From: dkhawk <107309+dkhawk@users.noreply.github.com> Date: Thu, 19 Mar 2026 17:50:57 -0600 Subject: [PATCH 14/36] Update Model snippets with UFO model configuration and camera framing --- .../snippets/java/snippets/ModelSnippets.java | 38 +++++-------- .../snippets/kotlin/snippets/ModelSnippets.kt | 54 ++++++++----------- 2 files changed, 36 insertions(+), 56 deletions(-) diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java index cf1c0fc2..be0e320c 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java @@ -23,6 +23,8 @@ import com.google.android.gms.maps3d.model.ModelOptions; import com.google.android.gms.maps3d.model.Orientation; import com.google.android.gms.maps3d.model.Vector3D; +import com.google.android.gms.maps3d.model.Camera; +import com.google.android.gms.maps3d.model.FlyToOptions; import com.example.snippets.java.annotations.SnippetGroup; import com.example.snippets.java.annotations.SnippetItem; @@ -32,6 +34,8 @@ ) public class ModelSnippets { + public static final String SAUCER_URL = "https://storage.googleapis.com/gmp-maps-demos/p3d-map/assets/UFO.glb"; + private final TrackedMap3D map; public ModelSnippets(TrackedMap3D map) { @@ -48,37 +52,21 @@ public ModelSnippets(TrackedMap3D map) { ) public void addBasicModel() { // [START maps_android_3d_model_add_java] - LatLngAltitude position = new LatLngAltitude(37.4220, -122.0841, 0.0); + LatLngAltitude position = new LatLngAltitude(37.4220, -122.0841, 100.0); ModelOptions options = new ModelOptions(); options.setPosition(position); - options.setUrl("https://example.com/model.glb"); - options.setAltitudeMode(AltitudeMode.CLAMP_TO_GROUND); + options.setUrl(SAUCER_URL); + options.setAltitudeMode(AltitudeMode.RELATIVE_TO_MESH); + options.setOrientation(new Orientation(0.0, 90.0, 0.0)); // heading, tilt, roll + options.setScale(new Vector3D(10.0, 10.0, 10.0)); Model model = map.addModel(options); // [END maps_android_3d_model_add_java] - } - - /** - * Adds a 3D model with advanced configuration (scale, orientation). - */ - @SuppressWarnings("unused") - @SnippetItem( - title = "2. Advanced", - description = "Loads a GLB model with advanced configuration (scale, orientation) from assets." - ) - public void addAdvancedModel() { - // [START maps_android_3d_model_options_java] - LatLngAltitude position = new LatLngAltitude(37.4220, -122.0841, 10.0); - ModelOptions options = new ModelOptions(); - options.setPosition(position); - options.setUrl("file:///android_asset/my_model.glb"); - options.setScale(new Vector3D(2.0, 2.0, 2.0)); - options.setOrientation(new Orientation(0.0, 45.0, 0.0)); // heading, tilt, roll - options.setAltitudeMode(AltitudeMode.RELATIVE_TO_GROUND); - - Model model = map.addModel(options); - // [END maps_android_3d_model_options_java] + // Position camera to see the model + Camera targetCamera = new Camera(position, 0.0, 45.0, 0.0, 300.0); + FlyToOptions flyToOptions = new FlyToOptions(targetCamera, 2000L); + map.flyCameraTo(flyToOptions); } } diff --git a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt index 7669c881..7a286475 100644 --- a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt +++ b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt @@ -20,6 +20,8 @@ import com.example.snippets.kotlin.TrackedMap3D import com.example.snippets.kotlin.annotations.SnippetGroup import com.example.snippets.kotlin.annotations.SnippetItem import com.google.android.gms.maps3d.model.AltitudeMode +import com.google.android.gms.maps3d.model.camera +import com.google.android.gms.maps3d.model.flyToOptions import com.google.android.gms.maps3d.model.latLngAltitude import com.google.android.gms.maps3d.model.modelOptions import com.google.android.gms.maps3d.model.orientation @@ -30,6 +32,9 @@ import com.google.android.gms.maps3d.model.vector3D description = "Snippets demonstrating 3D Model (GLB) integration and configuration." ) class ModelSnippets(private val map: TrackedMap3D) { + companion object { + const val SAUCER_URL = "https://storage.googleapis.com/gmp-maps-demos/p3d-map/assets/UFO.glb" + } /** * Adds a basic 3D model (GLB) to the map from a URL. @@ -44,46 +49,33 @@ class ModelSnippets(private val map: TrackedMap3D) { val position = latLngAltitude { latitude = 37.4220 longitude = -122.0841 - altitude = 0.0 + altitude = 100.0 } - + val options = modelOptions { this.position = position - url = "https://example.com/model.glb" - altitudeMode = AltitudeMode.CLAMP_TO_GROUND + url = SAUCER_URL + altitudeMode = AltitudeMode.RELATIVE_TO_MESH + orientation = orientation { + tilt = 90.0 + heading = 0.0 + roll = 0.0 + } + scale = vector3D { x = 10.0; y = 10.0; z = 10.0 } } - + val model = map.addModel(options) // [END maps_android_3d_model_add_kt] - } - /** - * Adds a 3D model with advanced configuration (scale, orientation). - */ - @Suppress("unused") - @SnippetItem( - title = "2. Advanced", - description = "Loads a GLB model with advanced configuration (scale, orientation) from assets." - ) - fun addAdvancedModel() { - // [START maps_android_3d_model_options_kt] - val options = modelOptions { - position = latLngAltitude { - latitude = 37.4220 - longitude = -122.0841 - altitude = 10.0 - } - url = "file:///android_asset/my_model.glb" - scale = vector3D { x = 2.0; y = 2.0; z = 2.0 } - orientation = orientation { + // Position the camera to show the model + map.flyCameraTo(flyToOptions { + endCamera = camera { + center = position tilt = 45.0 heading = 0.0 - roll = 0.0 + range = 300.0 } - altitudeMode = AltitudeMode.RELATIVE_TO_GROUND - } - - val model = map.addModel(options) - // [END maps_android_3d_model_options_kt] + durationInMillis = 2000 + }) } } From b259d659da10310fcf85bd70540c068918af7986 Mon Sep 17 00:00:00 2001 From: dkhawk <107309+dkhawk@users.noreply.github.com> Date: Thu, 19 Mar 2026 17:55:19 -0600 Subject: [PATCH 15/36] Update Catalog Generator with Concept Index and refresh CATALOG.md --- snippets/CATALOG.md | 877 ++++++++++++++++++++------------ snippets/scripts/catalog_api.py | 101 +++- 2 files changed, 663 insertions(+), 315 deletions(-) diff --git a/snippets/CATALOG.md b/snippets/CATALOG.md index db5e9c0f..0ba2807d 100644 --- a/snippets/CATALOG.md +++ b/snippets/CATALOG.md @@ -1,25 +1,192 @@ -# Maps3D API Snippets Catalog - -This document was auto-generated by `scripts/catalog_api.py`. It serves as a cross-reference matrix ensuring that every critical feature in the 3D Maps SDK is actively demonstrated inside a snippet boundary (`// [START ...]`). +# 🗺️ Maps3D API Snippets Catalog + +This document serves as a comprehensive developer reference and mapping matrix for the 3D Maps SDK features. + +## 📑 Snippet Concepts Index + +This section maps high-level concepts (groups) to specific demonstration files and lines in both languages. + +### Camera +> Snippets demonstrating dynamic camera orchestration and animations. + +- **1. Fly To**: + - *Description*: Animates the camera to a specific position with a tilt and heading over 5 seconds. + - *Links*: Kotlin: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:45](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L45) | Java: [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:48](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L48) +- **2. Fly Around**: + - *Description*: Rotates the camera 360 degrees around a specific location over 10 seconds. + - *Links*: Kotlin: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:76](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L76) | Java: [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:68](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L68) +- **3. Stop Animation**: + - *Description*: Stops any currently running camera animation immediately. + - *Links*: Kotlin: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:120](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L120) | Java: [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:99](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L99) +- **4. Listen Camera Events**: + - *Description*: Logs camera change events to the console, printing the center coordinates as the camera moves. + - *Links*: Kotlin: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:171](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L171) | Java: [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:121](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L121) +- **5. Listen Steady State**: + - *Description*: Logs to the console when the map finishes rendering or enters a steady state. + - *Links*: Kotlin: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:202](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L202) | Java: [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:152](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L152) + +### Map Initialization +> Snippets demonstrating map lifecycle, listeners and readiness states. + +- **1. Listen Events**: + - *Links*: Kotlin: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:87](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L87) +- **1. Basic Map3D Initialization**: + - *Description*: Initializes a standard 3D Map View and sets an initial camera angle. + - *Links*: Java: [java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java:38](java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java#L38) +- **2. Add Map to AndroidView**: + - *Description*: Shows how to add a Map3DView to an AndroidView which bridges to Jetpack Compose. + - *Links*: Kotlin: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:48](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L48) +- **2. Listen Map Events**: + - *Description*: Logs map events to the console, such as clicks or idle status. + - *Links*: Java: [java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java:69](java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java#L69) + +### Markers +> Snippets demonstrating standard, extruded, and custom styled markers. + +- **1. Basic**: + - *Description*: Adds a standard marker. + - *Links*: Kotlin: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:48](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L48) | Java: [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:59](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L59) +- **2. Advanced**: + - *Description*: Adds a 'Priority Marker' that is extruded and collides with other markers. + - *Links*: Kotlin: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:89](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L89) | Java: [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:88](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L88) +- **3. Click**: + - *Description*: Adds a marker that logs a message when clicked. + - *Links*: Kotlin: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:131](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L131) | Java: [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:120](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L120) +- **4. Custom Icon**: + - *Description*: Adds a marker with a custom icon using PinConfiguration and Glyph styling. + - *Links*: Kotlin: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:165](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L165) | Java: [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:159](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L159) + +### Models +> + +- **1. Basic**: + - *Description*: Loads a GLB model from a URL and places it clamped to the ground. + - *Links*: Kotlin: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:43](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L43) | Java: [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java:49](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L49) + +### Places +> + +- **1. Listen Clicks**: + - *Description*: Sets up a listener that logs the Place ID when a user clicks on a 3D building or POI. + - *Links*: Kotlin: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:39](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L39) | Java: [java-app/src/main/java/com/example/snippets/java/snippets/PlaceSnippets.java:51](java-app/src/main/java/com/example/snippets/java/snippets/PlaceSnippets.java#L51) + +### Polygons +> Snippets demonstrating 2D and 3D extruded polygon layers on the map. + +- **1. Basic**: + - *Description*: Draws a red polygon with a blue stroke around a small area + - *Links*: Kotlin: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:39](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L39) | Java: [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:48](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L48) +- **2. Extruded**: + - *Links*: Kotlin: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:83](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L83) | Java: [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:81](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L81) + +### Polylines +> Snippets demonstrating 2D and 3D extruded polyline paths on the map. + +- **1. Basic**: + - *Description*: Draws a thick red polyline connecting three points + - *Links*: Kotlin: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:39](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L39) | Java: [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:48](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L48) +- **2. Styled**: + - *Links*: Kotlin: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:80](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L80) | Java: [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:78](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L78) + +### Popovers +> Snippets demonstrating anchored and configured 3D Popover views. + +- **1. Marker Anchor**: + - *Description*: Adds a 'Hello Popover!' text bubble anchored to a marker + - *Links*: Kotlin: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:43](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L43) | Java: [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:53](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L53) +- **2. Configured**: + - *Description*: Adds an 'Info' popover anchored to a marker with auto-close enabled and auto-pan disabled. + - *Links*: Kotlin: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:90](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L90) | Java: [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:89](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L89) + + +--- + +## 📊 Maps3D API Coverage Matrix + +This matrix ensures that every critical feature in the 3D Maps SDK is actively demonstrated inside a snippet boundary (`// [START ...]`). ## Kotlin Snippets ### `Camera` - `getCenter`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:93](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L93) (Tag: `maps_android_3d_camera_events_kt`) + - [MapActivity.kt:58](MapActivity.kt#L58) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:183](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L183) (Tag: `maps_android_3d_camera_events_kt`) - `setCenter`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:34](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L34) (Tag: `maps_android_3d_camera_fly_to_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:58](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L58) (Tag: `maps_android_3d_camera_fly_around_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:49](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L49) (Tag: `maps_android_3d_init_basic_kt`) + - [MapActivity.kt:191](MapActivity.kt#L191) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:128](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L128) (Tag: `maps_android_3d_camera_stop_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:52](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L52) (Tag: `maps_android_3d_camera_fly_to_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:84](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L84) (Tag: `maps_android_3d_camera_fly_around_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:61](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L61) (Tag: `maps_android_3d_init_basic_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:112](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L112) (Tag: `maps_android_3d_marker_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:143](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L143) (Tag: `maps_android_3d_marker_click_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:196](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L196) (Tag: `maps_android_3d_marker_custom_icon_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:70](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L70) (Tag: `maps_android_3d_marker_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:73](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L73) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:58](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L58) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:110](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L110) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:66](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L66) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:108](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L108) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:63](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L63) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:122](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L122) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:77](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L77) (Tag: `No Tag`) - `setHeading`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:40](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L40) (Tag: `maps_android_3d_camera_fly_to_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:54](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L54) (Tag: `maps_android_3d_init_basic_kt`) + - [MapActivity.kt:197](MapActivity.kt#L197) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:134](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L134) (Tag: `maps_android_3d_camera_stop_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:58](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L58) (Tag: `maps_android_3d_camera_fly_to_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:90](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L90) (Tag: `maps_android_3d_camera_fly_around_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:66](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L66) (Tag: `maps_android_3d_init_basic_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:118](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L118) (Tag: `maps_android_3d_marker_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:145](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L145) (Tag: `maps_android_3d_marker_click_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:202](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L202) (Tag: `maps_android_3d_marker_custom_icon_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:76](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L76) (Tag: `maps_android_3d_marker_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:75](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L75) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:60](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L60) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:116](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L116) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:72](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L72) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:114](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L114) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:69](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L69) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:124](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L124) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:79](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L79) (Tag: `No Tag`) - `setRange`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:57](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L57) (Tag: `maps_android_3d_init_basic_kt`) + - [MapActivity.kt:198](MapActivity.kt#L198) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:135](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L135) (Tag: `maps_android_3d_camera_stop_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:59](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L59) (Tag: `maps_android_3d_camera_fly_to_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:91](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L91) (Tag: `maps_android_3d_camera_fly_around_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:69](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L69) (Tag: `maps_android_3d_init_basic_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:119](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L119) (Tag: `maps_android_3d_marker_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:146](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L146) (Tag: `maps_android_3d_marker_click_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:203](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L203) (Tag: `maps_android_3d_marker_custom_icon_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:77](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L77) (Tag: `maps_android_3d_marker_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:76](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L76) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:61](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L61) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:117](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L117) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:73](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L73) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:115](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L115) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:70](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L70) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:125](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L125) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:80](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L80) (Tag: `No Tag`) - `setRoll`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:56](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L56) (Tag: `maps_android_3d_init_basic_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:136](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L136) (Tag: `maps_android_3d_camera_stop_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:60](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L60) (Tag: `maps_android_3d_camera_fly_to_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:92](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L92) (Tag: `maps_android_3d_camera_fly_around_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:68](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L68) (Tag: `maps_android_3d_init_basic_kt`) - `setTilt`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:39](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L39) (Tag: `maps_android_3d_camera_fly_to_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:55](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L55) (Tag: `maps_android_3d_init_basic_kt`) + - [MapActivity.kt:196](MapActivity.kt#L196) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:133](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L133) (Tag: `maps_android_3d_camera_stop_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:57](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L57) (Tag: `maps_android_3d_camera_fly_to_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:89](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L89) (Tag: `maps_android_3d_camera_fly_around_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:67](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L67) (Tag: `maps_android_3d_init_basic_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:117](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L117) (Tag: `maps_android_3d_marker_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:144](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L144) (Tag: `maps_android_3d_marker_click_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:201](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L201) (Tag: `maps_android_3d_marker_custom_icon_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:75](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L75) (Tag: `maps_android_3d_marker_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:74](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L74) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:59](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L59) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:115](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L115) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:71](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L71) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:113](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L113) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:68](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L68) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:123](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L123) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:78](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L78) (Tag: `No Tag`) - `writeToParcel`: ❌ No coverage ### `CameraRestriction` @@ -37,27 +204,58 @@ This document was auto-generated by `scripts/catalog_api.py`. It serves as a cro - `getDurationInMillis`: ❌ No coverage - `getRounds`: ❌ No coverage - `setCenter`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:67](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L67) (Tag: `maps_android_3d_camera_fly_around_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:101](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L101) (Tag: `maps_android_3d_camera_fly_around_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:153](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L153) (Tag: `maps_android_3d_camera_stop_kt`) - `setDurationInMillis`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:69](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L69) (Tag: `maps_android_3d_camera_fly_around_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:103](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L103) (Tag: `maps_android_3d_camera_fly_around_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:155](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L155) (Tag: `maps_android_3d_camera_stop_kt`) - `setRounds`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:68](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L68) (Tag: `maps_android_3d_camera_fly_around_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:102](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L102) (Tag: `maps_android_3d_camera_fly_around_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:154](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L154) (Tag: `maps_android_3d_camera_stop_kt`) - `writeToParcel`: ❌ No coverage ### `FlyToOptions` - `getDurationInMillis`: ❌ No coverage - `getEndCamera`: ❌ No coverage - `setDurationInMillis`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:45](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L45) (Tag: `maps_android_3d_camera_fly_to_kt`) + - [MapActivity.kt:202](MapActivity.kt#L202) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:142](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L142) (Tag: `maps_android_3d_camera_stop_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:65](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L65) (Tag: `maps_android_3d_camera_fly_to_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:121](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L121) (Tag: `maps_android_3d_marker_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:148](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L148) (Tag: `maps_android_3d_marker_click_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:205](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L205) (Tag: `maps_android_3d_marker_custom_icon_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:79](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L79) (Tag: `maps_android_3d_marker_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:78](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L78) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:63](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L63) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:119](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L119) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:75](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L75) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:117](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L117) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:72](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L72) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:127](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L127) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:82](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L82) (Tag: `No Tag`) - `setEndCamera`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:44](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L44) (Tag: `maps_android_3d_camera_fly_to_kt`) + - [MapActivity.kt:201](MapActivity.kt#L201) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:141](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L141) (Tag: `maps_android_3d_camera_stop_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:64](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L64) (Tag: `maps_android_3d_camera_fly_to_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:111](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L111) (Tag: `maps_android_3d_marker_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:142](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L142) (Tag: `maps_android_3d_marker_click_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:195](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L195) (Tag: `maps_android_3d_marker_custom_icon_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:69](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L69) (Tag: `maps_android_3d_marker_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:72](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L72) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:57](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L57) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:109](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L109) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:65](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L65) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:107](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L107) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:62](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L62) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:121](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L121) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:76](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L76) (Tag: `No Tag`) - `writeToParcel`: ❌ No coverage ### `Glyph` - `equals`: ❌ No coverage - `fromCircle`: ❌ No coverage - `fromColor`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:99](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L99) (Tag: `maps_android_3d_marker_custom_icon_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:172](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L172) (Tag: `maps_android_3d_marker_custom_icon_kt`) - `fromText`: ❌ No coverage - `getColor`: ❌ No coverage - `getImage`: ❌ No coverage @@ -65,56 +263,56 @@ This document was auto-generated by `scripts/catalog_api.py`. It serves as a cro - `hashCode`: ❌ No coverage - `setColor`: ❌ No coverage - `setImage`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:101](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L101) (Tag: `maps_android_3d_marker_custom_icon_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:174](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L174) (Tag: `maps_android_3d_marker_custom_icon_kt`) - `setText`: ❌ No coverage - `writeToParcel`: ❌ No coverage ### `GoogleMap3D` - `addMarker`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:119](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L119) (Tag: `maps_android_3d_marker_custom_icon_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:50](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L50) (Tag: `maps_android_3d_marker_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:72](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L72) (Tag: `maps_android_3d_marker_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:81](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L81) (Tag: `maps_android_3d_marker_click_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:40](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L40) (Tag: `maps_android_3d_popover_add_kt`) + - [TrackedMap3D.kt:31](TrackedMap3D.kt#L31) (Tag: `No Tag`) - `addModel`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:45](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L45) (Tag: `maps_android_3d_model_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:70](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L70) (Tag: `maps_android_3d_model_options_kt`) + - [TrackedMap3D.kt:49](TrackedMap3D.kt#L49) (Tag: `No Tag`) - `addPolygon`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:48](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L48) (Tag: `maps_android_3d_polygon_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:73](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L73) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [TrackedMap3D.kt:43](TrackedMap3D.kt#L43) (Tag: `No Tag`) - `addPolyline`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:45](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L45) (Tag: `maps_android_3d_polyline_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:71](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L71) (Tag: `maps_android_3d_polyline_options_kt`) + - [TrackedMap3D.kt:37](TrackedMap3D.kt#L37) (Tag: `No Tag`) - `addPopover`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:56](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L56) (Tag: `maps_android_3d_popover_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:79](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L79) (Tag: `maps_android_3d_popover_options_kt`) + - [TrackedMap3D.kt:55](TrackedMap3D.kt#L55) (Tag: `No Tag`) - `flyCameraAround`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:72](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L72) (Tag: `maps_android_3d_camera_fly_around_kt`) + - [TrackedMap3D.kt:68](TrackedMap3D.kt#L68) (Tag: `No Tag`) - `flyCameraTo`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:48](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L48) (Tag: `maps_android_3d_camera_fly_to_kt`) -- `getCamera`: ❌ No coverage + - [MapActivity.kt:200](MapActivity.kt#L200) (Tag: `No Tag`) + - [TrackedMap3D.kt:67](TrackedMap3D.kt#L67) (Tag: `No Tag`) +- `getCamera`: + - [MapActivity.kt:57](MapActivity.kt#L57) (Tag: `No Tag`) + - [TrackedMap3D.kt:65](TrackedMap3D.kt#L65) (Tag: `No Tag`) - `getCameraRestriction`: ❌ No coverage - `getMapMode`: ❌ No coverage - `setCamera`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:55](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L55) (Tag: `maps_android_3d_init_basic_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:59](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L59) (Tag: `maps_android_3d_init_basic_kt`) -- `setCameraAnimationEndListener`: ❌ No coverage + - [TrackedMap3D.kt:60](TrackedMap3D.kt#L60) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:71](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L71) (Tag: `maps_android_3d_init_basic_kt`) +- `setCameraAnimationEndListener`: + - [MapExtensions.kt:19](MapExtensions.kt#L19) (Tag: `No Tag`) + - [MapExtensions.kt:20](MapExtensions.kt#L20) (Tag: `No Tag`) + - [MapExtensions.kt:27](MapExtensions.kt#L27) (Tag: `No Tag`) - `setCameraChangedListener`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:91](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L91) (Tag: `maps_android_3d_camera_events_kt`) + - [TrackedMap3D.kt:61](TrackedMap3D.kt#L61) (Tag: `No Tag`) - `setCameraRestriction`: ❌ No coverage - `setMap3DClickListener`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:31](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L31) (Tag: `maps_android_3d_place_click_kt`) + - [TrackedMap3D.kt:62](TrackedMap3D.kt#L62) (Tag: `No Tag`) - `setMapMode`: ❌ No coverage - `setOnMapReadyListener`: - - [MapActivity.kt:32](MapActivity.kt#L32) (Tag: `No Tag`) - - [MapActivity.kt:48](MapActivity.kt#L48) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:74](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L74) (Tag: `maps_android_3d_init_listeners_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:78](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L78) (Tag: `maps_android_3d_init_listeners_kt`) + - [MapActivity.kt:127](MapActivity.kt#L127) (Tag: `No Tag`) + - [TrackedMap3D.kt:69](TrackedMap3D.kt#L69) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:95](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L95) (Tag: `maps_android_3d_init_listeners_kt`) - `setOnMapSteadyListener`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:83](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L83) (Tag: `maps_android_3d_init_listeners_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:87](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L87) (Tag: `maps_android_3d_init_listeners_kt`) + - [MapExtensions.kt:40](MapExtensions.kt#L40) (Tag: `No Tag`) + - [MapExtensions.kt:42](MapExtensions.kt#L42) (Tag: `No Tag`) + - [MapExtensions.kt:51](MapExtensions.kt#L51) (Tag: `No Tag`) + - [TrackedMap3D.kt:70](TrackedMap3D.kt#L70) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:104](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L104) (Tag: `maps_android_3d_init_listeners_kt`) - `stopCameraAnimation`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:81](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L81) (Tag: `maps_android_3d_camera_stop_kt`) + - [TrackedMap3D.kt:66](TrackedMap3D.kt#L66) (Tag: `No Tag`) ### `Hole` - `getVertices`: ❌ No coverage @@ -129,91 +327,136 @@ This document was auto-generated by `scripts/catalog_api.py`. It serves as a cro - `writeToParcel`: ❌ No coverage ### `LatLngAltitude` -- `getAltitude`: ❌ No coverage -- `getLatitude`: ❌ No coverage -- `getLongitude`: ❌ No coverage +- `getAltitude`: + - [MapActivity.kt:73](MapActivity.kt#L73) (Tag: `No Tag`) +- `getLatitude`: + - [MapActivity.kt:71](MapActivity.kt#L71) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:113](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L113) (Tag: `maps_android_3d_marker_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:197](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L197) (Tag: `maps_android_3d_marker_custom_icon_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:71](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L71) (Tag: `maps_android_3d_marker_add_kt`) +- `getLongitude`: + - [MapActivity.kt:72](MapActivity.kt#L72) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:114](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L114) (Tag: `maps_android_3d_marker_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:198](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L198) (Tag: `maps_android_3d_marker_custom_icon_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:72](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L72) (Tag: `maps_android_3d_marker_add_kt`) - `getPosition`: ❌ No coverage - `setAltitude`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:37](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L37) (Tag: `maps_android_3d_camera_fly_to_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:61](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L61) (Tag: `maps_android_3d_camera_fly_around_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:52](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L52) (Tag: `maps_android_3d_init_basic_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:107](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L107) (Tag: `maps_android_3d_marker_custom_icon_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:41](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L41) (Tag: `maps_android_3d_marker_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:63](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L63) (Tag: `maps_android_3d_marker_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:82](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L82) (Tag: `maps_android_3d_marker_click_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:36](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L36) (Tag: `maps_android_3d_model_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:58](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L58) (Tag: `maps_android_3d_model_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:33](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L33) (Tag: `maps_android_3d_polygon_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:34](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L34) (Tag: `maps_android_3d_polygon_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:35](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L35) (Tag: `maps_android_3d_polygon_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:36](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L36) (Tag: `maps_android_3d_polygon_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:37](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L37) (Tag: `maps_android_3d_polygon_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:58](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L58) (Tag: `maps_android_3d_polygon_extruded_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:59](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L59) (Tag: `maps_android_3d_polygon_extruded_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:60](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L60) (Tag: `maps_android_3d_polygon_extruded_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:61](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L61) (Tag: `maps_android_3d_polygon_extruded_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:62](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L62) (Tag: `maps_android_3d_polygon_extruded_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:33](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L33) (Tag: `maps_android_3d_polyline_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:34](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L34) (Tag: `maps_android_3d_polyline_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:35](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L35) (Tag: `maps_android_3d_polyline_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:55](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L55) (Tag: `maps_android_3d_polyline_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:56](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L56) (Tag: `maps_android_3d_polyline_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:38](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L38) (Tag: `maps_android_3d_popover_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:74](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L74) (Tag: `maps_android_3d_popover_options_kt`) + - [MapActivity.kt:194](MapActivity.kt#L194) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:131](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L131) (Tag: `maps_android_3d_camera_stop_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:55](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L55) (Tag: `maps_android_3d_camera_fly_to_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:87](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L87) (Tag: `maps_android_3d_camera_fly_around_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:64](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L64) (Tag: `maps_android_3d_init_basic_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:115](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L115) (Tag: `maps_android_3d_marker_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:138](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L138) (Tag: `maps_android_3d_marker_click_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:143](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L143) (Tag: `maps_android_3d_marker_click_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:180](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L180) (Tag: `maps_android_3d_marker_custom_icon_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:199](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L199) (Tag: `maps_android_3d_marker_custom_icon_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:57](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L57) (Tag: `maps_android_3d_marker_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:73](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L73) (Tag: `maps_android_3d_marker_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:99](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L99) (Tag: `maps_android_3d_marker_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:52](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L52) (Tag: `maps_android_3d_model_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:58](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L58) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:113](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L113) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:46](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L46) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:47](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L47) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:48](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L48) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:49](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L49) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:50](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L50) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:69](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L69) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:90](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L90) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:91](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L91) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:92](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L92) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:93](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L93) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:94](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L94) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:111](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L111) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:46](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L46) (Tag: `maps_android_3d_polyline_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:47](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L47) (Tag: `maps_android_3d_polyline_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:48](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L48) (Tag: `maps_android_3d_polyline_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:66](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L66) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:87](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L87) (Tag: `maps_android_3d_polyline_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:88](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L88) (Tag: `maps_android_3d_polyline_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:122](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L122) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:51](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L51) (Tag: `maps_android_3d_popover_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:77](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L77) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:98](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L98) (Tag: `maps_android_3d_popover_options_kt`) - `setLatitude`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:35](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L35) (Tag: `maps_android_3d_camera_fly_to_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:59](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L59) (Tag: `maps_android_3d_camera_fly_around_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:50](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L50) (Tag: `maps_android_3d_init_basic_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:105](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L105) (Tag: `maps_android_3d_marker_custom_icon_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:39](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L39) (Tag: `maps_android_3d_marker_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:61](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L61) (Tag: `maps_android_3d_marker_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:82](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L82) (Tag: `maps_android_3d_marker_click_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:34](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L34) (Tag: `maps_android_3d_model_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:56](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L56) (Tag: `maps_android_3d_model_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:33](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L33) (Tag: `maps_android_3d_polygon_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:34](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L34) (Tag: `maps_android_3d_polygon_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:35](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L35) (Tag: `maps_android_3d_polygon_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:36](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L36) (Tag: `maps_android_3d_polygon_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:37](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L37) (Tag: `maps_android_3d_polygon_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:58](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L58) (Tag: `maps_android_3d_polygon_extruded_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:59](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L59) (Tag: `maps_android_3d_polygon_extruded_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:60](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L60) (Tag: `maps_android_3d_polygon_extruded_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:61](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L61) (Tag: `maps_android_3d_polygon_extruded_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:62](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L62) (Tag: `maps_android_3d_polygon_extruded_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:33](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L33) (Tag: `maps_android_3d_polyline_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:34](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L34) (Tag: `maps_android_3d_polyline_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:35](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L35) (Tag: `maps_android_3d_polyline_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:55](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L55) (Tag: `maps_android_3d_polyline_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:56](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L56) (Tag: `maps_android_3d_polyline_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:38](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L38) (Tag: `maps_android_3d_popover_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:74](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L74) (Tag: `maps_android_3d_popover_options_kt`) + - [MapActivity.kt:192](MapActivity.kt#L192) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:129](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L129) (Tag: `maps_android_3d_camera_stop_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:53](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L53) (Tag: `maps_android_3d_camera_fly_to_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:85](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L85) (Tag: `maps_android_3d_camera_fly_around_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:62](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L62) (Tag: `maps_android_3d_init_basic_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:113](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L113) (Tag: `maps_android_3d_marker_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:138](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L138) (Tag: `maps_android_3d_marker_click_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:143](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L143) (Tag: `maps_android_3d_marker_click_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:178](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L178) (Tag: `maps_android_3d_marker_custom_icon_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:197](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L197) (Tag: `maps_android_3d_marker_custom_icon_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:55](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L55) (Tag: `maps_android_3d_marker_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:71](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L71) (Tag: `maps_android_3d_marker_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:97](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L97) (Tag: `maps_android_3d_marker_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:50](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L50) (Tag: `maps_android_3d_model_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:58](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L58) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:111](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L111) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:46](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L46) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:47](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L47) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:48](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L48) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:49](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L49) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:50](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L50) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:67](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L67) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:90](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L90) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:91](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L91) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:92](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L92) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:93](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L93) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:94](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L94) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:109](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L109) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:46](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L46) (Tag: `maps_android_3d_polyline_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:47](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L47) (Tag: `maps_android_3d_polyline_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:48](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L48) (Tag: `maps_android_3d_polyline_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:64](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L64) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:87](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L87) (Tag: `maps_android_3d_polyline_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:88](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L88) (Tag: `maps_android_3d_polyline_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:122](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L122) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:51](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L51) (Tag: `maps_android_3d_popover_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:77](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L77) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:98](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L98) (Tag: `maps_android_3d_popover_options_kt`) - `setLongitude`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:36](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L36) (Tag: `maps_android_3d_camera_fly_to_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:60](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L60) (Tag: `maps_android_3d_camera_fly_around_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:51](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L51) (Tag: `maps_android_3d_init_basic_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:106](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L106) (Tag: `maps_android_3d_marker_custom_icon_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:40](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L40) (Tag: `maps_android_3d_marker_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:62](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L62) (Tag: `maps_android_3d_marker_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:82](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L82) (Tag: `maps_android_3d_marker_click_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:35](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L35) (Tag: `maps_android_3d_model_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:57](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L57) (Tag: `maps_android_3d_model_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:33](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L33) (Tag: `maps_android_3d_polygon_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:34](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L34) (Tag: `maps_android_3d_polygon_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:35](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L35) (Tag: `maps_android_3d_polygon_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:36](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L36) (Tag: `maps_android_3d_polygon_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:37](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L37) (Tag: `maps_android_3d_polygon_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:58](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L58) (Tag: `maps_android_3d_polygon_extruded_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:59](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L59) (Tag: `maps_android_3d_polygon_extruded_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:60](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L60) (Tag: `maps_android_3d_polygon_extruded_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:61](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L61) (Tag: `maps_android_3d_polygon_extruded_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:62](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L62) (Tag: `maps_android_3d_polygon_extruded_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:33](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L33) (Tag: `maps_android_3d_polyline_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:34](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L34) (Tag: `maps_android_3d_polyline_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:35](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L35) (Tag: `maps_android_3d_polyline_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:55](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L55) (Tag: `maps_android_3d_polyline_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:56](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L56) (Tag: `maps_android_3d_polyline_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:38](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L38) (Tag: `maps_android_3d_popover_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:74](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L74) (Tag: `maps_android_3d_popover_options_kt`) + - [MapActivity.kt:193](MapActivity.kt#L193) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:130](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L130) (Tag: `maps_android_3d_camera_stop_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:54](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L54) (Tag: `maps_android_3d_camera_fly_to_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:86](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L86) (Tag: `maps_android_3d_camera_fly_around_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:63](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L63) (Tag: `maps_android_3d_init_basic_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:114](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L114) (Tag: `maps_android_3d_marker_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:138](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L138) (Tag: `maps_android_3d_marker_click_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:143](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L143) (Tag: `maps_android_3d_marker_click_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:179](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L179) (Tag: `maps_android_3d_marker_custom_icon_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:198](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L198) (Tag: `maps_android_3d_marker_custom_icon_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:56](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L56) (Tag: `maps_android_3d_marker_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:72](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L72) (Tag: `maps_android_3d_marker_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:98](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L98) (Tag: `maps_android_3d_marker_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:51](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L51) (Tag: `maps_android_3d_model_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:58](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L58) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:112](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L112) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:46](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L46) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:47](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L47) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:48](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L48) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:49](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L49) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:50](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L50) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:68](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L68) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:90](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L90) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:91](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L91) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:92](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L92) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:93](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L93) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:94](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L94) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:110](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L110) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:46](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L46) (Tag: `maps_android_3d_polyline_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:47](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L47) (Tag: `maps_android_3d_polyline_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:48](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L48) (Tag: `maps_android_3d_polyline_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:65](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L65) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:87](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L87) (Tag: `maps_android_3d_polyline_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:88](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L88) (Tag: `maps_android_3d_polyline_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:122](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L122) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:51](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L51) (Tag: `maps_android_3d_popover_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:77](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L77) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:98](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L98) (Tag: `maps_android_3d_popover_options_kt`) - `writeToParcel`: ❌ No coverage ### `LatLngBounds` @@ -270,9 +513,8 @@ This document was auto-generated by `scripts/catalog_api.py`. It serves as a cro ### `Map3DView` - `getMap3DViewAsync`: - - [MapActivity.kt:29](MapActivity.kt#L29) (Tag: `No Tag`) - - [MapActivity.kt:45](MapActivity.kt#L45) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:46](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L46) (Tag: `maps_android_3d_init_basic_kt`) + - [MapActivity.kt:122](MapActivity.kt#L122) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:58](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L58) (Tag: `maps_android_3d_init_basic_kt`) - `getOverlayView`: ❌ No coverage - `getParams`: ❌ No coverage - `overlayView`: ❌ No coverage @@ -291,10 +533,11 @@ This document was auto-generated by `scripts/catalog_api.py`. It serves as a cro - `getZIndex`: ❌ No coverage - `isExtruded`: ❌ No coverage - `onMarkerClick`: ❌ No coverage -- `remove`: ❌ No coverage +- `remove`: + - [SnippetRegistry.kt:60](SnippetRegistry.kt#L60) (Tag: `No Tag`) - `setAltitudeMode`: ❌ No coverage - `setClickListener`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:86](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L86) (Tag: `maps_android_3d_marker_click_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:152](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L152) (Tag: `maps_android_3d_marker_click_kt`) - `setCollisionBehavior`: ❌ No coverage - `setDrawsWhenOccluded`: ❌ No coverage - `setExtruded`: ❌ No coverage @@ -309,30 +552,36 @@ This document was auto-generated by `scripts/catalog_api.py`. It serves as a cro - `getCollisionBehavior`: ❌ No coverage - `getId`: ❌ No coverage - `getLabel`: ❌ No coverage -- `getPosition`: ❌ No coverage +- `getPosition`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:113](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L113) (Tag: `maps_android_3d_marker_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:114](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L114) (Tag: `maps_android_3d_marker_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:197](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L197) (Tag: `maps_android_3d_marker_custom_icon_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:198](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L198) (Tag: `maps_android_3d_marker_custom_icon_kt`) - `getZIndex`: ❌ No coverage - `isDrawnWhenOccluded`: ❌ No coverage - `isExtruded`: ❌ No coverage - `isSizePreserved`: ❌ No coverage - `setAltitudeMode`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:65](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L65) (Tag: `maps_android_3d_marker_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:101](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L101) (Tag: `maps_android_3d_marker_options_kt`) - `setCollisionBehavior`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:67](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L67) (Tag: `maps_android_3d_marker_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:103](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L103) (Tag: `maps_android_3d_marker_options_kt`) - `setDrawnWhenOccluded`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:69](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L69) (Tag: `maps_android_3d_marker_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:105](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L105) (Tag: `maps_android_3d_marker_options_kt`) - `setExtruded`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:68](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L68) (Tag: `maps_android_3d_marker_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:104](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L104) (Tag: `maps_android_3d_marker_options_kt`) - `setId`: ❌ No coverage - `setLabel`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:109](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L109) (Tag: `maps_android_3d_marker_custom_icon_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:46](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L46) (Tag: `maps_android_3d_marker_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:66](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L66) (Tag: `maps_android_3d_marker_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:102](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L102) (Tag: `maps_android_3d_marker_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:182](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L182) (Tag: `maps_android_3d_marker_custom_icon_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:62](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L62) (Tag: `maps_android_3d_marker_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:99](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L99) (Tag: `maps_android_3d_popover_options_kt`) - `setPosition`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:104](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L104) (Tag: `maps_android_3d_marker_custom_icon_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:45](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L45) (Tag: `maps_android_3d_marker_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:60](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L60) (Tag: `maps_android_3d_marker_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:82](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L82) (Tag: `maps_android_3d_marker_click_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:38](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L38) (Tag: `maps_android_3d_popover_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:138](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L138) (Tag: `maps_android_3d_marker_click_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:177](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L177) (Tag: `maps_android_3d_marker_custom_icon_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:61](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L61) (Tag: `maps_android_3d_marker_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:96](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L96) (Tag: `maps_android_3d_marker_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:51](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L51) (Tag: `maps_android_3d_popover_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:98](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L98) (Tag: `maps_android_3d_popover_options_kt`) - `setSizePreserved`: ❌ No coverage - `setZIndex`: ❌ No coverage @@ -356,7 +605,8 @@ This document was auto-generated by `scripts/catalog_api.py`. It serves as a cro - `getScale`: ❌ No coverage - `getUrl`: ❌ No coverage - `onModelClick`: ❌ No coverage -- `remove`: ❌ No coverage +- `remove`: + - [SnippetRegistry.kt:63](SnippetRegistry.kt#L63) (Tag: `No Tag`) - `setAltitudeMode`: ❌ No coverage - `setClickListener`: ❌ No coverage - `setOrientation`: ❌ No coverage @@ -372,19 +622,16 @@ This document was auto-generated by `scripts/catalog_api.py`. It serves as a cro - `getScale`: ❌ No coverage - `getUrl`: ❌ No coverage - `setAltitudeMode`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:42](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L42) (Tag: `maps_android_3d_model_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:67](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L67) (Tag: `maps_android_3d_model_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:58](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L58) (Tag: `maps_android_3d_model_add_kt`) - `setId`: ❌ No coverage - `setOrientation`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:62](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L62) (Tag: `maps_android_3d_model_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:59](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L59) (Tag: `maps_android_3d_model_add_kt`) - `setPosition`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:40](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L40) (Tag: `maps_android_3d_model_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:55](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L55) (Tag: `maps_android_3d_model_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:56](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L56) (Tag: `maps_android_3d_model_add_kt`) - `setScale`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:61](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L61) (Tag: `maps_android_3d_model_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:64](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L64) (Tag: `maps_android_3d_model_add_kt`) - `setUrl`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:41](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L41) (Tag: `maps_android_3d_model_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:60](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L60) (Tag: `maps_android_3d_model_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:57](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L57) (Tag: `maps_android_3d_model_add_kt`) - `writeToParcel`: ❌ No coverage ### `Orientation` @@ -392,16 +639,16 @@ This document was auto-generated by `scripts/catalog_api.py`. It serves as a cro - `getRoll`: ❌ No coverage - `getTilt`: ❌ No coverage - `setHeading`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:64](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L64) (Tag: `maps_android_3d_model_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:61](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L61) (Tag: `maps_android_3d_model_add_kt`) - `setRoll`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:65](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L65) (Tag: `maps_android_3d_model_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:62](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L62) (Tag: `maps_android_3d_model_add_kt`) - `setTilt`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:63](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L63) (Tag: `maps_android_3d_model_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:60](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L60) (Tag: `maps_android_3d_model_add_kt`) - `writeToParcel`: ❌ No coverage ### `PinConfiguration` - `builder`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:111](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L111) (Tag: `maps_android_3d_marker_custom_icon_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:184](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L184) (Tag: `maps_android_3d_marker_custom_icon_kt`) - `equals`: ❌ No coverage - `getBackgroundColor`: ❌ No coverage - `getBorderColor`: ❌ No coverage @@ -416,15 +663,15 @@ This document was auto-generated by `scripts/catalog_api.py`. It serves as a cro ### `PinConfiguration.Builder` - `build`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:116](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L116) (Tag: `maps_android_3d_marker_custom_icon_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:189](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L189) (Tag: `maps_android_3d_marker_custom_icon_kt`) - `setBackgroundColor`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:114](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L114) (Tag: `maps_android_3d_marker_custom_icon_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:187](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L187) (Tag: `maps_android_3d_marker_custom_icon_kt`) - `setBorderColor`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:115](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L115) (Tag: `maps_android_3d_marker_custom_icon_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:188](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L188) (Tag: `maps_android_3d_marker_custom_icon_kt`) - `setGlyph`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:113](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L113) (Tag: `maps_android_3d_marker_custom_icon_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:186](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L186) (Tag: `maps_android_3d_marker_custom_icon_kt`) - `setScale`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:112](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L112) (Tag: `maps_android_3d_marker_custom_icon_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:185](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L185) (Tag: `maps_android_3d_marker_custom_icon_kt`) ### `Polygon` - `getAltitudeMode`: ❌ No coverage @@ -441,7 +688,8 @@ This document was auto-generated by `scripts/catalog_api.py`. It serves as a cro - `getStrokeWidth`: ❌ No coverage - `getZIndex`: ❌ No coverage - `onPolygonClick`: ❌ No coverage -- `remove`: ❌ No coverage +- `remove`: + - [SnippetRegistry.kt:62](SnippetRegistry.kt#L62) (Tag: `No Tag`) - `setAltitudeMode`: ❌ No coverage - `setClickListener`: ❌ No coverage - `setDrawsOccludedSegments`: ❌ No coverage @@ -469,25 +717,25 @@ This document was auto-generated by `scripts/catalog_api.py`. It serves as a cro - `getStrokeWidth`: ❌ No coverage - `getZIndex`: ❌ No coverage - `setAltitudeMode`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:45](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L45) (Tag: `maps_android_3d_polygon_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:70](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L70) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:102](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L102) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:58](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L58) (Tag: `maps_android_3d_polygon_add_kt`) - `setDrawsOccludedSegments`: ❌ No coverage - `setExtruded`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:68](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L68) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:100](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L100) (Tag: `maps_android_3d_polygon_extruded_kt`) - `setFillColor`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:42](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L42) (Tag: `maps_android_3d_polygon_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:67](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L67) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:55](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L55) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:99](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L99) (Tag: `maps_android_3d_polygon_extruded_kt`) - `setGeodesic`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:69](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L69) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:101](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L101) (Tag: `maps_android_3d_polygon_extruded_kt`) - `setId`: ❌ No coverage - `setInnerPaths`: ❌ No coverage - `setPath`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:41](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L41) (Tag: `maps_android_3d_polygon_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:66](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L66) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:54](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L54) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:98](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L98) (Tag: `maps_android_3d_polygon_extruded_kt`) - `setStrokeColor`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:43](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L43) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:56](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L56) (Tag: `maps_android_3d_polygon_add_kt`) - `setStrokeWidth`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:44](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L44) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:57](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L57) (Tag: `maps_android_3d_polygon_add_kt`) - `setZIndex`: ❌ No coverage - `writeToParcel`: ❌ No coverage @@ -504,7 +752,8 @@ This document was auto-generated by `scripts/catalog_api.py`. It serves as a cro - `getStrokeWidth`: ❌ No coverage - `getZIndex`: ❌ No coverage - `onPolylineClick`: ❌ No coverage -- `remove`: ❌ No coverage +- `remove`: + - [SnippetRegistry.kt:61](SnippetRegistry.kt#L61) (Tag: `No Tag`) - `setAltitudeMode`: ❌ No coverage - `setClickListener`: ❌ No coverage - `setCoordinates`: ❌ No coverage @@ -530,28 +779,28 @@ This document was auto-generated by `scripts/catalog_api.py`. It serves as a cro - `getStrokeWidth`: ❌ No coverage - `getZIndex`: ❌ No coverage - `setAltitudeMode`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:42](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L42) (Tag: `maps_android_3d_polyline_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:65](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L65) (Tag: `maps_android_3d_polyline_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:55](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L55) (Tag: `maps_android_3d_polyline_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:97](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L97) (Tag: `maps_android_3d_polyline_options_kt`) - `setDrawsOccludedSegments`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:68](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L68) (Tag: `maps_android_3d_polyline_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:100](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L100) (Tag: `maps_android_3d_polyline_options_kt`) - `setExtruded`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:66](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L66) (Tag: `maps_android_3d_polyline_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:98](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L98) (Tag: `maps_android_3d_polyline_options_kt`) - `setGeodesic`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:67](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L67) (Tag: `maps_android_3d_polyline_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:99](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L99) (Tag: `maps_android_3d_polyline_options_kt`) - `setId`: ❌ No coverage - `setOuterColor`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:63](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L63) (Tag: `maps_android_3d_polyline_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:95](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L95) (Tag: `maps_android_3d_polyline_options_kt`) - `setOuterWidth`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:64](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L64) (Tag: `maps_android_3d_polyline_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:96](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L96) (Tag: `maps_android_3d_polyline_options_kt`) - `setPath`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:39](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L39) (Tag: `maps_android_3d_polyline_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:60](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L60) (Tag: `maps_android_3d_polyline_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:52](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L52) (Tag: `maps_android_3d_polyline_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:92](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L92) (Tag: `maps_android_3d_polyline_options_kt`) - `setStrokeColor`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:40](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L40) (Tag: `maps_android_3d_polyline_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:61](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L61) (Tag: `maps_android_3d_polyline_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:53](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L53) (Tag: `maps_android_3d_polyline_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:93](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L93) (Tag: `maps_android_3d_polyline_options_kt`) - `setStrokeWidth`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:41](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L41) (Tag: `maps_android_3d_polyline_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:62](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L62) (Tag: `maps_android_3d_polyline_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:54](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L54) (Tag: `maps_android_3d_polyline_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:94](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L94) (Tag: `maps_android_3d_polyline_options_kt`) - `setZIndex`: ❌ No coverage - `writeToParcel`: ❌ No coverage @@ -576,10 +825,12 @@ This document was auto-generated by `scripts/catalog_api.py`. It serves as a cro - `hide`: ❌ No coverage - `isVisible`: ❌ No coverage - `positionAnchor`: ❌ No coverage -- `remove`: ❌ No coverage +- `remove`: + - [SnippetRegistry.kt:64](SnippetRegistry.kt#L64) (Tag: `No Tag`) - `removeFn`: ❌ No coverage - `show`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:59](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L59) (Tag: `maps_android_3d_popover_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:117](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L117) (Tag: `maps_android_3d_popover_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:72](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L72) (Tag: `maps_android_3d_popover_add_kt`) - `toggle`: ❌ No coverage ### `PopoverOptions` @@ -591,19 +842,19 @@ This document was auto-generated by `scripts/catalog_api.py`. It serves as a cro - `getPopoverStyle`: ❌ No coverage - `getPositionAnchor`: ❌ No coverage - `setAltitudeMode`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:53](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L53) (Tag: `maps_android_3d_popover_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:66](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L66) (Tag: `maps_android_3d_popover_add_kt`) - `setAnchorOffset`: ❌ No coverage - `setAutoCloseEnabled`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:75](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L75) (Tag: `maps_android_3d_popover_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:112](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L112) (Tag: `maps_android_3d_popover_options_kt`) - `setAutoPanEnabled`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:76](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L76) (Tag: `maps_android_3d_popover_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:113](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L113) (Tag: `maps_android_3d_popover_options_kt`) - `setContent`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:51](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L51) (Tag: `maps_android_3d_popover_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:73](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L73) (Tag: `maps_android_3d_popover_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:110](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L110) (Tag: `maps_android_3d_popover_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:64](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L64) (Tag: `maps_android_3d_popover_add_kt`) - `setPopoverStyle`: ❌ No coverage - `setPositionAnchor`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:52](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L52) (Tag: `maps_android_3d_popover_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:74](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L74) (Tag: `maps_android_3d_popover_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:111](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L111) (Tag: `maps_android_3d_popover_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:65](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L65) (Tag: `maps_android_3d_popover_add_kt`) ### `PopoverShadow` - `getColor`: ❌ No coverage @@ -657,11 +908,11 @@ This document was auto-generated by `scripts/catalog_api.py`. It serves as a cro - `getY`: ❌ No coverage - `getZ`: ❌ No coverage - `setX`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:61](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L61) (Tag: `maps_android_3d_model_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:64](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L64) (Tag: `maps_android_3d_model_add_kt`) - `setY`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:61](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L61) (Tag: `maps_android_3d_model_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:64](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L64) (Tag: `maps_android_3d_model_add_kt`) - `setZ`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:61](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L61) (Tag: `maps_android_3d_model_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:64](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L64) (Tag: `maps_android_3d_model_add_kt`) - `writeToParcel`: ❌ No coverage ### Missing Extracted API Coverage (Kotlin Snippets) @@ -706,7 +957,6 @@ The following non-getter/setter APIs currently have `0` occurrences within this - `Map3DView.params` - `Marker.isExtruded` - `Marker.onMarkerClick` -- `Marker.remove` - `MarkerOptions.isDrawnWhenOccluded` - `MarkerOptions.isExtruded` - `MarkerOptions.isSizePreserved` @@ -715,17 +965,14 @@ The following non-getter/setter APIs currently have `0` occurrences within this - `MarkerStyle.hashCode` - `MarkerStyle.writeToParcel` - `Model.onModelClick` -- `Model.remove` - `ModelOptions.writeToParcel` - `Orientation.writeToParcel` - `PinConfiguration.equals` - `PinConfiguration.hashCode` - `PinConfiguration.writeToParcel` - `Polygon.onPolygonClick` -- `Polygon.remove` - `PolygonOptions.writeToParcel` - `Polyline.onPolylineClick` -- `Polyline.remove` - `PolylineOptions.writeToParcel` - `Popover.altitudeMode` - `Popover.anchorId` @@ -737,7 +984,6 @@ The following non-getter/setter APIs currently have `0` occurrences within this - `Popover.hide` - `Popover.isVisible` - `Popover.positionAnchor` -- `Popover.remove` - `Popover.removeFn` - `Popover.toggle` - `Validators.for.Anchorable` @@ -770,8 +1016,8 @@ The following non-getter/setter APIs currently have `0` occurrences within this ## Java Snippets ### `Camera` - `getCenter`: - - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:107](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L107) (Tag: `maps_android_3d_camera_events_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:99](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L99) (Tag: `No Tag`) + - [MapActivity.java:55](MapActivity.java#L55) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:133](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L133) (Tag: `maps_android_3d_camera_events_java`) - `setCenter`: ❌ No coverage - `setHeading`: ❌ No coverage - `setRange`: ❌ No coverage @@ -809,7 +1055,7 @@ The following non-getter/setter APIs currently have `0` occurrences within this - `equals`: ❌ No coverage - `fromCircle`: ❌ No coverage - `fromColor`: - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:109](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L109) (Tag: `maps_android_3d_marker_custom_icon_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:168](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L168) (Tag: `maps_android_3d_marker_custom_icon_java`) - `fromText`: ❌ No coverage - `getColor`: ❌ No coverage - `getImage`: ❌ No coverage @@ -817,57 +1063,48 @@ The following non-getter/setter APIs currently have `0` occurrences within this - `hashCode`: ❌ No coverage - `setColor`: ❌ No coverage - `setImage`: - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:133](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L133) (Tag: `maps_android_3d_marker_custom_icon_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:171](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L171) (Tag: `maps_android_3d_marker_custom_icon_java`) - `setText`: ❌ No coverage - `writeToParcel`: ❌ No coverage ### `GoogleMap3D` - `addMarker`: - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:147](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L147) (Tag: `maps_android_3d_marker_custom_icon_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:54](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L54) (Tag: `maps_android_3d_marker_add_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:73](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L73) (Tag: `maps_android_3d_marker_options_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:86](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L86) (Tag: `maps_android_3d_marker_click_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:47](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L47) (Tag: `maps_android_3d_popover_add_java`) + - [TrackedMap3D.java:37](TrackedMap3D.java#L37) (Tag: `No Tag`) - `addModel`: - - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java:47](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L47) (Tag: `maps_android_3d_model_add_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java:65](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L65) (Tag: `maps_android_3d_model_options_java`) + - [TrackedMap3D.java:55](TrackedMap3D.java#L55) (Tag: `No Tag`) - `addPolygon`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:56](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L56) (Tag: `maps_android_3d_polygon_add_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:80](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L80) (Tag: `maps_android_3d_polygon_extruded_java`) + - [TrackedMap3D.java:49](TrackedMap3D.java#L49) (Tag: `No Tag`) - `addPolyline`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:53](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L53) (Tag: `maps_android_3d_polyline_add_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:78](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L78) (Tag: `maps_android_3d_polyline_options_java`) + - [TrackedMap3D.java:43](TrackedMap3D.java#L43) (Tag: `No Tag`) - `addPopover`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:63](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L63) (Tag: `maps_android_3d_popover_add_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:86](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L86) (Tag: `maps_android_3d_popover_options_java`) + - [TrackedMap3D.java:61](TrackedMap3D.java#L61) (Tag: `No Tag`) - `flyCameraAround`: - - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:76](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L76) (Tag: `maps_android_3d_camera_fly_around_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:79](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L79) (Tag: `maps_android_3d_camera_fly_around_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:93](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L93) (Tag: `maps_android_3d_camera_stop_java`) + - [TrackedMap3D.java:69](TrackedMap3D.java#L69) (Tag: `No Tag`) - `flyCameraTo`: - - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:54](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L54) (Tag: `maps_android_3d_camera_fly_to_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:57](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L57) (Tag: `maps_android_3d_camera_fly_to_java`) -- `getCamera`: ❌ No coverage + - [TrackedMap3D.java:74](TrackedMap3D.java#L74) (Tag: `No Tag`) +- `getCamera`: + - [MapActivity.java:53](MapActivity.java#L53) (Tag: `No Tag`) + - [TrackedMap3D.java:72](TrackedMap3D.java#L72) (Tag: `No Tag`) - `getCameraRestriction`: ❌ No coverage - `getMapMode`: ❌ No coverage - `setCamera`: - - [java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java:49](java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java#L49) (Tag: `maps_android_3d_init_basic_java`) + - [TrackedMap3D.java:66](TrackedMap3D.java#L66) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java:54](java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java#L54) (Tag: `maps_android_3d_init_basic_java`) - `setCameraAnimationEndListener`: ❌ No coverage - `setCameraChangedListener`: - - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:106](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L106) (Tag: `maps_android_3d_camera_events_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:95](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L95) (Tag: `maps_android_3d_camera_stop_java`) + - [TrackedMap3D.java:67](TrackedMap3D.java#L67) (Tag: `No Tag`) - `setCameraRestriction`: ❌ No coverage - `setMap3DClickListener`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PlaceSnippets.java:38](java-app/src/main/java/com/example/snippets/java/snippets/PlaceSnippets.java#L38) (Tag: `maps_android_3d_place_click_java`) + - [TrackedMap3D.java:68](TrackedMap3D.java#L68) (Tag: `No Tag`) - `setMapMode`: ❌ No coverage - `setOnMapReadyListener`: - - [MapActivity.java:34](MapActivity.java#L34) (Tag: `No Tag`) - - [MapActivity.java:60](MapActivity.java#L60) (Tag: `No Tag`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java:67](java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java#L67) (Tag: `maps_android_3d_init_listeners_java`) + - [TrackedMap3D.java:75](TrackedMap3D.java#L75) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java:74](java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java#L74) (Tag: `maps_android_3d_init_listeners_java`) - `setOnMapSteadyListener`: - - [java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java:78](java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java#L78) (Tag: `maps_android_3d_init_listeners_java`) + - [TrackedMap3D.java:76](TrackedMap3D.java#L76) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java:85](java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java#L85) (Tag: `maps_android_3d_init_listeners_java`) - `stopCameraAnimation`: - - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:85](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L85) (Tag: `maps_android_3d_camera_stop_java`) + - [TrackedMap3D.java:73](TrackedMap3D.java#L73) (Tag: `No Tag`) ### `Hole` - `getVertices`: ❌ No coverage @@ -882,9 +1119,20 @@ The following non-getter/setter APIs currently have `0` occurrences within this - `writeToParcel`: ❌ No coverage ### `LatLngAltitude` -- `getAltitude`: ❌ No coverage -- `getLatitude`: ❌ No coverage -- `getLongitude`: ❌ No coverage +- `getAltitude`: + - [MapActivity.java:64](MapActivity.java#L64) (Tag: `No Tag`) +- `getLatitude`: + - [MapActivity.java:64](MapActivity.java#L64) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:108](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L108) (Tag: `maps_android_3d_marker_options_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:134](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L134) (Tag: `maps_android_3d_marker_click_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:189](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L189) (Tag: `maps_android_3d_marker_custom_icon_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:76](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L76) (Tag: `maps_android_3d_marker_add_java`) +- `getLongitude`: + - [MapActivity.java:64](MapActivity.java#L64) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:108](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L108) (Tag: `maps_android_3d_marker_options_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:134](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L134) (Tag: `maps_android_3d_marker_click_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:189](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L189) (Tag: `maps_android_3d_marker_custom_icon_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:76](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L76) (Tag: `maps_android_3d_marker_add_java`) - `getPosition`: ❌ No coverage - `setAltitude`: ❌ No coverage - `setLatitude`: ❌ No coverage @@ -945,9 +1193,8 @@ The following non-getter/setter APIs currently have `0` occurrences within this ### `Map3DView` - `getMap3DViewAsync`: - - [MapActivity.java:31](MapActivity.java#L31) (Tag: `No Tag`) - - [MapActivity.java:52](MapActivity.java#L52) (Tag: `No Tag`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java:43](java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java#L43) (Tag: `maps_android_3d_init_basic_java`) + - [MapActivity.java:115](MapActivity.java#L115) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java:48](java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java#L48) (Tag: `maps_android_3d_init_basic_java`) - `getOverlayView`: ❌ No coverage - `getParams`: ❌ No coverage - `overlayView`: ❌ No coverage @@ -966,10 +1213,11 @@ The following non-getter/setter APIs currently have `0` occurrences within this - `getZIndex`: ❌ No coverage - `isExtruded`: ❌ No coverage - `onMarkerClick`: ❌ No coverage -- `remove`: ❌ No coverage +- `remove`: + - [SnippetRegistry.java:38](SnippetRegistry.java#L38) (Tag: `No Tag`) - `setAltitudeMode`: ❌ No coverage - `setClickListener`: - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:90](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L90) (Tag: `maps_android_3d_marker_click_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:142](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L142) (Tag: `maps_android_3d_marker_click_java`) - `setCollisionBehavior`: ❌ No coverage - `setDrawsWhenOccluded`: ❌ No coverage - `setExtruded`: ❌ No coverage @@ -984,29 +1232,35 @@ The following non-getter/setter APIs currently have `0` occurrences within this - `getCollisionBehavior`: ❌ No coverage - `getId`: ❌ No coverage - `getLabel`: ❌ No coverage -- `getPosition`: ❌ No coverage +- `getPosition`: + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:106](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L106) (Tag: `maps_android_3d_marker_options_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:132](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L132) (Tag: `maps_android_3d_marker_click_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:187](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L187) (Tag: `maps_android_3d_marker_custom_icon_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:74](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L74) (Tag: `maps_android_3d_marker_add_java`) - `getZIndex`: ❌ No coverage - `isDrawnWhenOccluded`: ❌ No coverage - `isExtruded`: ❌ No coverage - `isSizePreserved`: ❌ No coverage - `setAltitudeMode`: - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:67](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L67) (Tag: `maps_android_3d_marker_options_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:98](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L98) (Tag: `maps_android_3d_marker_options_java`) - `setCollisionBehavior`: - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:69](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L69) (Tag: `maps_android_3d_marker_options_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:100](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L100) (Tag: `maps_android_3d_marker_options_java`) - `setDrawnWhenOccluded`: - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:71](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L71) (Tag: `maps_android_3d_marker_options_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:102](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L102) (Tag: `maps_android_3d_marker_options_java`) - `setExtruded`: - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:70](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L70) (Tag: `maps_android_3d_marker_options_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:101](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L101) (Tag: `maps_android_3d_marker_options_java`) - `setId`: ❌ No coverage - `setLabel`: - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:137](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L137) (Tag: `maps_android_3d_marker_custom_icon_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:51](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L51) (Tag: `maps_android_3d_marker_add_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:68](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L68) (Tag: `maps_android_3d_marker_options_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:175](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L175) (Tag: `maps_android_3d_marker_custom_icon_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:69](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L69) (Tag: `maps_android_3d_marker_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:99](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L99) (Tag: `maps_android_3d_marker_options_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:99](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L99) (Tag: `maps_android_3d_popover_options_java`) - `setPosition`: - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:136](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L136) (Tag: `maps_android_3d_marker_custom_icon_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:50](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L50) (Tag: `maps_android_3d_marker_add_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:66](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L66) (Tag: `maps_android_3d_marker_options_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:84](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L84) (Tag: `maps_android_3d_marker_click_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:128](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L128) (Tag: `maps_android_3d_marker_click_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:174](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L174) (Tag: `maps_android_3d_marker_custom_icon_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:68](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L68) (Tag: `maps_android_3d_marker_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:97](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L97) (Tag: `maps_android_3d_marker_options_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:98](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L98) (Tag: `maps_android_3d_popover_options_java`) - `setSizePreserved`: ❌ No coverage - `setZIndex`: ❌ No coverage @@ -1030,7 +1284,8 @@ The following non-getter/setter APIs currently have `0` occurrences within this - `getScale`: ❌ No coverage - `getUrl`: ❌ No coverage - `onModelClick`: ❌ No coverage -- `remove`: ❌ No coverage +- `remove`: + - [SnippetRegistry.java:41](SnippetRegistry.java#L41) (Tag: `No Tag`) - `setAltitudeMode`: ❌ No coverage - `setClickListener`: ❌ No coverage - `setOrientation`: ❌ No coverage @@ -1046,19 +1301,16 @@ The following non-getter/setter APIs currently have `0` occurrences within this - `getScale`: ❌ No coverage - `getUrl`: ❌ No coverage - `setAltitudeMode`: - - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java:45](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L45) (Tag: `maps_android_3d_model_add_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java:63](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L63) (Tag: `maps_android_3d_model_options_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java:60](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L60) (Tag: `maps_android_3d_model_add_java`) - `setId`: ❌ No coverage - `setOrientation`: - - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java:62](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L62) (Tag: `maps_android_3d_model_options_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java:61](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L61) (Tag: `maps_android_3d_model_add_java`) - `setPosition`: - - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java:43](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L43) (Tag: `maps_android_3d_model_add_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java:59](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L59) (Tag: `maps_android_3d_model_options_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java:58](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L58) (Tag: `maps_android_3d_model_add_java`) - `setScale`: - - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java:61](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L61) (Tag: `maps_android_3d_model_options_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java:62](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L62) (Tag: `maps_android_3d_model_add_java`) - `setUrl`: - - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java:44](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L44) (Tag: `maps_android_3d_model_add_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java:60](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L60) (Tag: `maps_android_3d_model_options_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java:59](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L59) (Tag: `maps_android_3d_model_add_java`) - `writeToParcel`: ❌ No coverage ### `Orientation` @@ -1072,7 +1324,7 @@ The following non-getter/setter APIs currently have `0` occurrences within this ### `PinConfiguration` - `builder`: - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:140](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L140) (Tag: `maps_android_3d_marker_custom_icon_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:178](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L178) (Tag: `maps_android_3d_marker_custom_icon_java`) - `equals`: ❌ No coverage - `getBackgroundColor`: ❌ No coverage - `getBorderColor`: ❌ No coverage @@ -1087,15 +1339,15 @@ The following non-getter/setter APIs currently have `0` occurrences within this ### `PinConfiguration.Builder` - `build`: - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:145](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L145) (Tag: `maps_android_3d_marker_custom_icon_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:183](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L183) (Tag: `maps_android_3d_marker_custom_icon_java`) - `setBackgroundColor`: - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:143](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L143) (Tag: `maps_android_3d_marker_custom_icon_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:181](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L181) (Tag: `maps_android_3d_marker_custom_icon_java`) - `setBorderColor`: - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:144](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L144) (Tag: `maps_android_3d_marker_custom_icon_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:182](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L182) (Tag: `maps_android_3d_marker_custom_icon_java`) - `setGlyph`: - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:142](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L142) (Tag: `maps_android_3d_marker_custom_icon_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:180](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L180) (Tag: `maps_android_3d_marker_custom_icon_java`) - `setScale`: - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:141](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L141) (Tag: `maps_android_3d_marker_custom_icon_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:179](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L179) (Tag: `maps_android_3d_marker_custom_icon_java`) ### `Polygon` - `getAltitudeMode`: ❌ No coverage @@ -1112,7 +1364,8 @@ The following non-getter/setter APIs currently have `0` occurrences within this - `getStrokeWidth`: ❌ No coverage - `getZIndex`: ❌ No coverage - `onPolygonClick`: ❌ No coverage -- `remove`: ❌ No coverage +- `remove`: + - [SnippetRegistry.java:40](SnippetRegistry.java#L40) (Tag: `No Tag`) - `setAltitudeMode`: ❌ No coverage - `setClickListener`: ❌ No coverage - `setDrawsOccludedSegments`: ❌ No coverage @@ -1140,25 +1393,25 @@ The following non-getter/setter APIs currently have `0` occurrences within this - `getStrokeWidth`: ❌ No coverage - `getZIndex`: ❌ No coverage - `setAltitudeMode`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:54](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L54) (Tag: `maps_android_3d_polygon_add_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:78](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L78) (Tag: `maps_android_3d_polygon_extruded_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:100](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L100) (Tag: `maps_android_3d_polygon_extruded_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:67](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L67) (Tag: `maps_android_3d_polygon_add_java`) - `setDrawsOccludedSegments`: ❌ No coverage - `setExtruded`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:76](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L76) (Tag: `maps_android_3d_polygon_extruded_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:98](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L98) (Tag: `maps_android_3d_polygon_extruded_java`) - `setFillColor`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:51](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L51) (Tag: `maps_android_3d_polygon_add_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:75](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L75) (Tag: `maps_android_3d_polygon_extruded_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:64](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L64) (Tag: `maps_android_3d_polygon_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:97](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L97) (Tag: `maps_android_3d_polygon_extruded_java`) - `setGeodesic`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:77](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L77) (Tag: `maps_android_3d_polygon_extruded_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:99](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L99) (Tag: `maps_android_3d_polygon_extruded_java`) - `setId`: ❌ No coverage - `setInnerPaths`: ❌ No coverage - `setPath`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:50](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L50) (Tag: `maps_android_3d_polygon_add_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:74](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L74) (Tag: `maps_android_3d_polygon_extruded_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:63](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L63) (Tag: `maps_android_3d_polygon_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:96](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L96) (Tag: `maps_android_3d_polygon_extruded_java`) - `setStrokeColor`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:52](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L52) (Tag: `maps_android_3d_polygon_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:65](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L65) (Tag: `maps_android_3d_polygon_add_java`) - `setStrokeWidth`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:53](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L53) (Tag: `maps_android_3d_polygon_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:66](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L66) (Tag: `maps_android_3d_polygon_add_java`) - `setZIndex`: ❌ No coverage - `writeToParcel`: ❌ No coverage @@ -1175,7 +1428,8 @@ The following non-getter/setter APIs currently have `0` occurrences within this - `getStrokeWidth`: ❌ No coverage - `getZIndex`: ❌ No coverage - `onPolylineClick`: ❌ No coverage -- `remove`: ❌ No coverage +- `remove`: + - [SnippetRegistry.java:39](SnippetRegistry.java#L39) (Tag: `No Tag`) - `setAltitudeMode`: ❌ No coverage - `setClickListener`: ❌ No coverage - `setCoordinates`: ❌ No coverage @@ -1201,28 +1455,28 @@ The following non-getter/setter APIs currently have `0` occurrences within this - `getStrokeWidth`: ❌ No coverage - `getZIndex`: ❌ No coverage - `setAltitudeMode`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:51](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L51) (Tag: `maps_android_3d_polyline_add_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:73](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L73) (Tag: `maps_android_3d_polyline_options_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:64](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L64) (Tag: `maps_android_3d_polyline_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:95](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L95) (Tag: `maps_android_3d_polyline_options_java`) - `setDrawsOccludedSegments`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:76](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L76) (Tag: `maps_android_3d_polyline_options_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:98](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L98) (Tag: `maps_android_3d_polyline_options_java`) - `setExtruded`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:74](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L74) (Tag: `maps_android_3d_polyline_options_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:96](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L96) (Tag: `maps_android_3d_polyline_options_java`) - `setGeodesic`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:75](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L75) (Tag: `maps_android_3d_polyline_options_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:97](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L97) (Tag: `maps_android_3d_polyline_options_java`) - `setId`: ❌ No coverage - `setOuterColor`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:71](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L71) (Tag: `maps_android_3d_polyline_options_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:93](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L93) (Tag: `maps_android_3d_polyline_options_java`) - `setOuterWidth`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:72](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L72) (Tag: `maps_android_3d_polyline_options_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:94](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L94) (Tag: `maps_android_3d_polyline_options_java`) - `setPath`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:48](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L48) (Tag: `maps_android_3d_polyline_add_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:68](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L68) (Tag: `maps_android_3d_polyline_options_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:61](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L61) (Tag: `maps_android_3d_polyline_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:90](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L90) (Tag: `maps_android_3d_polyline_options_java`) - `setStrokeColor`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:49](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L49) (Tag: `maps_android_3d_polyline_add_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:69](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L69) (Tag: `maps_android_3d_polyline_options_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:62](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L62) (Tag: `maps_android_3d_polyline_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:91](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L91) (Tag: `maps_android_3d_polyline_options_java`) - `setStrokeWidth`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:50](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L50) (Tag: `maps_android_3d_polyline_add_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:70](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L70) (Tag: `maps_android_3d_polyline_options_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:63](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L63) (Tag: `maps_android_3d_polyline_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:92](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L92) (Tag: `maps_android_3d_polyline_options_java`) - `setZIndex`: ❌ No coverage - `writeToParcel`: ❌ No coverage @@ -1247,10 +1501,12 @@ The following non-getter/setter APIs currently have `0` occurrences within this - `hide`: ❌ No coverage - `isVisible`: ❌ No coverage - `positionAnchor`: ❌ No coverage -- `remove`: ❌ No coverage +- `remove`: + - [SnippetRegistry.java:42](SnippetRegistry.java#L42) (Tag: `No Tag`) - `removeFn`: ❌ No coverage - `show`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:67](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L67) (Tag: `maps_android_3d_popover_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:116](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L116) (Tag: `maps_android_3d_popover_options_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:80](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L80) (Tag: `maps_android_3d_popover_add_java`) - `toggle`: ❌ No coverage ### `PopoverOptions` @@ -1262,19 +1518,19 @@ The following non-getter/setter APIs currently have `0` occurrences within this - `getPopoverStyle`: ❌ No coverage - `getPositionAnchor`: ❌ No coverage - `setAltitudeMode`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:61](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L61) (Tag: `maps_android_3d_popover_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:74](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L74) (Tag: `maps_android_3d_popover_add_java`) - `setAnchorOffset`: ❌ No coverage - `setAutoCloseEnabled`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:83](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L83) (Tag: `maps_android_3d_popover_options_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:111](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L111) (Tag: `maps_android_3d_popover_options_java`) - `setAutoPanEnabled`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:84](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L84) (Tag: `maps_android_3d_popover_options_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:112](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L112) (Tag: `maps_android_3d_popover_options_java`) - `setContent`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:59](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L59) (Tag: `maps_android_3d_popover_add_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:81](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L81) (Tag: `maps_android_3d_popover_options_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:109](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L109) (Tag: `maps_android_3d_popover_options_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:72](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L72) (Tag: `maps_android_3d_popover_add_java`) - `setPopoverStyle`: ❌ No coverage - `setPositionAnchor`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:60](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L60) (Tag: `maps_android_3d_popover_add_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:82](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L82) (Tag: `maps_android_3d_popover_options_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:110](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L110) (Tag: `maps_android_3d_popover_options_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:73](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L73) (Tag: `maps_android_3d_popover_add_java`) ### `PopoverShadow` - `getColor`: ❌ No coverage @@ -1374,7 +1630,6 @@ The following non-getter/setter APIs currently have `0` occurrences within this - `Map3DView.params` - `Marker.isExtruded` - `Marker.onMarkerClick` -- `Marker.remove` - `MarkerOptions.isDrawnWhenOccluded` - `MarkerOptions.isExtruded` - `MarkerOptions.isSizePreserved` @@ -1383,17 +1638,14 @@ The following non-getter/setter APIs currently have `0` occurrences within this - `MarkerStyle.hashCode` - `MarkerStyle.writeToParcel` - `Model.onModelClick` -- `Model.remove` - `ModelOptions.writeToParcel` - `Orientation.writeToParcel` - `PinConfiguration.equals` - `PinConfiguration.hashCode` - `PinConfiguration.writeToParcel` - `Polygon.onPolygonClick` -- `Polygon.remove` - `PolygonOptions.writeToParcel` - `Polyline.onPolylineClick` -- `Polyline.remove` - `PolylineOptions.writeToParcel` - `Popover.altitudeMode` - `Popover.anchorId` @@ -1405,7 +1657,6 @@ The following non-getter/setter APIs currently have `0` occurrences within this - `Popover.hide` - `Popover.isVisible` - `Popover.positionAnchor` -- `Popover.remove` - `Popover.removeFn` - `Popover.toggle` - `Validators.for.Anchorable` diff --git a/snippets/scripts/catalog_api.py b/snippets/scripts/catalog_api.py index e03d2a17..16f04750 100644 --- a/snippets/scripts/catalog_api.py +++ b/snippets/scripts/catalog_api.py @@ -110,6 +110,96 @@ def parse_javap_output(snippets_dir): return usages +def generate_snippet_index(snippets_dir, file_map): + groups = defaultdict(lambda: { + 'description': '', + 'items': defaultdict(lambda: { + 'description': '', + 'kotlin': None, + 'java': None + }) + }) + + for root, _, filenames in os.walk(snippets_dir): + if 'build' in root or '.gradle' in root or 'scripts' in root: continue + for name in filenames: + if name.endswith(('.kt', '.java')): + filepath = os.path.join(root, name) + with open(filepath, 'r', encoding='utf-8') as f: + content = f.read() + + # Find Group + group_match = re.search(r'@SnippetGroup\((.*?)\)', content, re.DOTALL) + if not group_match: continue + + group_content = group_match.group(1) + group_title_match = re.search(r'title\s*=\s*"([^"]+)"', group_content) + group_desc_match = re.search(r'description\s*=\s*"([^"]+)"', group_content) + + if not group_title_match: continue + + group_title = group_title_match.group(1) + group_desc = group_desc_match.group(1) if group_desc_match else "" + + if not groups[group_title]['description']: + groups[group_title]['description'] = group_desc + + is_kotlin = name.endswith('.kt') + # Find Items + lines = content.split('\n') + for i, line in enumerate(lines): + if '@SnippetItem' in line: + # Grab context (usually next few lines have the full annotation) + context = "\n".join(lines[i:i+10]) + item_match = re.search(r'@SnippetItem\((.*?)\)', context, re.DOTALL) + if item_match: + item_content = item_match.group(1) + item_title_match = re.search(r'title\s*=\s*"([^"]+)"', item_content) + item_desc_match = re.search(r'description\s*=\s*"([^"]+)"', item_content) + + if item_title_match: + item_title = item_title_match.group(1) + item_desc = item_desc_match.group(1) if item_desc_match else "" + + rel_path = file_map.get(name, os.path.relpath(filepath, snippets_dir)) + link = f"[{rel_path}:{i+1}]({rel_path}#L{i+1})" + + current_item = groups[group_title]['items'][item_title] + if not current_item['description']: + current_item['description'] = item_desc + + if is_kotlin: + current_item['kotlin'] = link + else: + current_item['java'] = link + + # Format Markdown + lines = ["## 📑 Snippet Concepts Index\n\n"] + lines.append("This section maps high-level concepts (groups) to specific demonstration files and lines in both languages.\n\n") + + for title, group in sorted(groups.items()): + lines.append(f"### {title}\n") + lines.append(f"> {group['description']}\n\n") + + # Sort items: try numerical sort if prefixed with numbers (e.g. "1. Basic") + sorted_items = sorted(group['items'].items(), key=lambda x: (re.search(r'^(\d+)', x[0]).group(1) if re.search(r'^(\d+)', x[0]) else x[0])) + + for item_title, item in sorted_items: + lines.append(f"- **{item_title}**:\n") + if item['description']: + lines.append(f" - *Description*: {item['description']}\n") + formatted_uses = [] + if item['kotlin']: + formatted_uses.append(f"Kotlin: {item['kotlin']}") + if item['java']: + formatted_uses.append(f"Java: {item['java']}") + + if formatted_uses: + lines.append(f" - *Links*: {' | '.join(formatted_uses)}\n") + lines.append("\n") + + return lines + def format_catalog_section(section_title, api_surface, usages, file_map, region_tags, language_ext): lines = [f"## {section_title}\n"] missing_apis = [] @@ -203,8 +293,15 @@ def main(): rel_path = os.path.relpath(filepath, SNIPPETS_DIR) file_map[basename] = rel_path - catalog_lines = ["# Maps3D API Snippets Catalog\n\n"] - catalog_lines.append("This document was auto-generated by `scripts/catalog_api.py`. It serves as a cross-reference matrix ensuring that every critical feature in the 3D Maps SDK is actively demonstrated inside a snippet boundary (`// [START ...]`).\n\n") + catalog_lines = ["# 🗺️ Maps3D API Snippets Catalog\n\n"] + catalog_lines.append("This document serves as a comprehensive developer reference and mapping matrix for the 3D Maps SDK features.\n\n") + + # Generate Snippet Index (Concepts to Code) + snippet_index_lines = generate_snippet_index(SNIPPETS_DIR, file_map) + catalog_lines.extend(snippet_index_lines) + catalog_lines.append("\n---\n\n") + catalog_lines.append("## 📊 Maps3D API Coverage Matrix\n\n") + catalog_lines.append("This matrix ensures that every critical feature in the 3D Maps SDK is actively demonstrated inside a snippet boundary (`// [START ...]`).\n\n") # Generate Kotlin Section kt_lines, kt_missing = format_catalog_section("Kotlin Snippets", api_surface, usages, file_map, region_tags, ".kt") From 711b6aa111a341733321b40e1f1520a6ba77226f Mon Sep 17 00:00:00 2001 From: dkhawk <107309+dkhawk@users.noreply.github.com> Date: Thu, 19 Mar 2026 17:59:12 -0600 Subject: [PATCH 16/36] Add missing Copyright headers to Java utilities and annotations --- .../snippets/java/SnippetDiscoveryTest.java | 16 ++++++++++++++++ .../snippets/java/SnippetGroupAdapter.java | 16 ++++++++++++++++ .../example/snippets/java/SnippetGroupInfo.java | 16 ++++++++++++++++ .../example/snippets/java/SnippetItemInfo.java | 16 ++++++++++++++++ .../com/example/snippets/java/TrackedMap3D.java | 16 ++++++++++++++++ .../snippets/java/annotations/SnippetGroup.java | 16 ++++++++++++++++ .../snippets/java/annotations/SnippetItem.java | 16 ++++++++++++++++ 7 files changed, 112 insertions(+) diff --git a/snippets/java-app/src/androidTest/java/com/example/snippets/java/SnippetDiscoveryTest.java b/snippets/java-app/src/androidTest/java/com/example/snippets/java/SnippetDiscoveryTest.java index 4ec8fd0a..bdc574ab 100644 --- a/snippets/java-app/src/androidTest/java/com/example/snippets/java/SnippetDiscoveryTest.java +++ b/snippets/java-app/src/androidTest/java/com/example/snippets/java/SnippetDiscoveryTest.java @@ -1,3 +1,19 @@ +/* + * Copyright 2026 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + package com.example.snippets.java; import android.content.Context; diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/SnippetGroupAdapter.java b/snippets/java-app/src/main/java/com/example/snippets/java/SnippetGroupAdapter.java index 9c7368da..91358567 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/SnippetGroupAdapter.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/SnippetGroupAdapter.java @@ -1,3 +1,19 @@ +/* + * Copyright 2026 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + package com.example.snippets.java; import android.view.LayoutInflater; diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/SnippetGroupInfo.java b/snippets/java-app/src/main/java/com/example/snippets/java/SnippetGroupInfo.java index 649ff40d..ed0d1424 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/SnippetGroupInfo.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/SnippetGroupInfo.java @@ -1,3 +1,19 @@ +/* + * Copyright 2026 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + package com.example.snippets.java; import java.util.List; diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/SnippetItemInfo.java b/snippets/java-app/src/main/java/com/example/snippets/java/SnippetItemInfo.java index 72dd238d..7a807252 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/SnippetItemInfo.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/SnippetItemInfo.java @@ -1,3 +1,19 @@ +/* + * Copyright 2026 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + package com.example.snippets.java; /** diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java b/snippets/java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java index 9ffe23de..804e4734 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java @@ -1,3 +1,19 @@ +/* + * Copyright 2026 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + package com.example.snippets.java; import com.google.android.gms.maps3d.GoogleMap3D; diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/annotations/SnippetGroup.java b/snippets/java-app/src/main/java/com/example/snippets/java/annotations/SnippetGroup.java index 698eae87..d733fd17 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/annotations/SnippetGroup.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/annotations/SnippetGroup.java @@ -1,3 +1,19 @@ +/* + * Copyright 2026 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + package com.example.snippets.java.annotations; import java.lang.annotation.ElementType; diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/annotations/SnippetItem.java b/snippets/java-app/src/main/java/com/example/snippets/java/annotations/SnippetItem.java index 391860d5..d3020ba9 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/annotations/SnippetItem.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/annotations/SnippetItem.java @@ -1,3 +1,19 @@ +/* + * Copyright 2026 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + package com.example.snippets.java.annotations; import java.lang.annotation.ElementType; From 2cea1eabdcbf541e891582b05ee7f82ffaac0c78 Mon Sep 17 00:00:00 2001 From: dkhawk <107309+dkhawk@users.noreply.github.com> Date: Thu, 19 Mar 2026 18:06:10 -0600 Subject: [PATCH 17/36] Include region tags in catalog index and separate list items --- snippets/CATALOG.md | 91 +++++++++++++++++++-------------- snippets/scripts/catalog_api.py | 24 ++++++--- 2 files changed, 68 insertions(+), 47 deletions(-) diff --git a/snippets/CATALOG.md b/snippets/CATALOG.md index 0ba2807d..8723d165 100644 --- a/snippets/CATALOG.md +++ b/snippets/CATALOG.md @@ -11,92 +11,105 @@ This section maps high-level concepts (groups) to specific demonstration files a - **1. Fly To**: - *Description*: Animates the camera to a specific position with a tilt and heading over 5 seconds. - - *Links*: Kotlin: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:45](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L45) | Java: [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:48](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L48) + - **Kotlin**: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:45](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L45) (Tag: `maps_android_3d_camera_fly_to_kt`) + - **Java**: [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:48](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L48) (Tag: `No Tag`) - **2. Fly Around**: - *Description*: Rotates the camera 360 degrees around a specific location over 10 seconds. - - *Links*: Kotlin: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:76](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L76) | Java: [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:68](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L68) + - **Kotlin**: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:76](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L76) (Tag: `maps_android_3d_camera_fly_around_kt`) + - **Java**: [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:68](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L68) (Tag: `maps_android_3d_camera_fly_around_java`) - **3. Stop Animation**: - *Description*: Stops any currently running camera animation immediately. - - *Links*: Kotlin: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:120](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L120) | Java: [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:99](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L99) + - **Kotlin**: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:120](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L120) (Tag: `maps_android_3d_camera_stop_kt`) + - **Java**: [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:99](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L99) (Tag: `maps_android_3d_camera_stop_java`) - **4. Listen Camera Events**: - *Description*: Logs camera change events to the console, printing the center coordinates as the camera moves. - - *Links*: Kotlin: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:171](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L171) | Java: [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:121](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L121) + - **Kotlin**: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:171](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L171) (Tag: `maps_android_3d_camera_events_kt`) + - **Java**: [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:121](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L121) (Tag: `maps_android_3d_camera_events_java`) - **5. Listen Steady State**: - *Description*: Logs to the console when the map finishes rendering or enters a steady state. - - *Links*: Kotlin: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:202](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L202) | Java: [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:152](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L152) + - **Kotlin**: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:202](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L202) (Tag: `maps_android_3d_camera_steady_kt`) + - **Java**: [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:152](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L152) (Tag: `maps_android_3d_camera_steady_java`) ### Map Initialization > Snippets demonstrating map lifecycle, listeners and readiness states. - **1. Listen Events**: - - *Links*: Kotlin: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:87](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L87) + - **Kotlin**: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:87](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L87) (Tag: `maps_android_3d_init_listeners_kt`) - **1. Basic Map3D Initialization**: - *Description*: Initializes a standard 3D Map View and sets an initial camera angle. - - *Links*: Java: [java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java:38](java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java#L38) + - **Java**: [java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java:38](java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java#L38) (Tag: `maps_android_3d_init_basic_java`) - **2. Add Map to AndroidView**: - *Description*: Shows how to add a Map3DView to an AndroidView which bridges to Jetpack Compose. - - *Links*: Kotlin: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:48](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L48) + - **Kotlin**: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:48](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L48) (Tag: `No Tag`) - **2. Listen Map Events**: - *Description*: Logs map events to the console, such as clicks or idle status. - - *Links*: Java: [java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java:69](java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java#L69) + - **Java**: [java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java:69](java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java#L69) (Tag: `maps_android_3d_init_listeners_java`) ### Markers > Snippets demonstrating standard, extruded, and custom styled markers. - **1. Basic**: - *Description*: Adds a standard marker. - - *Links*: Kotlin: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:48](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L48) | Java: [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:59](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L59) + - **Kotlin**: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:48](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L48) (Tag: `maps_android_3d_marker_add_kt`) + - **Java**: [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:59](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L59) (Tag: `maps_android_3d_marker_add_java`) - **2. Advanced**: - *Description*: Adds a 'Priority Marker' that is extruded and collides with other markers. - - *Links*: Kotlin: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:89](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L89) | Java: [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:88](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L88) + - **Kotlin**: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:89](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L89) (Tag: `maps_android_3d_marker_options_kt`) + - **Java**: [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:88](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L88) (Tag: `maps_android_3d_marker_options_java`) - **3. Click**: - *Description*: Adds a marker that logs a message when clicked. - - *Links*: Kotlin: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:131](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L131) | Java: [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:120](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L120) + - **Kotlin**: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:131](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L131) (Tag: `maps_android_3d_marker_click_kt`) + - **Java**: [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:120](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L120) (Tag: `maps_android_3d_marker_click_java`) - **4. Custom Icon**: - *Description*: Adds a marker with a custom icon using PinConfiguration and Glyph styling. - - *Links*: Kotlin: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:165](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L165) | Java: [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:159](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L159) + - **Kotlin**: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:165](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L165) (Tag: `maps_android_3d_marker_custom_icon_kt`) + - **Java**: [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:159](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L159) (Tag: `maps_android_3d_marker_custom_icon_java`) ### Models -> - - **1. Basic**: - *Description*: Loads a GLB model from a URL and places it clamped to the ground. - - *Links*: Kotlin: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:43](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L43) | Java: [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java:49](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L49) + - **Kotlin**: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:43](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L43) (Tag: `maps_android_3d_model_add_kt`) + - **Java**: [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java:49](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L49) (Tag: `maps_android_3d_model_add_java`) ### Places -> - - **1. Listen Clicks**: - *Description*: Sets up a listener that logs the Place ID when a user clicks on a 3D building or POI. - - *Links*: Kotlin: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:39](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L39) | Java: [java-app/src/main/java/com/example/snippets/java/snippets/PlaceSnippets.java:51](java-app/src/main/java/com/example/snippets/java/snippets/PlaceSnippets.java#L51) + - **Kotlin**: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:39](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L39) (Tag: `maps_android_3d_place_click_kt`) + - **Java**: [java-app/src/main/java/com/example/snippets/java/snippets/PlaceSnippets.java:51](java-app/src/main/java/com/example/snippets/java/snippets/PlaceSnippets.java#L51) (Tag: `maps_android_3d_place_click_java`) ### Polygons > Snippets demonstrating 2D and 3D extruded polygon layers on the map. - **1. Basic**: - *Description*: Draws a red polygon with a blue stroke around a small area - - *Links*: Kotlin: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:39](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L39) | Java: [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:48](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L48) + - **Kotlin**: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:39](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L39) (Tag: `maps_android_3d_polygon_add_kt`) + - **Java**: [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:48](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L48) (Tag: `maps_android_3d_polygon_add_java`) - **2. Extruded**: - - *Links*: Kotlin: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:83](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L83) | Java: [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:81](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L81) + - **Kotlin**: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:83](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L83) (Tag: `maps_android_3d_polygon_extruded_kt`) + - **Java**: [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:81](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L81) (Tag: `maps_android_3d_polygon_extruded_java`) ### Polylines > Snippets demonstrating 2D and 3D extruded polyline paths on the map. - **1. Basic**: - *Description*: Draws a thick red polyline connecting three points - - *Links*: Kotlin: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:39](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L39) | Java: [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:48](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L48) + - **Kotlin**: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:39](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L39) (Tag: `maps_android_3d_polyline_add_kt`) + - **Java**: [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:48](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L48) (Tag: `maps_android_3d_polyline_add_java`) - **2. Styled**: - - *Links*: Kotlin: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:80](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L80) | Java: [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:78](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L78) + - **Kotlin**: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:80](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L80) (Tag: `maps_android_3d_polyline_options_kt`) + - **Java**: [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:78](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L78) (Tag: `maps_android_3d_polyline_options_java`) ### Popovers > Snippets demonstrating anchored and configured 3D Popover views. - **1. Marker Anchor**: - *Description*: Adds a 'Hello Popover!' text bubble anchored to a marker - - *Links*: Kotlin: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:43](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L43) | Java: [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:53](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L53) + - **Kotlin**: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:43](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L43) (Tag: `maps_android_3d_popover_add_kt`) + - **Java**: [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:53](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L53) (Tag: `maps_android_3d_popover_add_java`) - **2. Configured**: - *Description*: Adds an 'Info' popover anchored to a marker with auto-close enabled and auto-pan disabled. - - *Links*: Kotlin: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:90](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L90) | Java: [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:89](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L89) + - **Kotlin**: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:90](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L90) (Tag: `maps_android_3d_popover_options_kt`) + - **Java**: [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:89](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L89) (Tag: `maps_android_3d_popover_options_java`) --- @@ -1069,42 +1082,42 @@ The following non-getter/setter APIs currently have `0` occurrences within this ### `GoogleMap3D` - `addMarker`: - - [TrackedMap3D.java:37](TrackedMap3D.java#L37) (Tag: `No Tag`) + - [TrackedMap3D.java:53](TrackedMap3D.java#L53) (Tag: `No Tag`) - `addModel`: - - [TrackedMap3D.java:55](TrackedMap3D.java#L55) (Tag: `No Tag`) + - [TrackedMap3D.java:71](TrackedMap3D.java#L71) (Tag: `No Tag`) - `addPolygon`: - - [TrackedMap3D.java:49](TrackedMap3D.java#L49) (Tag: `No Tag`) + - [TrackedMap3D.java:65](TrackedMap3D.java#L65) (Tag: `No Tag`) - `addPolyline`: - - [TrackedMap3D.java:43](TrackedMap3D.java#L43) (Tag: `No Tag`) + - [TrackedMap3D.java:59](TrackedMap3D.java#L59) (Tag: `No Tag`) - `addPopover`: - - [TrackedMap3D.java:61](TrackedMap3D.java#L61) (Tag: `No Tag`) + - [TrackedMap3D.java:77](TrackedMap3D.java#L77) (Tag: `No Tag`) - `flyCameraAround`: - - [TrackedMap3D.java:69](TrackedMap3D.java#L69) (Tag: `No Tag`) + - [TrackedMap3D.java:85](TrackedMap3D.java#L85) (Tag: `No Tag`) - `flyCameraTo`: - - [TrackedMap3D.java:74](TrackedMap3D.java#L74) (Tag: `No Tag`) + - [TrackedMap3D.java:90](TrackedMap3D.java#L90) (Tag: `No Tag`) - `getCamera`: - [MapActivity.java:53](MapActivity.java#L53) (Tag: `No Tag`) - - [TrackedMap3D.java:72](TrackedMap3D.java#L72) (Tag: `No Tag`) + - [TrackedMap3D.java:88](TrackedMap3D.java#L88) (Tag: `No Tag`) - `getCameraRestriction`: ❌ No coverage - `getMapMode`: ❌ No coverage - `setCamera`: - - [TrackedMap3D.java:66](TrackedMap3D.java#L66) (Tag: `No Tag`) + - [TrackedMap3D.java:82](TrackedMap3D.java#L82) (Tag: `No Tag`) - [java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java:54](java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java#L54) (Tag: `maps_android_3d_init_basic_java`) - `setCameraAnimationEndListener`: ❌ No coverage - `setCameraChangedListener`: - - [TrackedMap3D.java:67](TrackedMap3D.java#L67) (Tag: `No Tag`) + - [TrackedMap3D.java:83](TrackedMap3D.java#L83) (Tag: `No Tag`) - `setCameraRestriction`: ❌ No coverage - `setMap3DClickListener`: - - [TrackedMap3D.java:68](TrackedMap3D.java#L68) (Tag: `No Tag`) + - [TrackedMap3D.java:84](TrackedMap3D.java#L84) (Tag: `No Tag`) - `setMapMode`: ❌ No coverage - `setOnMapReadyListener`: - - [TrackedMap3D.java:75](TrackedMap3D.java#L75) (Tag: `No Tag`) + - [TrackedMap3D.java:91](TrackedMap3D.java#L91) (Tag: `No Tag`) - [java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java:74](java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java#L74) (Tag: `maps_android_3d_init_listeners_java`) - `setOnMapSteadyListener`: - - [TrackedMap3D.java:76](TrackedMap3D.java#L76) (Tag: `No Tag`) + - [TrackedMap3D.java:92](TrackedMap3D.java#L92) (Tag: `No Tag`) - [java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java:85](java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java#L85) (Tag: `maps_android_3d_init_listeners_java`) - `stopCameraAnimation`: - - [TrackedMap3D.java:73](TrackedMap3D.java#L73) (Tag: `No Tag`) + - [TrackedMap3D.java:89](TrackedMap3D.java#L89) (Tag: `No Tag`) ### `Hole` - `getVertices`: ❌ No coverage diff --git a/snippets/scripts/catalog_api.py b/snippets/scripts/catalog_api.py index 16f04750..4dc59ce0 100644 --- a/snippets/scripts/catalog_api.py +++ b/snippets/scripts/catalog_api.py @@ -161,6 +161,14 @@ def generate_snippet_index(snippets_dir, file_map): item_title = item_title_match.group(1) item_desc = item_desc_match.group(1) if item_desc_match else "" + # Read ahead for Region Tag + tag = "No Tag" + for j in range(i, min(i+15, len(lines))): + start_match = re.search(r'\[START\s+([a-zA-Z0-9_]+)\]', lines[j]) + if start_match: + tag = start_match.group(1) + break + rel_path = file_map.get(name, os.path.relpath(filepath, snippets_dir)) link = f"[{rel_path}:{i+1}]({rel_path}#L{i+1})" @@ -169,9 +177,9 @@ def generate_snippet_index(snippets_dir, file_map): current_item['description'] = item_desc if is_kotlin: - current_item['kotlin'] = link + current_item['kotlin'] = {'link': link, 'tag': tag} else: - current_item['java'] = link + current_item['java'] = {'link': link, 'tag': tag} # Format Markdown lines = ["## 📑 Snippet Concepts Index\n\n"] @@ -179,7 +187,9 @@ def generate_snippet_index(snippets_dir, file_map): for title, group in sorted(groups.items()): lines.append(f"### {title}\n") - lines.append(f"> {group['description']}\n\n") + + if group['description']: + lines.append(f"> {group['description']}\n\n") # Sort items: try numerical sort if prefixed with numbers (e.g. "1. Basic") sorted_items = sorted(group['items'].items(), key=lambda x: (re.search(r'^(\d+)', x[0]).group(1) if re.search(r'^(\d+)', x[0]) else x[0])) @@ -188,14 +198,12 @@ def generate_snippet_index(snippets_dir, file_map): lines.append(f"- **{item_title}**:\n") if item['description']: lines.append(f" - *Description*: {item['description']}\n") - formatted_uses = [] + if item['kotlin']: - formatted_uses.append(f"Kotlin: {item['kotlin']}") + lines.append(f" - **Kotlin**: {item['kotlin']['link']} (Tag: `{item['kotlin']['tag']}`)\n") if item['java']: - formatted_uses.append(f"Java: {item['java']}") + lines.append(f" - **Java**: {item['java']['link']} (Tag: `{item['java']['tag']}`)\n") - if formatted_uses: - lines.append(f" - *Links*: {' | '.join(formatted_uses)}\n") lines.append("\n") return lines From cc4551ae14709893314198a163a908afeaddd6eb Mon Sep 17 00:00:00 2001 From: dkhawk <107309+dkhawk@users.noreply.github.com> Date: Thu, 19 Mar 2026 18:08:17 -0600 Subject: [PATCH 18/36] Update Region Tag search to look both directions prioritizing closest match --- snippets/CATALOG.md | 4 ++-- snippets/scripts/catalog_api.py | 14 ++++++++++---- 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/snippets/CATALOG.md b/snippets/CATALOG.md index 8723d165..14773eac 100644 --- a/snippets/CATALOG.md +++ b/snippets/CATALOG.md @@ -12,7 +12,7 @@ This section maps high-level concepts (groups) to specific demonstration files a - **1. Fly To**: - *Description*: Animates the camera to a specific position with a tilt and heading over 5 seconds. - **Kotlin**: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:45](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L45) (Tag: `maps_android_3d_camera_fly_to_kt`) - - **Java**: [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:48](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L48) (Tag: `No Tag`) + - **Java**: [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:48](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L48) (Tag: `maps_android_3d_camera_fly_to_java`) - **2. Fly Around**: - *Description*: Rotates the camera 360 degrees around a specific location over 10 seconds. - **Kotlin**: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:76](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L76) (Tag: `maps_android_3d_camera_fly_around_kt`) @@ -40,7 +40,7 @@ This section maps high-level concepts (groups) to specific demonstration files a - **Java**: [java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java:38](java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java#L38) (Tag: `maps_android_3d_init_basic_java`) - **2. Add Map to AndroidView**: - *Description*: Shows how to add a Map3DView to an AndroidView which bridges to Jetpack Compose. - - **Kotlin**: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:48](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L48) (Tag: `No Tag`) + - **Kotlin**: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:48](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L48) (Tag: `maps_android_3d_init_basic_kt`) - **2. Listen Map Events**: - *Description*: Logs map events to the console, such as clicks or idle status. - **Java**: [java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java:69](java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java#L69) (Tag: `maps_android_3d_init_listeners_java`) diff --git a/snippets/scripts/catalog_api.py b/snippets/scripts/catalog_api.py index 4dc59ce0..07dcc698 100644 --- a/snippets/scripts/catalog_api.py +++ b/snippets/scripts/catalog_api.py @@ -161,13 +161,19 @@ def generate_snippet_index(snippets_dir, file_map): item_title = item_title_match.group(1) item_desc = item_desc_match.group(1) if item_desc_match else "" - # Read ahead for Region Tag + # Read back or ahead for closest Region Tag tag = "No Tag" - for j in range(i, min(i+15, len(lines))): + min_dist = 999 + start_j = max(0, i - 15) + end_j = min(len(lines), i + 15) + for j in range(start_j, end_j): start_match = re.search(r'\[START\s+([a-zA-Z0-9_]+)\]', lines[j]) if start_match: - tag = start_match.group(1) - break + current_tag = start_match.group(1) + dist = abs(j - i) + if dist < min_dist: + min_dist = dist + tag = current_tag rel_path = file_map.get(name, os.path.relpath(filepath, snippets_dir)) link = f"[{rel_path}:{i+1}]({rel_path}#L{i+1})" From c679f028d7461a7d1bda372332bf1bb3950a5bc4 Mon Sep 17 00:00:00 2001 From: dkhawk <107309+dkhawk@users.noreply.github.com> Date: Fri, 20 Mar 2026 10:10:07 -0600 Subject: [PATCH 19/36] Update Catalog markdown index with sub-bullet layout nested formats --- snippets/CATALOG.md | 152 ++++++++++++++++++++++++-------- snippets/scripts/catalog_api.py | 8 +- 2 files changed, 120 insertions(+), 40 deletions(-) diff --git a/snippets/CATALOG.md b/snippets/CATALOG.md index 14773eac..fb303741 100644 --- a/snippets/CATALOG.md +++ b/snippets/CATALOG.md @@ -11,105 +11,181 @@ This section maps high-level concepts (groups) to specific demonstration files a - **1. Fly To**: - *Description*: Animates the camera to a specific position with a tilt and heading over 5 seconds. - - **Kotlin**: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:45](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L45) (Tag: `maps_android_3d_camera_fly_to_kt`) - - **Java**: [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:48](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L48) (Tag: `maps_android_3d_camera_fly_to_java`) + - **Kotlin** + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:45](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L45) + - Tag: `maps_android_3d_camera_fly_to_kt` + - **Java** + - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:48](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L48) + - Tag: `maps_android_3d_camera_fly_to_java` - **2. Fly Around**: - *Description*: Rotates the camera 360 degrees around a specific location over 10 seconds. - - **Kotlin**: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:76](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L76) (Tag: `maps_android_3d_camera_fly_around_kt`) - - **Java**: [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:68](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L68) (Tag: `maps_android_3d_camera_fly_around_java`) + - **Kotlin** + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:76](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L76) + - Tag: `maps_android_3d_camera_fly_around_kt` + - **Java** + - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:68](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L68) + - Tag: `maps_android_3d_camera_fly_around_java` - **3. Stop Animation**: - *Description*: Stops any currently running camera animation immediately. - - **Kotlin**: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:120](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L120) (Tag: `maps_android_3d_camera_stop_kt`) - - **Java**: [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:99](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L99) (Tag: `maps_android_3d_camera_stop_java`) + - **Kotlin** + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:120](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L120) + - Tag: `maps_android_3d_camera_stop_kt` + - **Java** + - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:99](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L99) + - Tag: `maps_android_3d_camera_stop_java` - **4. Listen Camera Events**: - *Description*: Logs camera change events to the console, printing the center coordinates as the camera moves. - - **Kotlin**: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:171](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L171) (Tag: `maps_android_3d_camera_events_kt`) - - **Java**: [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:121](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L121) (Tag: `maps_android_3d_camera_events_java`) + - **Kotlin** + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:171](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L171) + - Tag: `maps_android_3d_camera_events_kt` + - **Java** + - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:121](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L121) + - Tag: `maps_android_3d_camera_events_java` - **5. Listen Steady State**: - *Description*: Logs to the console when the map finishes rendering or enters a steady state. - - **Kotlin**: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:202](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L202) (Tag: `maps_android_3d_camera_steady_kt`) - - **Java**: [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:152](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L152) (Tag: `maps_android_3d_camera_steady_java`) + - **Kotlin** + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:202](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L202) + - Tag: `maps_android_3d_camera_steady_kt` + - **Java** + - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:152](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L152) + - Tag: `maps_android_3d_camera_steady_java` ### Map Initialization > Snippets demonstrating map lifecycle, listeners and readiness states. - **1. Listen Events**: - - **Kotlin**: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:87](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L87) (Tag: `maps_android_3d_init_listeners_kt`) + - **Kotlin** + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:87](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L87) + - Tag: `maps_android_3d_init_listeners_kt` - **1. Basic Map3D Initialization**: - *Description*: Initializes a standard 3D Map View and sets an initial camera angle. - - **Java**: [java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java:38](java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java#L38) (Tag: `maps_android_3d_init_basic_java`) + - **Java** + - [java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java:38](java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java#L38) + - Tag: `maps_android_3d_init_basic_java` - **2. Add Map to AndroidView**: - *Description*: Shows how to add a Map3DView to an AndroidView which bridges to Jetpack Compose. - - **Kotlin**: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:48](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L48) (Tag: `maps_android_3d_init_basic_kt`) + - **Kotlin** + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:48](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L48) + - Tag: `maps_android_3d_init_basic_kt` - **2. Listen Map Events**: - *Description*: Logs map events to the console, such as clicks or idle status. - - **Java**: [java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java:69](java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java#L69) (Tag: `maps_android_3d_init_listeners_java`) + - **Java** + - [java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java:69](java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java#L69) + - Tag: `maps_android_3d_init_listeners_java` ### Markers > Snippets demonstrating standard, extruded, and custom styled markers. - **1. Basic**: - *Description*: Adds a standard marker. - - **Kotlin**: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:48](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L48) (Tag: `maps_android_3d_marker_add_kt`) - - **Java**: [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:59](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L59) (Tag: `maps_android_3d_marker_add_java`) + - **Kotlin** + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:48](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L48) + - Tag: `maps_android_3d_marker_add_kt` + - **Java** + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:59](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L59) + - Tag: `maps_android_3d_marker_add_java` - **2. Advanced**: - *Description*: Adds a 'Priority Marker' that is extruded and collides with other markers. - - **Kotlin**: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:89](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L89) (Tag: `maps_android_3d_marker_options_kt`) - - **Java**: [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:88](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L88) (Tag: `maps_android_3d_marker_options_java`) + - **Kotlin** + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:89](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L89) + - Tag: `maps_android_3d_marker_options_kt` + - **Java** + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:88](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L88) + - Tag: `maps_android_3d_marker_options_java` - **3. Click**: - *Description*: Adds a marker that logs a message when clicked. - - **Kotlin**: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:131](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L131) (Tag: `maps_android_3d_marker_click_kt`) - - **Java**: [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:120](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L120) (Tag: `maps_android_3d_marker_click_java`) + - **Kotlin** + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:131](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L131) + - Tag: `maps_android_3d_marker_click_kt` + - **Java** + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:120](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L120) + - Tag: `maps_android_3d_marker_click_java` - **4. Custom Icon**: - *Description*: Adds a marker with a custom icon using PinConfiguration and Glyph styling. - - **Kotlin**: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:165](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L165) (Tag: `maps_android_3d_marker_custom_icon_kt`) - - **Java**: [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:159](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L159) (Tag: `maps_android_3d_marker_custom_icon_java`) + - **Kotlin** + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:165](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L165) + - Tag: `maps_android_3d_marker_custom_icon_kt` + - **Java** + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:159](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L159) + - Tag: `maps_android_3d_marker_custom_icon_java` ### Models - **1. Basic**: - *Description*: Loads a GLB model from a URL and places it clamped to the ground. - - **Kotlin**: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:43](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L43) (Tag: `maps_android_3d_model_add_kt`) - - **Java**: [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java:49](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L49) (Tag: `maps_android_3d_model_add_java`) + - **Kotlin** + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:43](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L43) + - Tag: `maps_android_3d_model_add_kt` + - **Java** + - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java:49](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L49) + - Tag: `maps_android_3d_model_add_java` ### Places - **1. Listen Clicks**: - *Description*: Sets up a listener that logs the Place ID when a user clicks on a 3D building or POI. - - **Kotlin**: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:39](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L39) (Tag: `maps_android_3d_place_click_kt`) - - **Java**: [java-app/src/main/java/com/example/snippets/java/snippets/PlaceSnippets.java:51](java-app/src/main/java/com/example/snippets/java/snippets/PlaceSnippets.java#L51) (Tag: `maps_android_3d_place_click_java`) + - **Kotlin** + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:39](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L39) + - Tag: `maps_android_3d_place_click_kt` + - **Java** + - [java-app/src/main/java/com/example/snippets/java/snippets/PlaceSnippets.java:51](java-app/src/main/java/com/example/snippets/java/snippets/PlaceSnippets.java#L51) + - Tag: `maps_android_3d_place_click_java` ### Polygons > Snippets demonstrating 2D and 3D extruded polygon layers on the map. - **1. Basic**: - *Description*: Draws a red polygon with a blue stroke around a small area - - **Kotlin**: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:39](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L39) (Tag: `maps_android_3d_polygon_add_kt`) - - **Java**: [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:48](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L48) (Tag: `maps_android_3d_polygon_add_java`) + - **Kotlin** + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:39](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L39) + - Tag: `maps_android_3d_polygon_add_kt` + - **Java** + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:48](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L48) + - Tag: `maps_android_3d_polygon_add_java` - **2. Extruded**: - - **Kotlin**: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:83](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L83) (Tag: `maps_android_3d_polygon_extruded_kt`) - - **Java**: [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:81](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L81) (Tag: `maps_android_3d_polygon_extruded_java`) + - **Kotlin** + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:83](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L83) + - Tag: `maps_android_3d_polygon_extruded_kt` + - **Java** + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:81](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L81) + - Tag: `maps_android_3d_polygon_extruded_java` ### Polylines > Snippets demonstrating 2D and 3D extruded polyline paths on the map. - **1. Basic**: - *Description*: Draws a thick red polyline connecting three points - - **Kotlin**: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:39](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L39) (Tag: `maps_android_3d_polyline_add_kt`) - - **Java**: [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:48](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L48) (Tag: `maps_android_3d_polyline_add_java`) + - **Kotlin** + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:39](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L39) + - Tag: `maps_android_3d_polyline_add_kt` + - **Java** + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:48](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L48) + - Tag: `maps_android_3d_polyline_add_java` - **2. Styled**: - - **Kotlin**: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:80](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L80) (Tag: `maps_android_3d_polyline_options_kt`) - - **Java**: [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:78](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L78) (Tag: `maps_android_3d_polyline_options_java`) + - **Kotlin** + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:80](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L80) + - Tag: `maps_android_3d_polyline_options_kt` + - **Java** + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:78](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L78) + - Tag: `maps_android_3d_polyline_options_java` ### Popovers > Snippets demonstrating anchored and configured 3D Popover views. - **1. Marker Anchor**: - *Description*: Adds a 'Hello Popover!' text bubble anchored to a marker - - **Kotlin**: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:43](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L43) (Tag: `maps_android_3d_popover_add_kt`) - - **Java**: [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:53](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L53) (Tag: `maps_android_3d_popover_add_java`) + - **Kotlin** + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:43](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L43) + - Tag: `maps_android_3d_popover_add_kt` + - **Java** + - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:53](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L53) + - Tag: `maps_android_3d_popover_add_java` - **2. Configured**: - *Description*: Adds an 'Info' popover anchored to a marker with auto-close enabled and auto-pan disabled. - - **Kotlin**: [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:90](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L90) (Tag: `maps_android_3d_popover_options_kt`) - - **Java**: [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:89](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L89) (Tag: `maps_android_3d_popover_options_java`) + - **Kotlin** + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:90](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L90) + - Tag: `maps_android_3d_popover_options_kt` + - **Java** + - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:89](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L89) + - Tag: `maps_android_3d_popover_options_java` --- diff --git a/snippets/scripts/catalog_api.py b/snippets/scripts/catalog_api.py index 07dcc698..fb856bb5 100644 --- a/snippets/scripts/catalog_api.py +++ b/snippets/scripts/catalog_api.py @@ -206,9 +206,13 @@ def generate_snippet_index(snippets_dir, file_map): lines.append(f" - *Description*: {item['description']}\n") if item['kotlin']: - lines.append(f" - **Kotlin**: {item['kotlin']['link']} (Tag: `{item['kotlin']['tag']}`)\n") + lines.append(f" - **Kotlin**\n") + lines.append(f" - {item['kotlin']['link']}\n") + lines.append(f" - Tag: `{item['kotlin']['tag']}`\n") if item['java']: - lines.append(f" - **Java**: {item['java']['link']} (Tag: `{item['java']['tag']}`)\n") + lines.append(f" - **Java**\n") + lines.append(f" - {item['java']['link']}\n") + lines.append(f" - Tag: `{item['java']['tag']}`\n") lines.append("\n") From a5c0f77e2401e14e8913b7d3ede700efa6479de0 Mon Sep 17 00:00:00 2001 From: dkhawk <107309+dkhawk@users.noreply.github.com> Date: Fri, 20 Mar 2026 10:21:54 -0600 Subject: [PATCH 20/36] Add setCameraRestrictions snippet to CameraControlSnippets --- snippets/CATALOG.md | 28 +++++++++++------- .../java/snippets/CameraControlSnippets.java | 24 +++++++++++++++ .../kotlin/snippets/CameraControlSnippets.kt | 29 +++++++++++++++++++ 3 files changed, 71 insertions(+), 10 deletions(-) diff --git a/snippets/CATALOG.md b/snippets/CATALOG.md index fb303741..930bd7b8 100644 --- a/snippets/CATALOG.md +++ b/snippets/CATALOG.md @@ -12,43 +12,51 @@ This section maps high-level concepts (groups) to specific demonstration files a - **1. Fly To**: - *Description*: Animates the camera to a specific position with a tilt and heading over 5 seconds. - **Kotlin** - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:45](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L45) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:47](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L47) - Tag: `maps_android_3d_camera_fly_to_kt` - **Java** - - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:48](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L48) + - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:50](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L50) - Tag: `maps_android_3d_camera_fly_to_java` - **2. Fly Around**: - *Description*: Rotates the camera 360 degrees around a specific location over 10 seconds. - **Kotlin** - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:76](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L76) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:78](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L78) - Tag: `maps_android_3d_camera_fly_around_kt` - **Java** - - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:68](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L68) + - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:70](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L70) - Tag: `maps_android_3d_camera_fly_around_java` - **3. Stop Animation**: - *Description*: Stops any currently running camera animation immediately. - **Kotlin** - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:120](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L120) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:122](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L122) - Tag: `maps_android_3d_camera_stop_kt` - **Java** - - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:99](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L99) + - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:101](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L101) - Tag: `maps_android_3d_camera_stop_java` - **4. Listen Camera Events**: - *Description*: Logs camera change events to the console, printing the center coordinates as the camera moves. - **Kotlin** - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:171](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L171) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:173](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L173) - Tag: `maps_android_3d_camera_events_kt` - **Java** - - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:121](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L121) + - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:123](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L123) - Tag: `maps_android_3d_camera_events_java` - **5. Listen Steady State**: - *Description*: Logs to the console when the map finishes rendering or enters a steady state. - **Kotlin** - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:202](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L202) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:204](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L204) - Tag: `maps_android_3d_camera_steady_kt` - **Java** - - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:152](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L152) + - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:154](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L154) - Tag: `maps_android_3d_camera_steady_java` +- **6. Camera Restriction**: + - *Description*: Restricts the camera to a specific altitude range and bounding box. + - **Kotlin** + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:220](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L220) + - Tag: `maps_android_3d_camera_restriction_kt` + - **Java** + - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:170](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L170) + - Tag: `maps_android_3d_camera_restriction_java` ### Map Initialization > Snippets demonstrating map lifecycle, listeners and readiness states. diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java index ccb24ab4..cd7d5f39 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java @@ -25,6 +25,8 @@ import com.google.android.gms.maps3d.model.FlyAroundOptions; import com.google.android.gms.maps3d.model.FlyToOptions; import com.google.android.gms.maps3d.model.LatLngAltitude; +import com.google.android.gms.maps3d.model.CameraRestriction; +import com.google.android.gms.maps3d.model.LatLngBounds; import com.example.snippets.java.annotations.SnippetGroup; import com.example.snippets.java.annotations.SnippetItem; @@ -160,4 +162,26 @@ public void listenToMapSteadyState() { }); // [END maps_android_3d_camera_steady_java] } + + /** + * Restricts the camera to a specific altitude range and geographic bounds. + */ + @SuppressWarnings("unused") + @SnippetItem( + title = "6. Camera Restriction", + description = "Restricts the camera to a specific altitude range and bounding box." + ) + public void setCameraRestrictions() { + // [START maps_android_3d_camera_restriction_java] + LatLngBounds nycBounds = new LatLngBounds( + 40.856492, -73.802409, 40.685630, -74.050304 + ); + + CameraRestriction restriction = new CameraRestriction( + 500.0, 10000.0, 0.0, 360.0, 0.0, 90.0, nycBounds + ); + + map.setCameraRestriction(restriction); + // [END maps_android_3d_camera_restriction_java] + } } diff --git a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt index b58ea083..74a1b398 100644 --- a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt +++ b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt @@ -25,6 +25,8 @@ import com.google.android.gms.maps3d.model.camera import com.google.android.gms.maps3d.model.flyAroundOptions import com.google.android.gms.maps3d.model.flyToOptions import com.google.android.gms.maps3d.model.latLngAltitude +import com.google.android.gms.maps3d.model.cameraRestriction +import com.google.android.gms.maps3d.model.latLngBounds import kotlinx.coroutines.delay import kotlinx.coroutines.launch import kotlin.time.Duration.Companion.seconds @@ -210,4 +212,31 @@ class CameraControlSnippets( } // [END maps_android_3d_camera_steady_kt] } + + /** + * Restricts the camera to a specific altitude range and geographic bounds. + */ + @Suppress("unused") + @SnippetItem( + title = "6. Camera Restriction", + description = "Restricts the camera to a specific altitude range and bounding box." + ) + fun setCameraRestrictions() { + // [START maps_android_3d_camera_restriction_kt] + val nycBounds = latLngBounds { + northEastLat = 40.856492 + northEastLng = -73.802409 + southWestLat = 40.685630 + southWestLng = -74.050304 + } + + val restriction = cameraRestriction { + minAltitude = 500.0 + maxAltitude = 10000.0 + bounds = nycBounds + } + + map.setCameraRestriction(restriction) + // [END maps_android_3d_camera_restriction_kt] + } } From 61f7c7ca1a50dfb2b61402693c717bb396db49c5 Mon Sep 17 00:00:00 2001 From: dkhawk <107309+dkhawk@users.noreply.github.com> Date: Fri, 20 Mar 2026 10:22:36 -0600 Subject: [PATCH 21/36] Add setCameraRestrictions snippet and TrackedMap3D forwards --- snippets/CATALOG.md | 131 ++++++++++-------- .../example/snippets/java/TrackedMap3D.java | 3 + .../example/snippets/kotlin/TrackedMap3D.kt | 2 + 3 files changed, 76 insertions(+), 60 deletions(-) diff --git a/snippets/CATALOG.md b/snippets/CATALOG.md index 930bd7b8..e09843a4 100644 --- a/snippets/CATALOG.md +++ b/snippets/CATALOG.md @@ -206,12 +206,12 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d ### `Camera` - `getCenter`: - [MapActivity.kt:58](MapActivity.kt#L58) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:183](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L183) (Tag: `maps_android_3d_camera_events_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:185](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L185) (Tag: `maps_android_3d_camera_events_kt`) - `setCenter`: - [MapActivity.kt:191](MapActivity.kt#L191) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:128](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L128) (Tag: `maps_android_3d_camera_stop_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:52](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L52) (Tag: `maps_android_3d_camera_fly_to_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:84](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L84) (Tag: `maps_android_3d_camera_fly_around_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:130](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L130) (Tag: `maps_android_3d_camera_stop_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:54](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L54) (Tag: `maps_android_3d_camera_fly_to_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:86](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L86) (Tag: `maps_android_3d_camera_fly_around_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:61](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L61) (Tag: `maps_android_3d_init_basic_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:112](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L112) (Tag: `maps_android_3d_marker_options_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:143](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L143) (Tag: `maps_android_3d_marker_click_kt`) @@ -227,9 +227,9 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:77](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L77) (Tag: `No Tag`) - `setHeading`: - [MapActivity.kt:197](MapActivity.kt#L197) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:134](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L134) (Tag: `maps_android_3d_camera_stop_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:58](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L58) (Tag: `maps_android_3d_camera_fly_to_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:90](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L90) (Tag: `maps_android_3d_camera_fly_around_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:136](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L136) (Tag: `maps_android_3d_camera_stop_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:60](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L60) (Tag: `maps_android_3d_camera_fly_to_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:92](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L92) (Tag: `maps_android_3d_camera_fly_around_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:66](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L66) (Tag: `maps_android_3d_init_basic_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:118](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L118) (Tag: `maps_android_3d_marker_options_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:145](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L145) (Tag: `maps_android_3d_marker_click_kt`) @@ -245,9 +245,9 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:79](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L79) (Tag: `No Tag`) - `setRange`: - [MapActivity.kt:198](MapActivity.kt#L198) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:135](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L135) (Tag: `maps_android_3d_camera_stop_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:59](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L59) (Tag: `maps_android_3d_camera_fly_to_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:91](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L91) (Tag: `maps_android_3d_camera_fly_around_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:137](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L137) (Tag: `maps_android_3d_camera_stop_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:61](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L61) (Tag: `maps_android_3d_camera_fly_to_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:93](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L93) (Tag: `maps_android_3d_camera_fly_around_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:69](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L69) (Tag: `maps_android_3d_init_basic_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:119](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L119) (Tag: `maps_android_3d_marker_options_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:146](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L146) (Tag: `maps_android_3d_marker_click_kt`) @@ -262,15 +262,15 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:125](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L125) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:80](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L80) (Tag: `No Tag`) - `setRoll`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:136](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L136) (Tag: `maps_android_3d_camera_stop_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:60](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L60) (Tag: `maps_android_3d_camera_fly_to_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:92](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L92) (Tag: `maps_android_3d_camera_fly_around_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:138](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L138) (Tag: `maps_android_3d_camera_stop_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:62](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L62) (Tag: `maps_android_3d_camera_fly_to_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:94](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L94) (Tag: `maps_android_3d_camera_fly_around_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:68](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L68) (Tag: `maps_android_3d_init_basic_kt`) - `setTilt`: - [MapActivity.kt:196](MapActivity.kt#L196) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:133](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L133) (Tag: `maps_android_3d_camera_stop_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:57](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L57) (Tag: `maps_android_3d_camera_fly_to_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:89](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L89) (Tag: `maps_android_3d_camera_fly_around_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:135](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L135) (Tag: `maps_android_3d_camera_stop_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:59](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L59) (Tag: `maps_android_3d_camera_fly_to_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:91](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L91) (Tag: `maps_android_3d_camera_fly_around_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:67](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L67) (Tag: `maps_android_3d_init_basic_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:117](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L117) (Tag: `maps_android_3d_marker_options_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:144](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L144) (Tag: `maps_android_3d_marker_click_kt`) @@ -287,11 +287,14 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - `writeToParcel`: ❌ No coverage ### `CameraRestriction` -- `setBounds`: ❌ No coverage -- `setMaxAltitude`: ❌ No coverage +- `setBounds`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:236](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L236) (Tag: `maps_android_3d_camera_restriction_kt`) +- `setMaxAltitude`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:235](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L235) (Tag: `maps_android_3d_camera_restriction_kt`) - `setMaxHeading`: ❌ No coverage - `setMaxTilt`: ❌ No coverage -- `setMinAltitude`: ❌ No coverage +- `setMinAltitude`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:234](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L234) (Tag: `maps_android_3d_camera_restriction_kt`) - `setMinHeading`: ❌ No coverage - `setMinTilt`: ❌ No coverage - `writeToParcel`: ❌ No coverage @@ -301,14 +304,14 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - `getDurationInMillis`: ❌ No coverage - `getRounds`: ❌ No coverage - `setCenter`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:101](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L101) (Tag: `maps_android_3d_camera_fly_around_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:153](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L153) (Tag: `maps_android_3d_camera_stop_kt`) -- `setDurationInMillis`: - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:103](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L103) (Tag: `maps_android_3d_camera_fly_around_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:155](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L155) (Tag: `maps_android_3d_camera_stop_kt`) +- `setDurationInMillis`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:105](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L105) (Tag: `maps_android_3d_camera_fly_around_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:157](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L157) (Tag: `maps_android_3d_camera_stop_kt`) - `setRounds`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:102](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L102) (Tag: `maps_android_3d_camera_fly_around_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:154](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L154) (Tag: `maps_android_3d_camera_stop_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:104](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L104) (Tag: `maps_android_3d_camera_fly_around_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:156](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L156) (Tag: `maps_android_3d_camera_stop_kt`) - `writeToParcel`: ❌ No coverage ### `FlyToOptions` @@ -316,8 +319,8 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - `getEndCamera`: ❌ No coverage - `setDurationInMillis`: - [MapActivity.kt:202](MapActivity.kt#L202) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:142](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L142) (Tag: `maps_android_3d_camera_stop_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:65](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L65) (Tag: `maps_android_3d_camera_fly_to_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:144](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L144) (Tag: `maps_android_3d_camera_stop_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:67](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L67) (Tag: `maps_android_3d_camera_fly_to_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:121](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L121) (Tag: `maps_android_3d_marker_options_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:148](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L148) (Tag: `maps_android_3d_marker_click_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:205](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L205) (Tag: `maps_android_3d_marker_custom_icon_kt`) @@ -332,8 +335,8 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:82](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L82) (Tag: `No Tag`) - `setEndCamera`: - [MapActivity.kt:201](MapActivity.kt#L201) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:141](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L141) (Tag: `maps_android_3d_camera_stop_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:64](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L64) (Tag: `maps_android_3d_camera_fly_to_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:143](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L143) (Tag: `maps_android_3d_camera_stop_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:66](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L66) (Tag: `maps_android_3d_camera_fly_to_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:111](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L111) (Tag: `maps_android_3d_marker_options_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:142](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L142) (Tag: `maps_android_3d_marker_click_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:195](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L195) (Tag: `maps_android_3d_marker_custom_icon_kt`) @@ -383,7 +386,8 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - `getCamera`: - [MapActivity.kt:57](MapActivity.kt#L57) (Tag: `No Tag`) - [TrackedMap3D.kt:65](TrackedMap3D.kt#L65) (Tag: `No Tag`) -- `getCameraRestriction`: ❌ No coverage +- `getCameraRestriction`: + - [TrackedMap3D.kt:72](TrackedMap3D.kt#L72) (Tag: `No Tag`) - `getMapMode`: ❌ No coverage - `setCamera`: - [TrackedMap3D.kt:60](TrackedMap3D.kt#L60) (Tag: `No Tag`) @@ -394,7 +398,8 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - [MapExtensions.kt:27](MapExtensions.kt#L27) (Tag: `No Tag`) - `setCameraChangedListener`: - [TrackedMap3D.kt:61](TrackedMap3D.kt#L61) (Tag: `No Tag`) -- `setCameraRestriction`: ❌ No coverage +- `setCameraRestriction`: + - [TrackedMap3D.kt:71](TrackedMap3D.kt#L71) (Tag: `No Tag`) - `setMap3DClickListener`: - [TrackedMap3D.kt:62](TrackedMap3D.kt#L62) (Tag: `No Tag`) - `setMapMode`: ❌ No coverage @@ -439,9 +444,9 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - `getPosition`: ❌ No coverage - `setAltitude`: - [MapActivity.kt:194](MapActivity.kt#L194) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:131](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L131) (Tag: `maps_android_3d_camera_stop_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:55](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L55) (Tag: `maps_android_3d_camera_fly_to_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:87](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L87) (Tag: `maps_android_3d_camera_fly_around_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:133](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L133) (Tag: `maps_android_3d_camera_stop_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:57](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L57) (Tag: `maps_android_3d_camera_fly_to_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:89](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L89) (Tag: `maps_android_3d_camera_fly_around_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:64](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L64) (Tag: `maps_android_3d_init_basic_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:115](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L115) (Tag: `maps_android_3d_marker_options_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:138](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L138) (Tag: `maps_android_3d_marker_click_kt`) @@ -478,9 +483,9 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:98](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L98) (Tag: `maps_android_3d_popover_options_kt`) - `setLatitude`: - [MapActivity.kt:192](MapActivity.kt#L192) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:129](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L129) (Tag: `maps_android_3d_camera_stop_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:53](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L53) (Tag: `maps_android_3d_camera_fly_to_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:85](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L85) (Tag: `maps_android_3d_camera_fly_around_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:131](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L131) (Tag: `maps_android_3d_camera_stop_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:55](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L55) (Tag: `maps_android_3d_camera_fly_to_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:87](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L87) (Tag: `maps_android_3d_camera_fly_around_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:62](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L62) (Tag: `maps_android_3d_init_basic_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:113](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L113) (Tag: `maps_android_3d_marker_options_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:138](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L138) (Tag: `maps_android_3d_marker_click_kt`) @@ -517,9 +522,9 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:98](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L98) (Tag: `maps_android_3d_popover_options_kt`) - `setLongitude`: - [MapActivity.kt:193](MapActivity.kt#L193) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:130](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L130) (Tag: `maps_android_3d_camera_stop_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:54](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L54) (Tag: `maps_android_3d_camera_fly_to_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:86](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L86) (Tag: `maps_android_3d_camera_fly_around_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:132](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L132) (Tag: `maps_android_3d_camera_stop_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:56](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L56) (Tag: `maps_android_3d_camera_fly_to_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:88](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L88) (Tag: `maps_android_3d_camera_fly_around_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:63](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L63) (Tag: `maps_android_3d_init_basic_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:114](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L114) (Tag: `maps_android_3d_marker_options_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:138](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L138) (Tag: `maps_android_3d_marker_click_kt`) @@ -561,10 +566,14 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - `getNorthEastLng`: ❌ No coverage - `getSouthWestLat`: ❌ No coverage - `getSouthWestLng`: ❌ No coverage -- `setNorthEastLat`: ❌ No coverage -- `setNorthEastLng`: ❌ No coverage -- `setSouthWestLat`: ❌ No coverage -- `setSouthWestLng`: ❌ No coverage +- `setNorthEastLat`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:227](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L227) (Tag: `maps_android_3d_camera_restriction_kt`) +- `setNorthEastLng`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:228](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L228) (Tag: `maps_android_3d_camera_restriction_kt`) +- `setSouthWestLat`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:229](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L229) (Tag: `maps_android_3d_camera_restriction_kt`) +- `setSouthWestLng`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:230](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L230) (Tag: `maps_android_3d_camera_restriction_kt`) - `writeToParcel`: ❌ No coverage ### `Map3DOptions` @@ -1114,7 +1123,7 @@ The following non-getter/setter APIs currently have `0` occurrences within this ### `Camera` - `getCenter`: - [MapActivity.java:55](MapActivity.java#L55) (Tag: `No Tag`) - - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:133](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L133) (Tag: `maps_android_3d_camera_events_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:135](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L135) (Tag: `maps_android_3d_camera_events_java`) - `setCenter`: ❌ No coverage - `setHeading`: ❌ No coverage - `setRange`: ❌ No coverage @@ -1166,42 +1175,44 @@ The following non-getter/setter APIs currently have `0` occurrences within this ### `GoogleMap3D` - `addMarker`: - - [TrackedMap3D.java:53](TrackedMap3D.java#L53) (Tag: `No Tag`) + - [TrackedMap3D.java:54](TrackedMap3D.java#L54) (Tag: `No Tag`) - `addModel`: - - [TrackedMap3D.java:71](TrackedMap3D.java#L71) (Tag: `No Tag`) + - [TrackedMap3D.java:72](TrackedMap3D.java#L72) (Tag: `No Tag`) - `addPolygon`: - - [TrackedMap3D.java:65](TrackedMap3D.java#L65) (Tag: `No Tag`) + - [TrackedMap3D.java:66](TrackedMap3D.java#L66) (Tag: `No Tag`) - `addPolyline`: - - [TrackedMap3D.java:59](TrackedMap3D.java#L59) (Tag: `No Tag`) + - [TrackedMap3D.java:60](TrackedMap3D.java#L60) (Tag: `No Tag`) - `addPopover`: - - [TrackedMap3D.java:77](TrackedMap3D.java#L77) (Tag: `No Tag`) + - [TrackedMap3D.java:78](TrackedMap3D.java#L78) (Tag: `No Tag`) - `flyCameraAround`: - - [TrackedMap3D.java:85](TrackedMap3D.java#L85) (Tag: `No Tag`) + - [TrackedMap3D.java:86](TrackedMap3D.java#L86) (Tag: `No Tag`) - `flyCameraTo`: - - [TrackedMap3D.java:90](TrackedMap3D.java#L90) (Tag: `No Tag`) + - [TrackedMap3D.java:91](TrackedMap3D.java#L91) (Tag: `No Tag`) - `getCamera`: - [MapActivity.java:53](MapActivity.java#L53) (Tag: `No Tag`) - - [TrackedMap3D.java:88](TrackedMap3D.java#L88) (Tag: `No Tag`) -- `getCameraRestriction`: ❌ No coverage + - [TrackedMap3D.java:89](TrackedMap3D.java#L89) (Tag: `No Tag`) +- `getCameraRestriction`: + - [TrackedMap3D.java:95](TrackedMap3D.java#L95) (Tag: `No Tag`) - `getMapMode`: ❌ No coverage - `setCamera`: - - [TrackedMap3D.java:82](TrackedMap3D.java#L82) (Tag: `No Tag`) + - [TrackedMap3D.java:83](TrackedMap3D.java#L83) (Tag: `No Tag`) - [java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java:54](java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java#L54) (Tag: `maps_android_3d_init_basic_java`) - `setCameraAnimationEndListener`: ❌ No coverage - `setCameraChangedListener`: - - [TrackedMap3D.java:83](TrackedMap3D.java#L83) (Tag: `No Tag`) -- `setCameraRestriction`: ❌ No coverage -- `setMap3DClickListener`: - [TrackedMap3D.java:84](TrackedMap3D.java#L84) (Tag: `No Tag`) +- `setCameraRestriction`: + - [TrackedMap3D.java:94](TrackedMap3D.java#L94) (Tag: `No Tag`) +- `setMap3DClickListener`: + - [TrackedMap3D.java:85](TrackedMap3D.java#L85) (Tag: `No Tag`) - `setMapMode`: ❌ No coverage - `setOnMapReadyListener`: - - [TrackedMap3D.java:91](TrackedMap3D.java#L91) (Tag: `No Tag`) + - [TrackedMap3D.java:92](TrackedMap3D.java#L92) (Tag: `No Tag`) - [java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java:74](java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java#L74) (Tag: `maps_android_3d_init_listeners_java`) - `setOnMapSteadyListener`: - - [TrackedMap3D.java:92](TrackedMap3D.java#L92) (Tag: `No Tag`) + - [TrackedMap3D.java:93](TrackedMap3D.java#L93) (Tag: `No Tag`) - [java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java:85](java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java#L85) (Tag: `maps_android_3d_init_listeners_java`) - `stopCameraAnimation`: - - [TrackedMap3D.java:89](TrackedMap3D.java#L89) (Tag: `No Tag`) + - [TrackedMap3D.java:90](TrackedMap3D.java#L90) (Tag: `No Tag`) ### `Hole` - `getVertices`: ❌ No coverage diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java b/snippets/java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java index 804e4734..31eaea39 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java @@ -33,6 +33,7 @@ import com.google.android.gms.maps3d.model.Model; import com.google.android.gms.maps3d.model.ModelOptions; import com.google.android.gms.maps3d.model.PopoverOptions; +import com.google.android.gms.maps3d.model.CameraRestriction; import java.util.List; @@ -90,4 +91,6 @@ public Popover addPopover(PopoverOptions options) { public void flyCameraTo(FlyToOptions options) { delegate.flyCameraTo(options); } public void setOnMapReadyListener(OnMapReadyListener listener) { delegate.setOnMapReadyListener(listener); } public void setOnMapSteadyListener(OnMapSteadyListener listener) { delegate.setOnMapSteadyListener(listener); } + public void setCameraRestriction(CameraRestriction restriction) { delegate.setCameraRestriction(restriction); } + public CameraRestriction getCameraRestriction() { return delegate.getCameraRestriction(); } } diff --git a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt index f79ddf07..e477d22c 100644 --- a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt +++ b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt @@ -68,4 +68,6 @@ class TrackedMap3D( fun flyCameraAround(options: FlyAroundOptions) = delegate.flyCameraAround(options) fun setOnMapReadyListener(listener: OnMapReadyListener?) = delegate.setOnMapReadyListener(listener) fun setOnMapSteadyListener(listener: OnMapSteadyListener?) = delegate.setOnMapSteadyListener(listener) + fun setCameraRestriction(restriction: com.google.android.gms.maps3d.model.CameraRestriction?) = delegate.setCameraRestriction(restriction) + fun getCameraRestriction() = delegate.getCameraRestriction() } From eb19988511e28166d0246f8a72cba3416ba56c51 Mon Sep 17 00:00:00 2001 From: dkhawk <107309+dkhawk@users.noreply.github.com> Date: Fri, 20 Mar 2026 10:26:23 -0600 Subject: [PATCH 22/36] Update setCameraRestrictions to move camera inside bounds --- snippets/CATALOG.md | 4 ++++ .../snippets/java/snippets/CameraControlSnippets.java | 9 +++++++++ .../snippets/kotlin/snippets/CameraControlSnippets.kt | 9 +++++++++ 3 files changed, 22 insertions(+) diff --git a/snippets/CATALOG.md b/snippets/CATALOG.md index e09843a4..23ef7d34 100644 --- a/snippets/CATALOG.md +++ b/snippets/CATALOG.md @@ -210,6 +210,7 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - `setCenter`: - [MapActivity.kt:191](MapActivity.kt#L191) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:130](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L130) (Tag: `maps_android_3d_camera_stop_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:243](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L243) (Tag: `maps_android_3d_camera_restriction_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:54](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L54) (Tag: `maps_android_3d_camera_fly_to_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:86](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L86) (Tag: `maps_android_3d_camera_fly_around_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:61](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L61) (Tag: `maps_android_3d_init_basic_kt`) @@ -445,6 +446,7 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - `setAltitude`: - [MapActivity.kt:194](MapActivity.kt#L194) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:133](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L133) (Tag: `maps_android_3d_camera_stop_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:246](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L246) (Tag: `maps_android_3d_camera_restriction_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:57](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L57) (Tag: `maps_android_3d_camera_fly_to_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:89](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L89) (Tag: `maps_android_3d_camera_fly_around_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:64](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L64) (Tag: `maps_android_3d_init_basic_kt`) @@ -484,6 +486,7 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - `setLatitude`: - [MapActivity.kt:192](MapActivity.kt#L192) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:131](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L131) (Tag: `maps_android_3d_camera_stop_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:244](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L244) (Tag: `maps_android_3d_camera_restriction_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:55](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L55) (Tag: `maps_android_3d_camera_fly_to_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:87](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L87) (Tag: `maps_android_3d_camera_fly_around_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:62](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L62) (Tag: `maps_android_3d_init_basic_kt`) @@ -523,6 +526,7 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - `setLongitude`: - [MapActivity.kt:193](MapActivity.kt#L193) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:132](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L132) (Tag: `maps_android_3d_camera_stop_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:245](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L245) (Tag: `maps_android_3d_camera_restriction_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:56](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L56) (Tag: `maps_android_3d_camera_fly_to_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:88](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L88) (Tag: `maps_android_3d_camera_fly_around_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:63](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L63) (Tag: `maps_android_3d_init_basic_kt`) diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java index cd7d5f39..1bf6df02 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java @@ -182,6 +182,15 @@ public void setCameraRestrictions() { ); map.setCameraRestriction(restriction); + + com.google.android.gms.maps3d.model.Camera camera = new com.google.android.gms.maps3d.model.Camera( + new com.google.android.gms.maps3d.model.LatLngAltitude(40.748233, -73.985663, 1500.0), // center + 0.0, // heading + 45.0, // tilt + 0.0, // roll + 1000.0 // range + ); + map.setCamera(camera); // [END maps_android_3d_camera_restriction_java] } } diff --git a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt index 74a1b398..1d136b11 100644 --- a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt +++ b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt @@ -237,6 +237,15 @@ class CameraControlSnippets( } map.setCameraRestriction(restriction) + + // Move the camera inside the restricted bounds so we focus on NYC + map.setCamera(camera { + center = latLngAltitude { + latitude = 40.748233 + longitude = -73.985663 + altitude = 1500.0 + } + }) // [END maps_android_3d_camera_restriction_kt] } } From 2c27fc05ade0113cf0e7accb1b9f6c7adb5b21ca Mon Sep 17 00:00:00 2001 From: dkhawk <107309+dkhawk@users.noreply.github.com> Date: Fri, 20 Mar 2026 10:27:22 -0600 Subject: [PATCH 23/36] Exclude camera movement from camera restriction snippets --- snippets/CATALOG.md | 8 ++++---- .../snippets/java/snippets/CameraControlSnippets.java | 2 +- .../snippets/kotlin/snippets/CameraControlSnippets.kt | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/snippets/CATALOG.md b/snippets/CATALOG.md index 23ef7d34..9b8ea5ff 100644 --- a/snippets/CATALOG.md +++ b/snippets/CATALOG.md @@ -210,7 +210,7 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - `setCenter`: - [MapActivity.kt:191](MapActivity.kt#L191) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:130](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L130) (Tag: `maps_android_3d_camera_stop_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:243](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L243) (Tag: `maps_android_3d_camera_restriction_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:244](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L244) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:54](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L54) (Tag: `maps_android_3d_camera_fly_to_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:86](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L86) (Tag: `maps_android_3d_camera_fly_around_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:61](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L61) (Tag: `maps_android_3d_init_basic_kt`) @@ -446,7 +446,7 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - `setAltitude`: - [MapActivity.kt:194](MapActivity.kt#L194) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:133](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L133) (Tag: `maps_android_3d_camera_stop_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:246](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L246) (Tag: `maps_android_3d_camera_restriction_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:247](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L247) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:57](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L57) (Tag: `maps_android_3d_camera_fly_to_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:89](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L89) (Tag: `maps_android_3d_camera_fly_around_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:64](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L64) (Tag: `maps_android_3d_init_basic_kt`) @@ -486,7 +486,7 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - `setLatitude`: - [MapActivity.kt:192](MapActivity.kt#L192) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:131](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L131) (Tag: `maps_android_3d_camera_stop_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:244](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L244) (Tag: `maps_android_3d_camera_restriction_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:245](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L245) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:55](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L55) (Tag: `maps_android_3d_camera_fly_to_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:87](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L87) (Tag: `maps_android_3d_camera_fly_around_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:62](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L62) (Tag: `maps_android_3d_init_basic_kt`) @@ -526,7 +526,7 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - `setLongitude`: - [MapActivity.kt:193](MapActivity.kt#L193) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:132](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L132) (Tag: `maps_android_3d_camera_stop_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:245](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L245) (Tag: `maps_android_3d_camera_restriction_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:246](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L246) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:56](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L56) (Tag: `maps_android_3d_camera_fly_to_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:88](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L88) (Tag: `maps_android_3d_camera_fly_around_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:63](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L63) (Tag: `maps_android_3d_init_basic_kt`) diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java index 1bf6df02..6632b373 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java @@ -182,6 +182,7 @@ public void setCameraRestrictions() { ); map.setCameraRestriction(restriction); + // [END maps_android_3d_camera_restriction_java] com.google.android.gms.maps3d.model.Camera camera = new com.google.android.gms.maps3d.model.Camera( new com.google.android.gms.maps3d.model.LatLngAltitude(40.748233, -73.985663, 1500.0), // center @@ -191,6 +192,5 @@ public void setCameraRestrictions() { 1000.0 // range ); map.setCamera(camera); - // [END maps_android_3d_camera_restriction_java] } } diff --git a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt index 1d136b11..7e5ce10c 100644 --- a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt +++ b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt @@ -237,6 +237,7 @@ class CameraControlSnippets( } map.setCameraRestriction(restriction) + // [END maps_android_3d_camera_restriction_kt] // Move the camera inside the restricted bounds so we focus on NYC map.setCamera(camera { @@ -246,6 +247,5 @@ class CameraControlSnippets( altitude = 1500.0 } }) - // [END maps_android_3d_camera_restriction_kt] } } From 728c3ee0a57caf6c8bcffde0b6b647501cafe2c0 Mon Sep 17 00:00:00 2001 From: dkhawk <107309+dkhawk@users.noreply.github.com> Date: Fri, 20 Mar 2026 10:30:59 -0600 Subject: [PATCH 24/36] Move camera before setting camera restriction --- snippets/CATALOG.md | 26 +++++++++---------- .../java/snippets/CameraControlSnippets.java | 18 ++++++------- .../kotlin/snippets/CameraControlSnippets.kt | 18 ++++++------- 3 files changed, 31 insertions(+), 31 deletions(-) diff --git a/snippets/CATALOG.md b/snippets/CATALOG.md index 9b8ea5ff..03261876 100644 --- a/snippets/CATALOG.md +++ b/snippets/CATALOG.md @@ -53,10 +53,10 @@ This section maps high-level concepts (groups) to specific demonstration files a - *Description*: Restricts the camera to a specific altitude range and bounding box. - **Kotlin** - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:220](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L220) - - Tag: `maps_android_3d_camera_restriction_kt` + - Tag: `maps_android_3d_camera_steady_kt` - **Java** - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:170](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L170) - - Tag: `maps_android_3d_camera_restriction_java` + - Tag: `maps_android_3d_camera_steady_java` ### Map Initialization > Snippets demonstrating map lifecycle, listeners and readiness states. @@ -210,7 +210,7 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - `setCenter`: - [MapActivity.kt:191](MapActivity.kt#L191) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:130](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L130) (Tag: `maps_android_3d_camera_stop_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:244](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L244) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:227](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L227) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:54](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L54) (Tag: `maps_android_3d_camera_fly_to_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:86](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L86) (Tag: `maps_android_3d_camera_fly_around_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:61](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L61) (Tag: `maps_android_3d_init_basic_kt`) @@ -289,13 +289,13 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d ### `CameraRestriction` - `setBounds`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:236](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L236) (Tag: `maps_android_3d_camera_restriction_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:245](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L245) (Tag: `maps_android_3d_camera_restriction_kt`) - `setMaxAltitude`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:235](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L235) (Tag: `maps_android_3d_camera_restriction_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:244](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L244) (Tag: `maps_android_3d_camera_restriction_kt`) - `setMaxHeading`: ❌ No coverage - `setMaxTilt`: ❌ No coverage - `setMinAltitude`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:234](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L234) (Tag: `maps_android_3d_camera_restriction_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:243](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L243) (Tag: `maps_android_3d_camera_restriction_kt`) - `setMinHeading`: ❌ No coverage - `setMinTilt`: ❌ No coverage - `writeToParcel`: ❌ No coverage @@ -446,7 +446,7 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - `setAltitude`: - [MapActivity.kt:194](MapActivity.kt#L194) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:133](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L133) (Tag: `maps_android_3d_camera_stop_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:247](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L247) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:230](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L230) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:57](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L57) (Tag: `maps_android_3d_camera_fly_to_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:89](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L89) (Tag: `maps_android_3d_camera_fly_around_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:64](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L64) (Tag: `maps_android_3d_init_basic_kt`) @@ -486,7 +486,7 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - `setLatitude`: - [MapActivity.kt:192](MapActivity.kt#L192) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:131](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L131) (Tag: `maps_android_3d_camera_stop_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:245](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L245) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:228](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L228) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:55](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L55) (Tag: `maps_android_3d_camera_fly_to_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:87](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L87) (Tag: `maps_android_3d_camera_fly_around_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:62](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L62) (Tag: `maps_android_3d_init_basic_kt`) @@ -526,7 +526,7 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - `setLongitude`: - [MapActivity.kt:193](MapActivity.kt#L193) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:132](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L132) (Tag: `maps_android_3d_camera_stop_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:246](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L246) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:229](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L229) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:56](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L56) (Tag: `maps_android_3d_camera_fly_to_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:88](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L88) (Tag: `maps_android_3d_camera_fly_around_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:63](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L63) (Tag: `maps_android_3d_init_basic_kt`) @@ -571,13 +571,13 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - `getSouthWestLat`: ❌ No coverage - `getSouthWestLng`: ❌ No coverage - `setNorthEastLat`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:227](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L227) (Tag: `maps_android_3d_camera_restriction_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:236](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L236) (Tag: `maps_android_3d_camera_restriction_kt`) - `setNorthEastLng`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:228](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L228) (Tag: `maps_android_3d_camera_restriction_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:237](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L237) (Tag: `maps_android_3d_camera_restriction_kt`) - `setSouthWestLat`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:229](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L229) (Tag: `maps_android_3d_camera_restriction_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:238](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L238) (Tag: `maps_android_3d_camera_restriction_kt`) - `setSouthWestLng`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:230](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L230) (Tag: `maps_android_3d_camera_restriction_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:239](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L239) (Tag: `maps_android_3d_camera_restriction_kt`) - `writeToParcel`: ❌ No coverage ### `Map3DOptions` diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java index 6632b373..75e8cc18 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java @@ -172,6 +172,15 @@ public void listenToMapSteadyState() { description = "Restricts the camera to a specific altitude range and bounding box." ) public void setCameraRestrictions() { + com.google.android.gms.maps3d.model.Camera camera = new com.google.android.gms.maps3d.model.Camera( + new com.google.android.gms.maps3d.model.LatLngAltitude(40.748233, -73.985663, 1500.0), // center + 0.0, // heading + 45.0, // tilt + 0.0, // roll + 1000.0 // range + ); + map.setCamera(camera); + // [START maps_android_3d_camera_restriction_java] LatLngBounds nycBounds = new LatLngBounds( 40.856492, -73.802409, 40.685630, -74.050304 @@ -183,14 +192,5 @@ public void setCameraRestrictions() { map.setCameraRestriction(restriction); // [END maps_android_3d_camera_restriction_java] - - com.google.android.gms.maps3d.model.Camera camera = new com.google.android.gms.maps3d.model.Camera( - new com.google.android.gms.maps3d.model.LatLngAltitude(40.748233, -73.985663, 1500.0), // center - 0.0, // heading - 45.0, // tilt - 0.0, // roll - 1000.0 // range - ); - map.setCamera(camera); } } diff --git a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt index 7e5ce10c..e8aeeb9c 100644 --- a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt +++ b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt @@ -222,6 +222,15 @@ class CameraControlSnippets( description = "Restricts the camera to a specific altitude range and bounding box." ) fun setCameraRestrictions() { + // Move the camera inside the restricted bounds so we focus on NYC + map.setCamera(camera { + center = latLngAltitude { + latitude = 40.748233 + longitude = -73.985663 + altitude = 1500.0 + } + }) + // [START maps_android_3d_camera_restriction_kt] val nycBounds = latLngBounds { northEastLat = 40.856492 @@ -238,14 +247,5 @@ class CameraControlSnippets( map.setCameraRestriction(restriction) // [END maps_android_3d_camera_restriction_kt] - - // Move the camera inside the restricted bounds so we focus on NYC - map.setCamera(camera { - center = latLngAltitude { - latitude = 40.748233 - longitude = -73.985663 - altitude = 1500.0 - } - }) } } From b6499cffa60e327d75bb44f01516e0bd54f24d08 Mon Sep 17 00:00:00 2001 From: dkhawk <107309+dkhawk@users.noreply.github.com> Date: Fri, 20 Mar 2026 10:37:02 -0600 Subject: [PATCH 25/36] Include TrackedMap3D delegate calls into catalog analytics --- snippets/CATALOG.md | 85 +++++++++++++++++++++++++++++++-- snippets/scripts/catalog_api.py | 22 +++++---- 2 files changed, 92 insertions(+), 15 deletions(-) diff --git a/snippets/CATALOG.md b/snippets/CATALOG.md index 03261876..8298741b 100644 --- a/snippets/CATALOG.md +++ b/snippets/CATALOG.md @@ -53,7 +53,7 @@ This section maps high-level concepts (groups) to specific demonstration files a - *Description*: Restricts the camera to a specific altitude range and bounding box. - **Kotlin** - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:220](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L220) - - Tag: `maps_android_3d_camera_steady_kt` + - Tag: `maps_android_3d_camera_restriction_kt` - **Java** - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:170](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L170) - Tag: `maps_android_3d_camera_steady_java` @@ -210,7 +210,7 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - `setCenter`: - [MapActivity.kt:191](MapActivity.kt#L191) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:130](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L130) (Tag: `maps_android_3d_camera_stop_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:227](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L227) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:228](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L228) (Tag: `maps_android_3d_camera_restriction_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:54](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L54) (Tag: `maps_android_3d_camera_fly_to_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:86](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L86) (Tag: `maps_android_3d_camera_fly_around_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:61](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L61) (Tag: `maps_android_3d_init_basic_kt`) @@ -371,19 +371,48 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d ### `GoogleMap3D` - `addMarker`: - [TrackedMap3D.kt:31](TrackedMap3D.kt#L31) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:108](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L108) (Tag: `maps_android_3d_marker_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:137](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L137) (Tag: `maps_android_3d_marker_click_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:192](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L192) (Tag: `maps_android_3d_marker_custom_icon_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:66](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L66) (Tag: `maps_android_3d_marker_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:101](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L101) (Tag: `maps_android_3d_popover_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:53](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L53) (Tag: `maps_android_3d_popover_add_kt`) - `addModel`: - [TrackedMap3D.kt:49](TrackedMap3D.kt#L49) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:67](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L67) (Tag: `maps_android_3d_model_add_kt`) - `addPolygon`: - [TrackedMap3D.kt:43](TrackedMap3D.kt#L43) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:105](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L105) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:61](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L61) (Tag: `maps_android_3d_polygon_add_kt`) - `addPolyline`: - [TrackedMap3D.kt:37](TrackedMap3D.kt#L37) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:103](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L103) (Tag: `maps_android_3d_polyline_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:58](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L58) (Tag: `maps_android_3d_polyline_add_kt`) - `addPopover`: - [TrackedMap3D.kt:55](TrackedMap3D.kt#L55) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:116](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L116) (Tag: `maps_android_3d_popover_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:69](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L69) (Tag: `maps_android_3d_popover_add_kt`) - `flyCameraAround`: - [TrackedMap3D.kt:68](TrackedMap3D.kt#L68) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:111](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L111) (Tag: `maps_android_3d_camera_fly_around_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:154](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L154) (Tag: `maps_android_3d_camera_stop_kt`) - `flyCameraTo`: - [MapActivity.kt:200](MapActivity.kt#L200) (Tag: `No Tag`) - [TrackedMap3D.kt:67](TrackedMap3D.kt#L67) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:148](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L148) (Tag: `maps_android_3d_camera_stop_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:70](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L70) (Tag: `maps_android_3d_camera_fly_to_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:110](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L110) (Tag: `maps_android_3d_marker_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:141](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L141) (Tag: `maps_android_3d_marker_click_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:194](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L194) (Tag: `maps_android_3d_marker_custom_icon_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:68](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L68) (Tag: `maps_android_3d_marker_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:71](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L71) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:56](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L56) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:108](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L108) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:64](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L64) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:106](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L106) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:61](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L61) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:120](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L120) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:75](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L75) (Tag: `No Tag`) - `getCamera`: - [MapActivity.kt:57](MapActivity.kt#L57) (Tag: `No Tag`) - [TrackedMap3D.kt:65](TrackedMap3D.kt#L65) (Tag: `No Tag`) @@ -392,6 +421,8 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - `getMapMode`: ❌ No coverage - `setCamera`: - [TrackedMap3D.kt:60](TrackedMap3D.kt#L60) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:227](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L227) (Tag: `maps_android_3d_camera_restriction_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:99](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L99) (Tag: `maps_android_3d_camera_fly_around_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:71](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L71) (Tag: `maps_android_3d_init_basic_kt`) - `setCameraAnimationEndListener`: - [MapExtensions.kt:19](MapExtensions.kt#L19) (Tag: `No Tag`) @@ -399,10 +430,14 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - [MapExtensions.kt:27](MapExtensions.kt#L27) (Tag: `No Tag`) - `setCameraChangedListener`: - [TrackedMap3D.kt:61](TrackedMap3D.kt#L61) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:180](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L180) (Tag: `maps_android_3d_camera_events_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:196](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L196) (Tag: `No Tag`) - `setCameraRestriction`: - [TrackedMap3D.kt:71](TrackedMap3D.kt#L71) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:248](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L248) (Tag: `maps_android_3d_camera_restriction_kt`) - `setMap3DClickListener`: - [TrackedMap3D.kt:62](TrackedMap3D.kt#L62) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:45](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L45) (Tag: `maps_android_3d_place_click_kt`) - `setMapMode`: ❌ No coverage - `setOnMapReadyListener`: - [MapActivity.kt:127](MapActivity.kt#L127) (Tag: `No Tag`) @@ -413,9 +448,13 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - [MapExtensions.kt:42](MapExtensions.kt#L42) (Tag: `No Tag`) - [MapExtensions.kt:51](MapExtensions.kt#L51) (Tag: `No Tag`) - [TrackedMap3D.kt:70](TrackedMap3D.kt#L70) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:108](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L108) (Tag: `maps_android_3d_camera_fly_around_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:110](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L110) (Tag: `maps_android_3d_camera_fly_around_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:210](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L210) (Tag: `maps_android_3d_camera_steady_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:104](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L104) (Tag: `maps_android_3d_init_listeners_kt`) - `stopCameraAnimation`: - [TrackedMap3D.kt:66](TrackedMap3D.kt#L66) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:162](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L162) (Tag: `maps_android_3d_camera_stop_kt`) ### `Hole` - `getVertices`: ❌ No coverage @@ -446,7 +485,7 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - `setAltitude`: - [MapActivity.kt:194](MapActivity.kt#L194) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:133](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L133) (Tag: `maps_android_3d_camera_stop_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:230](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L230) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:231](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L231) (Tag: `maps_android_3d_camera_restriction_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:57](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L57) (Tag: `maps_android_3d_camera_fly_to_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:89](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L89) (Tag: `maps_android_3d_camera_fly_around_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:64](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L64) (Tag: `maps_android_3d_init_basic_kt`) @@ -486,7 +525,7 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - `setLatitude`: - [MapActivity.kt:192](MapActivity.kt#L192) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:131](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L131) (Tag: `maps_android_3d_camera_stop_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:228](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L228) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:229](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L229) (Tag: `maps_android_3d_camera_restriction_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:55](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L55) (Tag: `maps_android_3d_camera_fly_to_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:87](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L87) (Tag: `maps_android_3d_camera_fly_around_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:62](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L62) (Tag: `maps_android_3d_init_basic_kt`) @@ -526,7 +565,7 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - `setLongitude`: - [MapActivity.kt:193](MapActivity.kt#L193) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:132](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L132) (Tag: `maps_android_3d_camera_stop_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:229](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L229) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:230](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L230) (Tag: `maps_android_3d_camera_restriction_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:56](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L56) (Tag: `maps_android_3d_camera_fly_to_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:88](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L88) (Tag: `maps_android_3d_camera_fly_around_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:63](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L63) (Tag: `maps_android_3d_init_basic_kt`) @@ -1180,18 +1219,45 @@ The following non-getter/setter APIs currently have `0` occurrences within this ### `GoogleMap3D` - `addMarker`: - [TrackedMap3D.java:54](TrackedMap3D.java#L54) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:104](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L104) (Tag: `maps_android_3d_marker_options_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:130](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L130) (Tag: `maps_android_3d_marker_click_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:185](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L185) (Tag: `maps_android_3d_marker_custom_icon_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:72](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L72) (Tag: `maps_android_3d_marker_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:100](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L100) (Tag: `maps_android_3d_popover_options_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:60](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L60) (Tag: `maps_android_3d_popover_add_java`) - `addModel`: - [TrackedMap3D.java:72](TrackedMap3D.java#L72) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java:64](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L64) (Tag: `maps_android_3d_model_add_java`) - `addPolygon`: - [TrackedMap3D.java:66](TrackedMap3D.java#L66) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:102](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L102) (Tag: `maps_android_3d_polygon_extruded_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:69](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L69) (Tag: `maps_android_3d_polygon_add_java`) - `addPolyline`: - [TrackedMap3D.java:60](TrackedMap3D.java#L60) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:100](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L100) (Tag: `maps_android_3d_polyline_options_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:66](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L66) (Tag: `maps_android_3d_polyline_add_java`) - `addPopover`: - [TrackedMap3D.java:78](TrackedMap3D.java#L78) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:114](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L114) (Tag: `maps_android_3d_popover_options_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:76](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L76) (Tag: `maps_android_3d_popover_add_java`) - `flyCameraAround`: - [TrackedMap3D.java:86](TrackedMap3D.java#L86) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:111](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L111) (Tag: `maps_android_3d_camera_stop_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:91](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L91) (Tag: `maps_android_3d_camera_fly_around_java`) - `flyCameraTo`: - [TrackedMap3D.java:91](TrackedMap3D.java#L91) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:62](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L62) (Tag: `maps_android_3d_camera_fly_to_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:110](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L110) (Tag: `maps_android_3d_marker_options_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:136](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L136) (Tag: `maps_android_3d_marker_click_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:191](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L191) (Tag: `maps_android_3d_marker_custom_icon_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:78](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L78) (Tag: `maps_android_3d_marker_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java:70](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L70) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PlaceSnippets.java:74](java-app/src/main/java/com/example/snippets/java/snippets/PlaceSnippets.java#L74) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:107](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L107) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:74](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L74) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:105](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L105) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:71](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L71) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:123](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L123) (Tag: `No Tag`) - `getCamera`: - [MapActivity.java:53](MapActivity.java#L53) (Tag: `No Tag`) - [TrackedMap3D.java:89](TrackedMap3D.java#L89) (Tag: `No Tag`) @@ -1200,20 +1266,29 @@ The following non-getter/setter APIs currently have `0` occurrences within this - `getMapMode`: ❌ No coverage - `setCamera`: - [TrackedMap3D.java:83](TrackedMap3D.java#L83) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:182](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L182) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:86](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L86) (Tag: `maps_android_3d_camera_fly_around_java`) - [java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java:54](java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java#L54) (Tag: `maps_android_3d_init_basic_java`) - `setCameraAnimationEndListener`: ❌ No coverage - `setCameraChangedListener`: - [TrackedMap3D.java:84](TrackedMap3D.java#L84) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:130](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L130) (Tag: `maps_android_3d_camera_events_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:145](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L145) (Tag: `maps_android_3d_camera_events_java`) - `setCameraRestriction`: - [TrackedMap3D.java:94](TrackedMap3D.java#L94) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:193](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L193) (Tag: `maps_android_3d_camera_restriction_java`) - `setMap3DClickListener`: - [TrackedMap3D.java:85](TrackedMap3D.java#L85) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PlaceSnippets.java:57](java-app/src/main/java/com/example/snippets/java/snippets/PlaceSnippets.java#L57) (Tag: `maps_android_3d_place_click_java`) - `setMapMode`: ❌ No coverage - `setOnMapReadyListener`: - [TrackedMap3D.java:92](TrackedMap3D.java#L92) (Tag: `No Tag`) - [java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java:74](java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java#L74) (Tag: `maps_android_3d_init_listeners_java`) - `setOnMapSteadyListener`: - [TrackedMap3D.java:93](TrackedMap3D.java#L93) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:160](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L160) (Tag: `maps_android_3d_camera_steady_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:88](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L88) (Tag: `maps_android_3d_camera_fly_around_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:90](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L90) (Tag: `maps_android_3d_camera_fly_around_java`) - [java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java:85](java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java#L85) (Tag: `maps_android_3d_init_listeners_java`) - `stopCameraAnimation`: - [TrackedMap3D.java:90](TrackedMap3D.java#L90) (Tag: `No Tag`) diff --git a/snippets/scripts/catalog_api.py b/snippets/scripts/catalog_api.py index fb856bb5..d419f7cb 100644 --- a/snippets/scripts/catalog_api.py +++ b/snippets/scripts/catalog_api.py @@ -71,22 +71,24 @@ def parse_javap_output(snippets_dir): current_line_table = {} method_calls = [] - match_invoke = re.search(r'^(\d+):\s+invoke.*\s+//\s*(?:Field|Method|InterfaceMethod)\s+com/google/android/gms/maps3d/([^:]+)\.([^:("]+)', line) + match_invoke = re.search(r'^(\d+):\s+invoke.*\s+//\s*(?:Field|Method|InterfaceMethod)\s+(com/google/android/gms/maps3d/|com/example/snippets/(?:kotlin|java)/)([^:]+)\.([^:("]+)', line) if match_invoke: offset = int(match_invoke.group(1)) - class_path = match_invoke.group(2) - method_name = match_invoke.group(3) + package_path = match_invoke.group(2) + class_path = match_invoke.group(3) + method_name = match_invoke.group(4) - class_parts = class_path.split('/')[-1].split('$') - # If there's an outer class and inner class, join them, else just class_name - # e.g. "PinConfiguration$Builder" -> "PinConfiguration.Builder" - if len(class_parts) > 1 and class_parts[-1] != "1": - class_name = f"{class_parts[0]}.{class_parts[-1]}" + if "TrackedMap3D" in class_path: + class_name = "GoogleMap3D" else: - class_name = class_parts[0] + class_parts = class_path.split('/')[-1].split('$') + if len(class_parts) > 1 and class_parts[-1] != "1": + class_name = f"{class_parts[0]}.{class_parts[-1]}" + else: + class_name = class_parts[0] if method_name == "": - method_name = class_parts[-1] + method_name = class_parts[-1] if 'class_parts' in locals() else method_name method_calls.append((offset, class_name, method_name)) match_line = re.search(r'line\s+(\d+):\s+(\d+)', line) From 2ca26c103ec61b81cb9e9a81b56e953937cd3887 Mon Sep 17 00:00:00 2001 From: dkhawk <107309+dkhawk@users.noreply.github.com> Date: Fri, 20 Mar 2026 11:16:16 -0600 Subject: [PATCH 26/36] feat(snippets): Add Glyph snippets for marker styling on Kotlin and Java - Added `addMarkerWithColorGlyph`, `addMarkerWithTextGlyph`, and `addMarkerWithCircleGlyph` to demonstrate full Glyph static creators set. - Added standard `[START_EXCLUDE]` blocks targeting smooth camera repositioning to focus viewports onto the newly created markers in real time. - Updated `CATALOG.md` linking static `fromText` and `fromCircle` methods to fix missing coverage tracking. --- snippets/CATALOG.md | 233 ++++++++++++++---- .../java/snippets/MarkerSnippets.java | 107 +++++++- .../kotlin/snippets/CameraControlSnippets.kt | 2 +- .../kotlin/snippets/MarkerSnippets.kt | 137 +++++++++- 4 files changed, 414 insertions(+), 65 deletions(-) diff --git a/snippets/CATALOG.md b/snippets/CATALOG.md index 8298741b..d90e3b25 100644 --- a/snippets/CATALOG.md +++ b/snippets/CATALOG.md @@ -111,11 +111,35 @@ This section maps high-level concepts (groups) to specific demonstration files a - **4. Custom Icon**: - *Description*: Adds a marker with a custom icon using PinConfiguration and Glyph styling. - **Kotlin** - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:165](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L165) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:173](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L173) - Tag: `maps_android_3d_marker_custom_icon_kt` - **Java** - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:159](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L159) - Tag: `maps_android_3d_marker_custom_icon_java` +- **5. Color Glyph**: + - *Description*: Adds a marker with a customized glyph color. + - **Kotlin** + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:222](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L222) + - Tag: `maps_android_3d_marker_glyph_color_kt` + - **Java** + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:201](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L201) + - Tag: `maps_android_3d_marker_glyph_color_java` +- **6. Text Glyph**: + - *Description*: Adds a marker with text inside the glyph. + - **Kotlin** + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:262](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L262) + - Tag: `maps_android_3d_marker_glyph_text_kt` + - **Java** + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:232](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L232) + - Tag: `maps_android_3d_marker_glyph_text_java` +- **7. Circle Glyph**: + - *Description*: Adds a marker with a default circle glyph. + - **Kotlin** + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:302](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L302) + - Tag: `maps_android_3d_marker_glyph_circle_kt` + - **Java** + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:263](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L263) + - Tag: `maps_android_3d_marker_glyph_circle_java` ### Models - **1. Basic**: @@ -215,8 +239,11 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:86](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L86) (Tag: `maps_android_3d_camera_fly_around_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:61](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L61) (Tag: `maps_android_3d_init_basic_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:112](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L112) (Tag: `maps_android_3d_marker_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:143](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L143) (Tag: `maps_android_3d_marker_click_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:196](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L196) (Tag: `maps_android_3d_marker_custom_icon_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:147](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L147) (Tag: `maps_android_3d_marker_click_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:204](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L204) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:243](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L243) (Tag: `maps_android_3d_marker_glyph_color_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:283](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L283) (Tag: `maps_android_3d_marker_glyph_text_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:326](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L326) (Tag: `maps_android_3d_marker_glyph_circle_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:70](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L70) (Tag: `maps_android_3d_marker_add_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:73](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L73) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:58](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L58) (Tag: `No Tag`) @@ -233,8 +260,11 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:92](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L92) (Tag: `maps_android_3d_camera_fly_around_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:66](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L66) (Tag: `maps_android_3d_init_basic_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:118](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L118) (Tag: `maps_android_3d_marker_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:145](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L145) (Tag: `maps_android_3d_marker_click_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:202](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L202) (Tag: `maps_android_3d_marker_custom_icon_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:153](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L153) (Tag: `maps_android_3d_marker_click_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:210](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L210) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:249](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L249) (Tag: `maps_android_3d_marker_glyph_color_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:289](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L289) (Tag: `maps_android_3d_marker_glyph_text_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:332](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L332) (Tag: `maps_android_3d_marker_glyph_circle_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:76](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L76) (Tag: `maps_android_3d_marker_add_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:75](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L75) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:60](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L60) (Tag: `No Tag`) @@ -251,8 +281,11 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:93](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L93) (Tag: `maps_android_3d_camera_fly_around_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:69](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L69) (Tag: `maps_android_3d_init_basic_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:119](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L119) (Tag: `maps_android_3d_marker_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:146](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L146) (Tag: `maps_android_3d_marker_click_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:203](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L203) (Tag: `maps_android_3d_marker_custom_icon_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:154](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L154) (Tag: `maps_android_3d_marker_click_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:211](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L211) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:250](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L250) (Tag: `maps_android_3d_marker_glyph_color_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:290](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L290) (Tag: `maps_android_3d_marker_glyph_text_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:333](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L333) (Tag: `maps_android_3d_marker_glyph_circle_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:77](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L77) (Tag: `maps_android_3d_marker_add_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:76](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L76) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:61](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L61) (Tag: `No Tag`) @@ -274,8 +307,11 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:91](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L91) (Tag: `maps_android_3d_camera_fly_around_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:67](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L67) (Tag: `maps_android_3d_init_basic_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:117](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L117) (Tag: `maps_android_3d_marker_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:144](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L144) (Tag: `maps_android_3d_marker_click_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:201](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L201) (Tag: `maps_android_3d_marker_custom_icon_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:152](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L152) (Tag: `maps_android_3d_marker_click_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:209](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L209) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:248](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L248) (Tag: `maps_android_3d_marker_glyph_color_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:288](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L288) (Tag: `maps_android_3d_marker_glyph_text_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:331](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L331) (Tag: `maps_android_3d_marker_glyph_circle_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:75](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L75) (Tag: `maps_android_3d_marker_add_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:74](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L74) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:59](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L59) (Tag: `No Tag`) @@ -323,8 +359,11 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:144](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L144) (Tag: `maps_android_3d_camera_stop_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:67](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L67) (Tag: `maps_android_3d_camera_fly_to_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:121](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L121) (Tag: `maps_android_3d_marker_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:148](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L148) (Tag: `maps_android_3d_marker_click_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:205](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L205) (Tag: `maps_android_3d_marker_custom_icon_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:156](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L156) (Tag: `maps_android_3d_marker_click_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:213](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L213) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:252](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L252) (Tag: `maps_android_3d_marker_glyph_color_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:292](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L292) (Tag: `maps_android_3d_marker_glyph_text_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:335](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L335) (Tag: `maps_android_3d_marker_glyph_circle_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:79](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L79) (Tag: `maps_android_3d_marker_add_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:78](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L78) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:63](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L63) (Tag: `No Tag`) @@ -339,8 +378,11 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:143](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L143) (Tag: `maps_android_3d_camera_stop_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:66](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L66) (Tag: `maps_android_3d_camera_fly_to_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:111](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L111) (Tag: `maps_android_3d_marker_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:142](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L142) (Tag: `maps_android_3d_marker_click_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:195](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L195) (Tag: `maps_android_3d_marker_custom_icon_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:146](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L146) (Tag: `maps_android_3d_marker_click_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:203](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L203) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:242](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L242) (Tag: `maps_android_3d_marker_glyph_color_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:282](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L282) (Tag: `maps_android_3d_marker_glyph_text_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:325](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L325) (Tag: `maps_android_3d_marker_glyph_circle_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:69](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L69) (Tag: `maps_android_3d_marker_add_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:72](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L72) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:57](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L57) (Tag: `No Tag`) @@ -354,17 +396,21 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d ### `Glyph` - `equals`: ❌ No coverage -- `fromCircle`: ❌ No coverage +- `fromCircle`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:308](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L308) (Tag: `maps_android_3d_marker_glyph_circle_kt`) - `fromColor`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:172](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L172) (Tag: `maps_android_3d_marker_custom_icon_kt`) -- `fromText`: ❌ No coverage + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:180](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L180) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:236](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L236) (Tag: `maps_android_3d_marker_glyph_color_kt`) +- `fromText`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:276](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L276) (Tag: `maps_android_3d_marker_glyph_text_kt`) - `getColor`: ❌ No coverage - `getImage`: ❌ No coverage - `getText`: ❌ No coverage - `hashCode`: ❌ No coverage -- `setColor`: ❌ No coverage +- `setColor`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:309](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L309) (Tag: `maps_android_3d_marker_glyph_circle_kt`) - `setImage`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:174](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L174) (Tag: `maps_android_3d_marker_custom_icon_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:182](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L182) (Tag: `No Tag`) - `setText`: ❌ No coverage - `writeToParcel`: ❌ No coverage @@ -373,7 +419,10 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - [TrackedMap3D.kt:31](TrackedMap3D.kt#L31) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:108](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L108) (Tag: `maps_android_3d_marker_options_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:137](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L137) (Tag: `maps_android_3d_marker_click_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:192](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L192) (Tag: `maps_android_3d_marker_custom_icon_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:200](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L200) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:239](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L239) (Tag: `maps_android_3d_marker_glyph_color_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:279](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L279) (Tag: `maps_android_3d_marker_glyph_text_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:322](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L322) (Tag: `maps_android_3d_marker_glyph_circle_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:66](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L66) (Tag: `maps_android_3d_marker_add_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:101](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L101) (Tag: `maps_android_3d_popover_options_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:53](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L53) (Tag: `maps_android_3d_popover_add_kt`) @@ -402,8 +451,11 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:148](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L148) (Tag: `maps_android_3d_camera_stop_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:70](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L70) (Tag: `maps_android_3d_camera_fly_to_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:110](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L110) (Tag: `maps_android_3d_marker_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:141](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L141) (Tag: `maps_android_3d_marker_click_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:194](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L194) (Tag: `maps_android_3d_marker_custom_icon_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:145](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L145) (Tag: `maps_android_3d_marker_click_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:202](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L202) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:241](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L241) (Tag: `maps_android_3d_marker_glyph_color_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:281](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L281) (Tag: `maps_android_3d_marker_glyph_text_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:324](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L324) (Tag: `maps_android_3d_marker_glyph_circle_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:68](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L68) (Tag: `maps_android_3d_marker_add_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:71](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L71) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:56](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L56) (Tag: `No Tag`) @@ -474,12 +526,18 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - `getLatitude`: - [MapActivity.kt:71](MapActivity.kt#L71) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:113](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L113) (Tag: `maps_android_3d_marker_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:197](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L197) (Tag: `maps_android_3d_marker_custom_icon_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:205](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L205) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:244](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L244) (Tag: `maps_android_3d_marker_glyph_color_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:284](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L284) (Tag: `maps_android_3d_marker_glyph_text_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:327](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L327) (Tag: `maps_android_3d_marker_glyph_circle_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:71](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L71) (Tag: `maps_android_3d_marker_add_kt`) - `getLongitude`: - [MapActivity.kt:72](MapActivity.kt#L72) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:114](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L114) (Tag: `maps_android_3d_marker_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:198](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L198) (Tag: `maps_android_3d_marker_custom_icon_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:206](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L206) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:245](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L245) (Tag: `maps_android_3d_marker_glyph_color_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:285](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L285) (Tag: `maps_android_3d_marker_glyph_text_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:328](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L328) (Tag: `maps_android_3d_marker_glyph_circle_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:72](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L72) (Tag: `maps_android_3d_marker_add_kt`) - `getPosition`: ❌ No coverage - `setAltitude`: @@ -490,10 +548,16 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:89](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L89) (Tag: `maps_android_3d_camera_fly_around_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:64](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L64) (Tag: `maps_android_3d_init_basic_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:115](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L115) (Tag: `maps_android_3d_marker_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:138](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L138) (Tag: `maps_android_3d_marker_click_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:143](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L143) (Tag: `maps_android_3d_marker_click_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:180](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L180) (Tag: `maps_android_3d_marker_custom_icon_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:199](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L199) (Tag: `maps_android_3d_marker_custom_icon_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:141](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L141) (Tag: `maps_android_3d_marker_click_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:150](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L150) (Tag: `maps_android_3d_marker_click_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:188](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L188) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:207](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L207) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:232](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L232) (Tag: `maps_android_3d_marker_glyph_color_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:246](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L246) (Tag: `maps_android_3d_marker_glyph_color_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:272](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L272) (Tag: `maps_android_3d_marker_glyph_text_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:286](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L286) (Tag: `maps_android_3d_marker_glyph_text_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:315](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L315) (Tag: `maps_android_3d_marker_glyph_circle_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:329](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L329) (Tag: `maps_android_3d_marker_glyph_circle_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:57](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L57) (Tag: `maps_android_3d_marker_add_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:73](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L73) (Tag: `maps_android_3d_marker_add_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:99](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L99) (Tag: `maps_android_3d_marker_options_kt`) @@ -530,10 +594,16 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:87](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L87) (Tag: `maps_android_3d_camera_fly_around_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:62](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L62) (Tag: `maps_android_3d_init_basic_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:113](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L113) (Tag: `maps_android_3d_marker_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:138](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L138) (Tag: `maps_android_3d_marker_click_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:143](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L143) (Tag: `maps_android_3d_marker_click_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:178](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L178) (Tag: `maps_android_3d_marker_custom_icon_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:197](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L197) (Tag: `maps_android_3d_marker_custom_icon_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:139](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L139) (Tag: `maps_android_3d_marker_click_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:148](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L148) (Tag: `maps_android_3d_marker_click_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:186](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L186) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:205](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L205) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:230](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L230) (Tag: `maps_android_3d_marker_glyph_color_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:244](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L244) (Tag: `maps_android_3d_marker_glyph_color_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:270](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L270) (Tag: `maps_android_3d_marker_glyph_text_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:284](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L284) (Tag: `maps_android_3d_marker_glyph_text_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:313](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L313) (Tag: `maps_android_3d_marker_glyph_circle_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:327](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L327) (Tag: `maps_android_3d_marker_glyph_circle_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:55](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L55) (Tag: `maps_android_3d_marker_add_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:71](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L71) (Tag: `maps_android_3d_marker_add_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:97](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L97) (Tag: `maps_android_3d_marker_options_kt`) @@ -570,10 +640,16 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:88](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L88) (Tag: `maps_android_3d_camera_fly_around_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:63](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L63) (Tag: `maps_android_3d_init_basic_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:114](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L114) (Tag: `maps_android_3d_marker_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:138](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L138) (Tag: `maps_android_3d_marker_click_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:143](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L143) (Tag: `maps_android_3d_marker_click_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:179](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L179) (Tag: `maps_android_3d_marker_custom_icon_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:198](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L198) (Tag: `maps_android_3d_marker_custom_icon_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:140](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L140) (Tag: `maps_android_3d_marker_click_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:149](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L149) (Tag: `maps_android_3d_marker_click_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:187](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L187) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:206](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L206) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:231](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L231) (Tag: `maps_android_3d_marker_glyph_color_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:245](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L245) (Tag: `maps_android_3d_marker_glyph_color_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:271](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L271) (Tag: `maps_android_3d_marker_glyph_text_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:285](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L285) (Tag: `maps_android_3d_marker_glyph_text_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:314](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L314) (Tag: `maps_android_3d_marker_glyph_circle_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:328](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L328) (Tag: `maps_android_3d_marker_glyph_circle_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:56](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L56) (Tag: `maps_android_3d_marker_add_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:72](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L72) (Tag: `maps_android_3d_marker_add_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:98](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L98) (Tag: `maps_android_3d_marker_options_kt`) @@ -686,7 +762,7 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - [SnippetRegistry.kt:60](SnippetRegistry.kt#L60) (Tag: `No Tag`) - `setAltitudeMode`: ❌ No coverage - `setClickListener`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:152](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L152) (Tag: `maps_android_3d_marker_click_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:160](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L160) (Tag: `maps_android_3d_marker_click_kt`) - `setCollisionBehavior`: ❌ No coverage - `setDrawsWhenOccluded`: ❌ No coverage - `setExtruded`: ❌ No coverage @@ -704,8 +780,14 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - `getPosition`: - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:113](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L113) (Tag: `maps_android_3d_marker_options_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:114](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L114) (Tag: `maps_android_3d_marker_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:197](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L197) (Tag: `maps_android_3d_marker_custom_icon_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:198](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L198) (Tag: `maps_android_3d_marker_custom_icon_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:205](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L205) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:206](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L206) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:244](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L244) (Tag: `maps_android_3d_marker_glyph_color_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:245](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L245) (Tag: `maps_android_3d_marker_glyph_color_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:284](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L284) (Tag: `maps_android_3d_marker_glyph_text_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:285](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L285) (Tag: `maps_android_3d_marker_glyph_text_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:327](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L327) (Tag: `maps_android_3d_marker_glyph_circle_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:328](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L328) (Tag: `maps_android_3d_marker_glyph_circle_kt`) - `getZIndex`: ❌ No coverage - `isDrawnWhenOccluded`: ❌ No coverage - `isExtruded`: ❌ No coverage @@ -721,12 +803,18 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - `setId`: ❌ No coverage - `setLabel`: - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:102](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L102) (Tag: `maps_android_3d_marker_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:182](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L182) (Tag: `maps_android_3d_marker_custom_icon_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:190](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L190) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:234](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L234) (Tag: `maps_android_3d_marker_glyph_color_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:274](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L274) (Tag: `maps_android_3d_marker_glyph_text_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:317](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L317) (Tag: `maps_android_3d_marker_glyph_circle_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:62](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L62) (Tag: `maps_android_3d_marker_add_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:99](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L99) (Tag: `maps_android_3d_popover_options_kt`) - `setPosition`: - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:138](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L138) (Tag: `maps_android_3d_marker_click_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:177](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L177) (Tag: `maps_android_3d_marker_custom_icon_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:185](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L185) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:229](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L229) (Tag: `maps_android_3d_marker_glyph_color_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:269](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L269) (Tag: `maps_android_3d_marker_glyph_text_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:312](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L312) (Tag: `maps_android_3d_marker_glyph_circle_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:61](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L61) (Tag: `maps_android_3d_marker_add_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:96](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L96) (Tag: `maps_android_3d_marker_options_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:51](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L51) (Tag: `maps_android_3d_popover_add_kt`) @@ -797,7 +885,10 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d ### `PinConfiguration` - `builder`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:184](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L184) (Tag: `maps_android_3d_marker_custom_icon_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:192](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L192) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:235](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L235) (Tag: `maps_android_3d_marker_glyph_color_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:275](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L275) (Tag: `maps_android_3d_marker_glyph_text_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:318](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L318) (Tag: `maps_android_3d_marker_glyph_circle_kt`) - `equals`: ❌ No coverage - `getBackgroundColor`: ❌ No coverage - `getBorderColor`: ❌ No coverage @@ -812,15 +903,21 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d ### `PinConfiguration.Builder` - `build`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:189](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L189) (Tag: `maps_android_3d_marker_custom_icon_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:197](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L197) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:237](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L237) (Tag: `maps_android_3d_marker_glyph_color_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:277](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L277) (Tag: `maps_android_3d_marker_glyph_text_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:320](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L320) (Tag: `maps_android_3d_marker_glyph_circle_kt`) - `setBackgroundColor`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:187](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L187) (Tag: `maps_android_3d_marker_custom_icon_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:195](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L195) (Tag: `No Tag`) - `setBorderColor`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:188](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L188) (Tag: `maps_android_3d_marker_custom_icon_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:196](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L196) (Tag: `No Tag`) - `setGlyph`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:186](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L186) (Tag: `maps_android_3d_marker_custom_icon_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:194](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L194) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:236](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L236) (Tag: `maps_android_3d_marker_glyph_color_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:276](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L276) (Tag: `maps_android_3d_marker_glyph_text_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:319](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L319) (Tag: `maps_android_3d_marker_glyph_circle_kt`) - `setScale`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:185](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L185) (Tag: `maps_android_3d_marker_custom_icon_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:193](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L193) (Tag: `No Tag`) ### `Polygon` - `getAltitudeMode`: ❌ No coverage @@ -1072,8 +1169,6 @@ The following non-getter/setter APIs currently have `0` occurrences within this - `FlyAroundOptions.writeToParcel` - `FlyToOptions.writeToParcel` - `Glyph.equals` -- `Glyph.fromCircle` -- `Glyph.fromText` - `Glyph.hashCode` - `Glyph.writeToParcel` - `Hole.writeToParcel` @@ -1202,15 +1297,19 @@ The following non-getter/setter APIs currently have `0` occurrences within this ### `Glyph` - `equals`: ❌ No coverage -- `fromCircle`: ❌ No coverage +- `fromCircle`: + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:271](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L271) (Tag: `maps_android_3d_marker_glyph_circle_java`) - `fromColor`: - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:168](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L168) (Tag: `maps_android_3d_marker_custom_icon_java`) -- `fromText`: ❌ No coverage + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:213](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L213) (Tag: `maps_android_3d_marker_glyph_color_java`) +- `fromText`: + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:244](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L244) (Tag: `maps_android_3d_marker_glyph_text_java`) - `getColor`: ❌ No coverage - `getImage`: ❌ No coverage - `getText`: ❌ No coverage - `hashCode`: ❌ No coverage -- `setColor`: ❌ No coverage +- `setColor`: + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:272](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L272) (Tag: `maps_android_3d_marker_glyph_circle_java`) - `setImage`: - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:171](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L171) (Tag: `maps_android_3d_marker_custom_icon_java`) - `setText`: ❌ No coverage @@ -1222,6 +1321,9 @@ The following non-getter/setter APIs currently have `0` occurrences within this - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:104](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L104) (Tag: `maps_android_3d_marker_options_java`) - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:130](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L130) (Tag: `maps_android_3d_marker_click_java`) - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:185](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L185) (Tag: `maps_android_3d_marker_custom_icon_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:216](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L216) (Tag: `maps_android_3d_marker_glyph_color_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:247](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L247) (Tag: `maps_android_3d_marker_glyph_text_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:281](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L281) (Tag: `maps_android_3d_marker_glyph_circle_java`) - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:72](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L72) (Tag: `maps_android_3d_marker_add_java`) - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:100](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L100) (Tag: `maps_android_3d_popover_options_java`) - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:60](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L60) (Tag: `maps_android_3d_popover_add_java`) @@ -1250,6 +1352,9 @@ The following non-getter/setter APIs currently have `0` occurrences within this - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:110](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L110) (Tag: `maps_android_3d_marker_options_java`) - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:136](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L136) (Tag: `maps_android_3d_marker_click_java`) - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:191](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L191) (Tag: `maps_android_3d_marker_custom_icon_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:222](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L222) (Tag: `maps_android_3d_marker_glyph_color_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:253](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L253) (Tag: `maps_android_3d_marker_glyph_text_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:287](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L287) (Tag: `maps_android_3d_marker_glyph_circle_java`) - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:78](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L78) (Tag: `maps_android_3d_marker_add_java`) - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java:70](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L70) (Tag: `No Tag`) - [java-app/src/main/java/com/example/snippets/java/snippets/PlaceSnippets.java:74](java-app/src/main/java/com/example/snippets/java/snippets/PlaceSnippets.java#L74) (Tag: `No Tag`) @@ -1313,12 +1418,18 @@ The following non-getter/setter APIs currently have `0` occurrences within this - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:108](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L108) (Tag: `maps_android_3d_marker_options_java`) - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:134](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L134) (Tag: `maps_android_3d_marker_click_java`) - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:189](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L189) (Tag: `maps_android_3d_marker_custom_icon_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:220](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L220) (Tag: `maps_android_3d_marker_glyph_color_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:251](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L251) (Tag: `maps_android_3d_marker_glyph_text_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:285](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L285) (Tag: `maps_android_3d_marker_glyph_circle_java`) - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:76](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L76) (Tag: `maps_android_3d_marker_add_java`) - `getLongitude`: - [MapActivity.java:64](MapActivity.java#L64) (Tag: `No Tag`) - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:108](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L108) (Tag: `maps_android_3d_marker_options_java`) - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:134](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L134) (Tag: `maps_android_3d_marker_click_java`) - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:189](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L189) (Tag: `maps_android_3d_marker_custom_icon_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:220](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L220) (Tag: `maps_android_3d_marker_glyph_color_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:251](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L251) (Tag: `maps_android_3d_marker_glyph_text_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:285](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L285) (Tag: `maps_android_3d_marker_glyph_circle_java`) - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:76](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L76) (Tag: `maps_android_3d_marker_add_java`) - `getPosition`: ❌ No coverage - `setAltitude`: ❌ No coverage @@ -1423,6 +1534,9 @@ The following non-getter/setter APIs currently have `0` occurrences within this - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:106](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L106) (Tag: `maps_android_3d_marker_options_java`) - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:132](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L132) (Tag: `maps_android_3d_marker_click_java`) - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:187](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L187) (Tag: `maps_android_3d_marker_custom_icon_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:218](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L218) (Tag: `maps_android_3d_marker_glyph_color_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:249](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L249) (Tag: `maps_android_3d_marker_glyph_text_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:283](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L283) (Tag: `maps_android_3d_marker_glyph_circle_java`) - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:74](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L74) (Tag: `maps_android_3d_marker_add_java`) - `getZIndex`: ❌ No coverage - `isDrawnWhenOccluded`: ❌ No coverage @@ -1439,12 +1553,18 @@ The following non-getter/setter APIs currently have `0` occurrences within this - `setId`: ❌ No coverage - `setLabel`: - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:175](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L175) (Tag: `maps_android_3d_marker_custom_icon_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:211](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L211) (Tag: `maps_android_3d_marker_glyph_color_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:242](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L242) (Tag: `maps_android_3d_marker_glyph_text_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:276](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L276) (Tag: `maps_android_3d_marker_glyph_circle_java`) - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:69](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L69) (Tag: `maps_android_3d_marker_add_java`) - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:99](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L99) (Tag: `maps_android_3d_marker_options_java`) - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:99](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L99) (Tag: `maps_android_3d_popover_options_java`) - `setPosition`: - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:128](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L128) (Tag: `maps_android_3d_marker_click_java`) - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:174](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L174) (Tag: `maps_android_3d_marker_custom_icon_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:210](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L210) (Tag: `maps_android_3d_marker_glyph_color_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:241](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L241) (Tag: `maps_android_3d_marker_glyph_text_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:275](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L275) (Tag: `maps_android_3d_marker_glyph_circle_java`) - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:68](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L68) (Tag: `maps_android_3d_marker_add_java`) - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:97](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L97) (Tag: `maps_android_3d_marker_options_java`) - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:98](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L98) (Tag: `maps_android_3d_popover_options_java`) @@ -1512,6 +1632,9 @@ The following non-getter/setter APIs currently have `0` occurrences within this ### `PinConfiguration` - `builder`: - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:178](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L178) (Tag: `maps_android_3d_marker_custom_icon_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:212](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L212) (Tag: `maps_android_3d_marker_glyph_color_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:243](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L243) (Tag: `maps_android_3d_marker_glyph_text_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:277](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L277) (Tag: `maps_android_3d_marker_glyph_circle_java`) - `equals`: ❌ No coverage - `getBackgroundColor`: ❌ No coverage - `getBorderColor`: ❌ No coverage @@ -1527,12 +1650,18 @@ The following non-getter/setter APIs currently have `0` occurrences within this ### `PinConfiguration.Builder` - `build`: - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:183](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L183) (Tag: `maps_android_3d_marker_custom_icon_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:214](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L214) (Tag: `maps_android_3d_marker_glyph_color_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:245](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L245) (Tag: `maps_android_3d_marker_glyph_text_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:279](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L279) (Tag: `maps_android_3d_marker_glyph_circle_java`) - `setBackgroundColor`: - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:181](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L181) (Tag: `maps_android_3d_marker_custom_icon_java`) - `setBorderColor`: - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:182](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L182) (Tag: `maps_android_3d_marker_custom_icon_java`) - `setGlyph`: - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:180](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L180) (Tag: `maps_android_3d_marker_custom_icon_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:213](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L213) (Tag: `maps_android_3d_marker_glyph_color_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:244](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L244) (Tag: `maps_android_3d_marker_glyph_text_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:278](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L278) (Tag: `maps_android_3d_marker_glyph_circle_java`) - `setScale`: - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:179](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L179) (Tag: `maps_android_3d_marker_custom_icon_java`) @@ -1783,8 +1912,6 @@ The following non-getter/setter APIs currently have `0` occurrences within this - `FlyAroundOptions.writeToParcel` - `FlyToOptions.writeToParcel` - `Glyph.equals` -- `Glyph.fromCircle` -- `Glyph.fromText` - `Glyph.hashCode` - `Glyph.writeToParcel` - `Hole.writeToParcel` diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java index e7b16730..f7a9b2f5 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java @@ -139,14 +139,9 @@ public void handleMarkerClick() { // [START_EXCLUDE] if (marker != null) { - marker.setClickListener(new OnMarkerClickListener() { - @Override - public void onMarkerClick() { - new Handler(Looper.getMainLooper()).post(() -> - Toast.makeText(context, "Marker Clicked!", Toast.LENGTH_SHORT).show() - ); - } - }); + marker.setClickListener(() -> new Handler(Looper.getMainLooper()).post(() -> + Toast.makeText(context, "Marker Clicked!", Toast.LENGTH_SHORT).show() + )); } // [END_EXCLUDE] // [END maps_android_3d_marker_click_java] @@ -193,4 +188,100 @@ public void addCustomMarker(Context context) { // [END_EXCLUDE] // [END maps_android_3d_marker_custom_icon_java] } + + /** + * Adds a marker with a colored Glyph. + */ + @SuppressWarnings("unused") + @SnippetItem( + title = "5. Color Glyph", + description = "Adds a marker with a customized glyph color." + ) + public void addMarkerWithColorGlyph() { + // [START maps_android_3d_marker_glyph_color_java] + LatLngAltitude position = new LatLngAltitude(37.4220, -122.0841, 10.0); + + MarkerOptions options = new MarkerOptions(); + options.setPosition(position); + options.setLabel("Color Glyph"); + options.setStyle(PinConfiguration.builder() + .setGlyph(Glyph.fromColor(Color.CYAN)) + .build()); + + map.addMarker(options); + // [START_EXCLUDE] + LatLngAltitude markerPos = options.getPosition(); + if (markerPos != null) { + LatLngAltitude camCenter = new LatLngAltitude(markerPos.getLatitude(), markerPos.getLongitude(), 0.0); + Camera targetCamera = new Camera(camCenter, 0.0, 45.0, 0.0, 500.0); + map.flyCameraTo(new FlyToOptions(targetCamera, 3000L)); + } + // [END_EXCLUDE] + // [END maps_android_3d_marker_glyph_color_java] + } + + /** + * Adds a marker with a text Glyph. + */ + @SuppressWarnings("unused") + @SnippetItem( + title = "6. Text Glyph", + description = "Adds a marker with text inside the glyph." + ) + public void addMarkerWithTextGlyph() { + // [START maps_android_3d_marker_glyph_text_java] + LatLngAltitude position = new LatLngAltitude(37.4220, -122.0841, 10.0); + + MarkerOptions options = new MarkerOptions(); + options.setPosition(position); + options.setLabel("Text Glyph"); + options.setStyle(PinConfiguration.builder() + .setGlyph(Glyph.fromText("NYC")) + .build()); + + map.addMarker(options); + // [START_EXCLUDE] + LatLngAltitude markerPos = options.getPosition(); + if (markerPos != null) { + LatLngAltitude camCenter = new LatLngAltitude(markerPos.getLatitude(), markerPos.getLongitude(), 0.0); + Camera targetCamera = new Camera(camCenter, 0.0, 45.0, 0.0, 500.0); + map.flyCameraTo(new FlyToOptions(targetCamera, 3000L)); + } + // [END_EXCLUDE] + // [END maps_android_3d_marker_glyph_text_java] + } + + /** + * Adds a marker with a circle Glyph. + */ + @SuppressWarnings("unused") + @SnippetItem( + title = "7. Circle Glyph", + description = "Adds a marker with a default circle glyph." + ) + public void addMarkerWithCircleGlyph() { + // [START maps_android_3d_marker_glyph_circle_java] + LatLngAltitude position = new LatLngAltitude(37.4220, -122.0841, 10.0); + + Glyph glyph = Glyph.fromCircle(); + glyph.setColor(Color.MAGENTA); + + MarkerOptions options = new MarkerOptions(); + options.setPosition(position); + options.setLabel("Circle Glyph"); + options.setStyle(PinConfiguration.builder() + .setGlyph(glyph) + .build()); + + map.addMarker(options); + // [START_EXCLUDE] + LatLngAltitude markerPos = options.getPosition(); + if (markerPos != null) { + LatLngAltitude camCenter = new LatLngAltitude(markerPos.getLatitude(), markerPos.getLongitude(), 0.0); + Camera targetCamera = new Camera(camCenter, 0.0, 45.0, 0.0, 500.0); + map.flyCameraTo(new FlyToOptions(targetCamera, 3000L)); + } + // [END_EXCLUDE] + // [END maps_android_3d_marker_glyph_circle_java] + } } diff --git a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt index e8aeeb9c..132b46c9 100644 --- a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt +++ b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt @@ -222,6 +222,7 @@ class CameraControlSnippets( description = "Restricts the camera to a specific altitude range and bounding box." ) fun setCameraRestrictions() { + // [START maps_android_3d_camera_restriction_kt] // Move the camera inside the restricted bounds so we focus on NYC map.setCamera(camera { center = latLngAltitude { @@ -231,7 +232,6 @@ class CameraControlSnippets( } }) - // [START maps_android_3d_camera_restriction_kt] val nycBounds = latLngBounds { northEastLat = 40.856492 northEastLng = -73.802409 diff --git a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt index 697b3684..34cbc31a 100644 --- a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt +++ b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt @@ -135,12 +135,20 @@ class MarkerSnippets(private val context: Context, private val map: TrackedMap3D fun handleMarkerClick() { // [START maps_android_3d_marker_click_kt] val marker = map.addMarker(markerOptions { - position = latLngAltitude { latitude = 37.42; longitude = -122.08; altitude = 0.0 } + position = latLngAltitude { + latitude = 37.42 + longitude = -122.08 + altitude = 0.0 + } }) // [START_EXCLUDE] map.flyCameraTo(flyToOptions { endCamera = camera { - center = latLngAltitude { latitude = 37.42; longitude = -122.08; altitude = 0.0 } + center = latLngAltitude { + latitude = 37.42 + longitude = -122.08 + altitude = 0.0 + } tilt = 45.0 heading = 0.0 range = 500.0 @@ -205,6 +213,129 @@ class MarkerSnippets(private val context: Context, private val map: TrackedMap3D durationInMillis = 3000 }) // [END_EXCLUDE] - // [END maps_android_3d_marker_custom_icon_kt] + } + + /** + * Adds a marker with a colored Glyph. + */ + @Suppress("unused") + @SnippetItem( + title = "5. Color Glyph", + description = "Adds a marker with a customized glyph color." + ) + fun addMarkerWithColorGlyph() { + // [START maps_android_3d_marker_glyph_color_kt] + val options = markerOptions { + position = latLngAltitude { + latitude = 37.4220 + longitude = -122.0841 + altitude = 10.0 + } + label = "Color Glyph" + setStyle(PinConfiguration.builder() + .setGlyph(Glyph.fromColor(Color.CYAN)) + .build()) + } + map.addMarker(options) + // [START_EXCLUDE] + map.flyCameraTo(flyToOptions { + endCamera = camera { + center = latLngAltitude { + latitude = options.position.latitude + longitude = options.position.longitude + altitude = 0.0 + } + tilt = 45.0 + heading = 0.0 + range = 500.0 + } + durationInMillis = 3000 + }) + // [END_EXCLUDE] + // [END maps_android_3d_marker_glyph_color_kt] + } + + /** + * Adds a marker with a text Glyph. + */ + @Suppress("unused") + @SnippetItem( + title = "6. Text Glyph", + description = "Adds a marker with text inside the glyph." + ) + fun addMarkerWithTextGlyph() { + // [START maps_android_3d_marker_glyph_text_kt] + val options = markerOptions { + position = latLngAltitude { + latitude = 37.4220 + longitude = -122.0841 + altitude = 10.0 + } + label = "Text Glyph" + setStyle(PinConfiguration.builder() + .setGlyph(Glyph.fromText("NYC")) + .build()) + } + map.addMarker(options) + // [START_EXCLUDE] + map.flyCameraTo(flyToOptions { + endCamera = camera { + center = latLngAltitude { + latitude = options.position.latitude + longitude = options.position.longitude + altitude = 0.0 + } + tilt = 45.0 + heading = 0.0 + range = 500.0 + } + durationInMillis = 3000 + }) + // [END_EXCLUDE] + // [END maps_android_3d_marker_glyph_text_kt] + } + + /** + * Adds a marker with a circle Glyph. + */ + @Suppress("unused") + @SnippetItem( + title = "7. Circle Glyph", + description = "Adds a marker with a default circle glyph." + ) + fun addMarkerWithCircleGlyph() { + // [START maps_android_3d_marker_glyph_circle_kt] + val glyph = Glyph.fromCircle() + glyph.color = Color.MAGENTA + + val options = markerOptions { + position = latLngAltitude { + latitude = 37.4220 + longitude = -122.0841 + altitude = 10.0 + } + label = "Circle Glyph" + setStyle(PinConfiguration.builder() + .setGlyph(glyph) + .build()) + } + map.addMarker(options) + // [START_EXCLUDE] + map.flyCameraTo(flyToOptions { + endCamera = camera { + center = latLngAltitude { + latitude = options.position.latitude + longitude = options.position.longitude + altitude = 0.0 + } + tilt = 45.0 + heading = 0.0 + range = 500.0 + } + durationInMillis = 3000 + }) + // [END_EXCLUDE] + // [END maps_android_3d_marker_glyph_circle_kt] } } + From 7058433772d7300575b6c8f26aecc983cb0ecfa5 Mon Sep 17 00:00:00 2001 From: dkhawk <107309+dkhawk@users.noreply.github.com> Date: Fri, 20 Mar 2026 11:27:39 -0600 Subject: [PATCH 27/36] feat(snippets): Add Polygon with Hole snippet to Kotlin and Java --- snippets/CATALOG.md | 282 +++++++++++------- .../java/snippets/PolygonSnippets.java | 44 +++ .../kotlin/snippets/PolygonSnippets.kt | 47 +++ 3 files changed, 262 insertions(+), 111 deletions(-) diff --git a/snippets/CATALOG.md b/snippets/CATALOG.md index d90e3b25..c6cb0d4e 100644 --- a/snippets/CATALOG.md +++ b/snippets/CATALOG.md @@ -114,7 +114,7 @@ This section maps high-level concepts (groups) to specific demonstration files a - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:173](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L173) - Tag: `maps_android_3d_marker_custom_icon_kt` - **Java** - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:159](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L159) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:154](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L154) - Tag: `maps_android_3d_marker_custom_icon_java` - **5. Color Glyph**: - *Description*: Adds a marker with a customized glyph color. @@ -122,7 +122,7 @@ This section maps high-level concepts (groups) to specific demonstration files a - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:222](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L222) - Tag: `maps_android_3d_marker_glyph_color_kt` - **Java** - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:201](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L201) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:196](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L196) - Tag: `maps_android_3d_marker_glyph_color_java` - **6. Text Glyph**: - *Description*: Adds a marker with text inside the glyph. @@ -130,7 +130,7 @@ This section maps high-level concepts (groups) to specific demonstration files a - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:262](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L262) - Tag: `maps_android_3d_marker_glyph_text_kt` - **Java** - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:232](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L232) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:227](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L227) - Tag: `maps_android_3d_marker_glyph_text_java` - **7. Circle Glyph**: - *Description*: Adds a marker with a default circle glyph. @@ -138,7 +138,7 @@ This section maps high-level concepts (groups) to specific demonstration files a - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:302](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L302) - Tag: `maps_android_3d_marker_glyph_circle_kt` - **Java** - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:263](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L263) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:258](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L258) - Tag: `maps_android_3d_marker_glyph_circle_java` ### Models @@ -167,18 +167,26 @@ This section maps high-level concepts (groups) to specific demonstration files a - **1. Basic**: - *Description*: Draws a red polygon with a blue stroke around a small area - **Kotlin** - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:39](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L39) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:40](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L40) - Tag: `maps_android_3d_polygon_add_kt` - **Java** - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:48](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L48) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:49](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L49) - Tag: `maps_android_3d_polygon_add_java` - **2. Extruded**: - **Kotlin** - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:83](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L83) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:84](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L84) - Tag: `maps_android_3d_polygon_extruded_kt` - **Java** - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:81](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L81) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:82](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L82) - Tag: `maps_android_3d_polygon_extruded_java` +- **3. Polygon with Hole**: + - *Description*: Draws a polygon with an interior hole cutout. + - **Kotlin** + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:128](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L128) + - Tag: `maps_android_3d_polygon_hole_kt` + - **Java** + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:115](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L115) + - Tag: `maps_android_3d_polygon_hole_java` ### Polylines > Snippets demonstrating 2D and 3D extruded polyline paths on the map. @@ -247,8 +255,9 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:70](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L70) (Tag: `maps_android_3d_marker_add_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:73](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L73) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:58](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L58) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:110](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L110) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:66](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L66) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:111](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L111) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:163](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L163) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:67](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L67) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:108](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L108) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:63](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L63) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:122](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L122) (Tag: `No Tag`) @@ -268,8 +277,9 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:76](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L76) (Tag: `maps_android_3d_marker_add_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:75](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L75) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:60](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L60) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:116](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L116) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:72](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L72) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:117](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L117) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:164](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L164) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:73](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L73) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:114](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L114) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:69](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L69) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:124](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L124) (Tag: `No Tag`) @@ -289,8 +299,9 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:77](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L77) (Tag: `maps_android_3d_marker_add_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:76](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L76) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:61](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L61) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:117](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L117) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:73](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L73) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:118](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L118) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:164](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L164) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:74](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L74) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:115](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L115) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:70](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L70) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:125](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L125) (Tag: `No Tag`) @@ -300,6 +311,7 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:62](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L62) (Tag: `maps_android_3d_camera_fly_to_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:94](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L94) (Tag: `maps_android_3d_camera_fly_around_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:68](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L68) (Tag: `maps_android_3d_init_basic_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:164](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L164) (Tag: `No Tag`) - `setTilt`: - [MapActivity.kt:196](MapActivity.kt#L196) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:135](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L135) (Tag: `maps_android_3d_camera_stop_kt`) @@ -315,8 +327,9 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:75](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L75) (Tag: `maps_android_3d_marker_add_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:74](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L74) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:59](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L59) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:115](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L115) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:71](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L71) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:116](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L116) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:164](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L164) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:72](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L72) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:113](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L113) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:68](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L68) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:123](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L123) (Tag: `No Tag`) @@ -367,8 +380,9 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:79](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L79) (Tag: `maps_android_3d_marker_add_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:78](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L78) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:63](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L63) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:119](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L119) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:75](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L75) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:120](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L120) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:166](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L166) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:76](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L76) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:117](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L117) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:72](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L72) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:127](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L127) (Tag: `No Tag`) @@ -386,8 +400,9 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:69](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L69) (Tag: `maps_android_3d_marker_add_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:72](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L72) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:57](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L57) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:109](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L109) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:65](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L65) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:110](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L110) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:162](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L162) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:66](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L66) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:107](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L107) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:62](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L62) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:121](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L121) (Tag: `No Tag`) @@ -431,8 +446,9 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:67](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L67) (Tag: `maps_android_3d_model_add_kt`) - `addPolygon`: - [TrackedMap3D.kt:43](TrackedMap3D.kt#L43) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:105](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L105) (Tag: `maps_android_3d_polygon_extruded_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:61](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L61) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:106](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L106) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:158](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L158) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:62](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L62) (Tag: `maps_android_3d_polygon_add_kt`) - `addPolyline`: - [TrackedMap3D.kt:37](TrackedMap3D.kt#L37) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:103](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L103) (Tag: `maps_android_3d_polyline_options_kt`) @@ -459,8 +475,9 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:68](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L68) (Tag: `maps_android_3d_marker_add_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:71](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L71) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:56](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L56) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:108](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L108) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:64](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L64) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:109](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L109) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:161](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L161) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:65](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L65) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:106](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L106) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:61](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L61) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:120](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L120) (Tag: `No Tag`) @@ -563,18 +580,29 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:99](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L99) (Tag: `maps_android_3d_marker_options_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:52](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L52) (Tag: `maps_android_3d_model_add_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:58](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L58) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:113](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L113) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:46](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L46) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:114](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L114) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:135](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L135) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:136](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L136) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:137](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L137) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:138](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L138) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:139](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L139) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:143](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L143) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:144](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L144) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:145](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L145) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:146](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L146) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:147](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L147) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:163](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L163) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:47](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L47) (Tag: `maps_android_3d_polygon_add_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:48](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L48) (Tag: `maps_android_3d_polygon_add_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:49](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L49) (Tag: `maps_android_3d_polygon_add_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:50](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L50) (Tag: `maps_android_3d_polygon_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:69](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L69) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:90](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L90) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:51](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L51) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:70](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L70) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:91](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L91) (Tag: `maps_android_3d_polygon_extruded_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:92](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L92) (Tag: `maps_android_3d_polygon_extruded_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:93](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L93) (Tag: `maps_android_3d_polygon_extruded_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:94](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L94) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:95](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L95) (Tag: `maps_android_3d_polygon_extruded_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:111](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L111) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:46](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L46) (Tag: `maps_android_3d_polyline_add_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:47](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L47) (Tag: `maps_android_3d_polyline_add_kt`) @@ -609,18 +637,29 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:97](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L97) (Tag: `maps_android_3d_marker_options_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:50](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L50) (Tag: `maps_android_3d_model_add_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:58](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L58) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:111](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L111) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:46](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L46) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:112](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L112) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:135](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L135) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:136](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L136) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:137](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L137) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:138](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L138) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:139](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L139) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:143](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L143) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:144](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L144) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:145](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L145) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:146](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L146) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:147](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L147) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:163](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L163) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:47](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L47) (Tag: `maps_android_3d_polygon_add_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:48](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L48) (Tag: `maps_android_3d_polygon_add_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:49](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L49) (Tag: `maps_android_3d_polygon_add_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:50](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L50) (Tag: `maps_android_3d_polygon_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:67](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L67) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:90](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L90) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:51](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L51) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:68](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L68) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:91](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L91) (Tag: `maps_android_3d_polygon_extruded_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:92](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L92) (Tag: `maps_android_3d_polygon_extruded_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:93](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L93) (Tag: `maps_android_3d_polygon_extruded_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:94](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L94) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:95](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L95) (Tag: `maps_android_3d_polygon_extruded_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:109](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L109) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:46](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L46) (Tag: `maps_android_3d_polyline_add_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:47](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L47) (Tag: `maps_android_3d_polyline_add_kt`) @@ -655,18 +694,29 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:98](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L98) (Tag: `maps_android_3d_marker_options_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:51](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L51) (Tag: `maps_android_3d_model_add_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:58](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L58) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:112](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L112) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:46](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L46) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:113](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L113) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:135](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L135) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:136](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L136) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:137](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L137) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:138](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L138) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:139](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L139) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:143](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L143) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:144](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L144) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:145](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L145) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:146](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L146) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:147](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L147) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:163](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L163) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:47](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L47) (Tag: `maps_android_3d_polygon_add_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:48](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L48) (Tag: `maps_android_3d_polygon_add_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:49](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L49) (Tag: `maps_android_3d_polygon_add_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:50](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L50) (Tag: `maps_android_3d_polygon_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:68](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L68) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:90](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L90) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:51](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L51) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:69](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L69) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:91](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L91) (Tag: `maps_android_3d_polygon_extruded_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:92](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L92) (Tag: `maps_android_3d_polygon_extruded_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:93](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L93) (Tag: `maps_android_3d_polygon_extruded_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:94](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L94) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:95](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L95) (Tag: `maps_android_3d_polygon_extruded_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:110](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L110) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:46](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L46) (Tag: `maps_android_3d_polyline_add_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:47](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L47) (Tag: `maps_android_3d_polyline_add_kt`) @@ -963,25 +1013,29 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - `getStrokeWidth`: ❌ No coverage - `getZIndex`: ❌ No coverage - `setAltitudeMode`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:102](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L102) (Tag: `maps_android_3d_polygon_extruded_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:58](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L58) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:103](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L103) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:155](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L155) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:59](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L59) (Tag: `maps_android_3d_polygon_add_kt`) - `setDrawsOccludedSegments`: ❌ No coverage - `setExtruded`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:100](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L100) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:101](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L101) (Tag: `maps_android_3d_polygon_extruded_kt`) - `setFillColor`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:55](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L55) (Tag: `maps_android_3d_polygon_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:99](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L99) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:100](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L100) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:152](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L152) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:56](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L56) (Tag: `maps_android_3d_polygon_add_kt`) - `setGeodesic`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:101](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L101) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:102](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L102) (Tag: `maps_android_3d_polygon_extruded_kt`) - `setId`: ❌ No coverage -- `setInnerPaths`: ❌ No coverage +- `setInnerPaths`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:154](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L154) (Tag: `maps_android_3d_polygon_hole_kt`) - `setPath`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:54](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L54) (Tag: `maps_android_3d_polygon_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:98](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L98) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:151](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L151) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:55](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L55) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:99](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L99) (Tag: `maps_android_3d_polygon_extruded_kt`) - `setStrokeColor`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:56](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L56) (Tag: `maps_android_3d_polygon_add_kt`) -- `setStrokeWidth`: - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:57](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L57) (Tag: `maps_android_3d_polygon_add_kt`) +- `setStrokeWidth`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:58](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L58) (Tag: `maps_android_3d_polygon_add_kt`) - `setZIndex`: ❌ No coverage - `writeToParcel`: ❌ No coverage @@ -1298,20 +1352,20 @@ The following non-getter/setter APIs currently have `0` occurrences within this ### `Glyph` - `equals`: ❌ No coverage - `fromCircle`: - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:271](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L271) (Tag: `maps_android_3d_marker_glyph_circle_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:266](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L266) (Tag: `maps_android_3d_marker_glyph_circle_java`) - `fromColor`: - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:168](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L168) (Tag: `maps_android_3d_marker_custom_icon_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:213](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L213) (Tag: `maps_android_3d_marker_glyph_color_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:163](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L163) (Tag: `maps_android_3d_marker_custom_icon_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:208](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L208) (Tag: `maps_android_3d_marker_glyph_color_java`) - `fromText`: - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:244](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L244) (Tag: `maps_android_3d_marker_glyph_text_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:239](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L239) (Tag: `maps_android_3d_marker_glyph_text_java`) - `getColor`: ❌ No coverage - `getImage`: ❌ No coverage - `getText`: ❌ No coverage - `hashCode`: ❌ No coverage - `setColor`: - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:272](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L272) (Tag: `maps_android_3d_marker_glyph_circle_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:267](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L267) (Tag: `maps_android_3d_marker_glyph_circle_java`) - `setImage`: - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:171](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L171) (Tag: `maps_android_3d_marker_custom_icon_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:166](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L166) (Tag: `maps_android_3d_marker_custom_icon_java`) - `setText`: ❌ No coverage - `writeToParcel`: ❌ No coverage @@ -1320,10 +1374,10 @@ The following non-getter/setter APIs currently have `0` occurrences within this - [TrackedMap3D.java:54](TrackedMap3D.java#L54) (Tag: `No Tag`) - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:104](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L104) (Tag: `maps_android_3d_marker_options_java`) - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:130](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L130) (Tag: `maps_android_3d_marker_click_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:185](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L185) (Tag: `maps_android_3d_marker_custom_icon_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:216](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L216) (Tag: `maps_android_3d_marker_glyph_color_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:247](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L247) (Tag: `maps_android_3d_marker_glyph_text_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:281](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L281) (Tag: `maps_android_3d_marker_glyph_circle_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:180](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L180) (Tag: `maps_android_3d_marker_custom_icon_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:211](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L211) (Tag: `maps_android_3d_marker_glyph_color_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:242](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L242) (Tag: `maps_android_3d_marker_glyph_text_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:276](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L276) (Tag: `maps_android_3d_marker_glyph_circle_java`) - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:72](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L72) (Tag: `maps_android_3d_marker_add_java`) - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:100](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L100) (Tag: `maps_android_3d_popover_options_java`) - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:60](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L60) (Tag: `maps_android_3d_popover_add_java`) @@ -1332,8 +1386,9 @@ The following non-getter/setter APIs currently have `0` occurrences within this - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java:64](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L64) (Tag: `maps_android_3d_model_add_java`) - `addPolygon`: - [TrackedMap3D.java:66](TrackedMap3D.java#L66) (Tag: `No Tag`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:102](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L102) (Tag: `maps_android_3d_polygon_extruded_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:69](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L69) (Tag: `maps_android_3d_polygon_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:103](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L103) (Tag: `maps_android_3d_polygon_extruded_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:146](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L146) (Tag: `maps_android_3d_polygon_hole_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:70](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L70) (Tag: `maps_android_3d_polygon_add_java`) - `addPolyline`: - [TrackedMap3D.java:60](TrackedMap3D.java#L60) (Tag: `No Tag`) - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:100](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L100) (Tag: `maps_android_3d_polyline_options_java`) @@ -1351,15 +1406,16 @@ The following non-getter/setter APIs currently have `0` occurrences within this - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:62](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L62) (Tag: `maps_android_3d_camera_fly_to_java`) - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:110](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L110) (Tag: `maps_android_3d_marker_options_java`) - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:136](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L136) (Tag: `maps_android_3d_marker_click_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:191](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L191) (Tag: `maps_android_3d_marker_custom_icon_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:222](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L222) (Tag: `maps_android_3d_marker_glyph_color_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:253](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L253) (Tag: `maps_android_3d_marker_glyph_text_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:287](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L287) (Tag: `maps_android_3d_marker_glyph_circle_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:186](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L186) (Tag: `maps_android_3d_marker_custom_icon_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:217](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L217) (Tag: `maps_android_3d_marker_glyph_color_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:248](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L248) (Tag: `maps_android_3d_marker_glyph_text_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:282](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L282) (Tag: `maps_android_3d_marker_glyph_circle_java`) - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:78](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L78) (Tag: `maps_android_3d_marker_add_java`) - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java:70](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L70) (Tag: `No Tag`) - [java-app/src/main/java/com/example/snippets/java/snippets/PlaceSnippets.java:74](java-app/src/main/java/com/example/snippets/java/snippets/PlaceSnippets.java#L74) (Tag: `No Tag`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:107](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L107) (Tag: `No Tag`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:74](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L74) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:108](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L108) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:151](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L151) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:75](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L75) (Tag: `No Tag`) - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:105](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L105) (Tag: `No Tag`) - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:71](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L71) (Tag: `No Tag`) - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:123](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L123) (Tag: `No Tag`) @@ -1417,19 +1473,19 @@ The following non-getter/setter APIs currently have `0` occurrences within this - [MapActivity.java:64](MapActivity.java#L64) (Tag: `No Tag`) - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:108](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L108) (Tag: `maps_android_3d_marker_options_java`) - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:134](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L134) (Tag: `maps_android_3d_marker_click_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:189](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L189) (Tag: `maps_android_3d_marker_custom_icon_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:220](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L220) (Tag: `maps_android_3d_marker_glyph_color_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:251](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L251) (Tag: `maps_android_3d_marker_glyph_text_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:285](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L285) (Tag: `maps_android_3d_marker_glyph_circle_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:184](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L184) (Tag: `maps_android_3d_marker_custom_icon_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:215](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L215) (Tag: `maps_android_3d_marker_glyph_color_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:246](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L246) (Tag: `maps_android_3d_marker_glyph_text_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:280](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L280) (Tag: `maps_android_3d_marker_glyph_circle_java`) - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:76](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L76) (Tag: `maps_android_3d_marker_add_java`) - `getLongitude`: - [MapActivity.java:64](MapActivity.java#L64) (Tag: `No Tag`) - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:108](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L108) (Tag: `maps_android_3d_marker_options_java`) - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:134](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L134) (Tag: `maps_android_3d_marker_click_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:189](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L189) (Tag: `maps_android_3d_marker_custom_icon_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:220](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L220) (Tag: `maps_android_3d_marker_glyph_color_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:251](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L251) (Tag: `maps_android_3d_marker_glyph_text_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:285](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L285) (Tag: `maps_android_3d_marker_glyph_circle_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:184](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L184) (Tag: `maps_android_3d_marker_custom_icon_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:215](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L215) (Tag: `maps_android_3d_marker_glyph_color_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:246](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L246) (Tag: `maps_android_3d_marker_glyph_text_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:280](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L280) (Tag: `maps_android_3d_marker_glyph_circle_java`) - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:76](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L76) (Tag: `maps_android_3d_marker_add_java`) - `getPosition`: ❌ No coverage - `setAltitude`: ❌ No coverage @@ -1533,10 +1589,10 @@ The following non-getter/setter APIs currently have `0` occurrences within this - `getPosition`: - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:106](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L106) (Tag: `maps_android_3d_marker_options_java`) - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:132](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L132) (Tag: `maps_android_3d_marker_click_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:187](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L187) (Tag: `maps_android_3d_marker_custom_icon_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:218](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L218) (Tag: `maps_android_3d_marker_glyph_color_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:249](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L249) (Tag: `maps_android_3d_marker_glyph_text_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:283](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L283) (Tag: `maps_android_3d_marker_glyph_circle_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:182](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L182) (Tag: `maps_android_3d_marker_custom_icon_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:213](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L213) (Tag: `maps_android_3d_marker_glyph_color_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:244](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L244) (Tag: `maps_android_3d_marker_glyph_text_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:278](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L278) (Tag: `maps_android_3d_marker_glyph_circle_java`) - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:74](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L74) (Tag: `maps_android_3d_marker_add_java`) - `getZIndex`: ❌ No coverage - `isDrawnWhenOccluded`: ❌ No coverage @@ -1552,19 +1608,19 @@ The following non-getter/setter APIs currently have `0` occurrences within this - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:101](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L101) (Tag: `maps_android_3d_marker_options_java`) - `setId`: ❌ No coverage - `setLabel`: - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:175](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L175) (Tag: `maps_android_3d_marker_custom_icon_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:211](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L211) (Tag: `maps_android_3d_marker_glyph_color_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:242](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L242) (Tag: `maps_android_3d_marker_glyph_text_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:276](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L276) (Tag: `maps_android_3d_marker_glyph_circle_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:170](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L170) (Tag: `maps_android_3d_marker_custom_icon_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:206](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L206) (Tag: `maps_android_3d_marker_glyph_color_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:237](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L237) (Tag: `maps_android_3d_marker_glyph_text_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:271](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L271) (Tag: `maps_android_3d_marker_glyph_circle_java`) - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:69](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L69) (Tag: `maps_android_3d_marker_add_java`) - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:99](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L99) (Tag: `maps_android_3d_marker_options_java`) - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:99](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L99) (Tag: `maps_android_3d_popover_options_java`) - `setPosition`: - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:128](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L128) (Tag: `maps_android_3d_marker_click_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:174](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L174) (Tag: `maps_android_3d_marker_custom_icon_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:210](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L210) (Tag: `maps_android_3d_marker_glyph_color_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:241](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L241) (Tag: `maps_android_3d_marker_glyph_text_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:275](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L275) (Tag: `maps_android_3d_marker_glyph_circle_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:169](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L169) (Tag: `maps_android_3d_marker_custom_icon_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:205](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L205) (Tag: `maps_android_3d_marker_glyph_color_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:236](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L236) (Tag: `maps_android_3d_marker_glyph_text_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:270](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L270) (Tag: `maps_android_3d_marker_glyph_circle_java`) - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:68](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L68) (Tag: `maps_android_3d_marker_add_java`) - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:97](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L97) (Tag: `maps_android_3d_marker_options_java`) - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:98](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L98) (Tag: `maps_android_3d_popover_options_java`) @@ -1631,10 +1687,10 @@ The following non-getter/setter APIs currently have `0` occurrences within this ### `PinConfiguration` - `builder`: - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:178](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L178) (Tag: `maps_android_3d_marker_custom_icon_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:212](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L212) (Tag: `maps_android_3d_marker_glyph_color_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:243](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L243) (Tag: `maps_android_3d_marker_glyph_text_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:277](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L277) (Tag: `maps_android_3d_marker_glyph_circle_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:173](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L173) (Tag: `maps_android_3d_marker_custom_icon_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:207](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L207) (Tag: `maps_android_3d_marker_glyph_color_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:238](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L238) (Tag: `maps_android_3d_marker_glyph_text_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:272](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L272) (Tag: `maps_android_3d_marker_glyph_circle_java`) - `equals`: ❌ No coverage - `getBackgroundColor`: ❌ No coverage - `getBorderColor`: ❌ No coverage @@ -1649,21 +1705,21 @@ The following non-getter/setter APIs currently have `0` occurrences within this ### `PinConfiguration.Builder` - `build`: - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:183](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L183) (Tag: `maps_android_3d_marker_custom_icon_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:214](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L214) (Tag: `maps_android_3d_marker_glyph_color_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:245](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L245) (Tag: `maps_android_3d_marker_glyph_text_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:279](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L279) (Tag: `maps_android_3d_marker_glyph_circle_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:178](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L178) (Tag: `maps_android_3d_marker_custom_icon_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:209](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L209) (Tag: `maps_android_3d_marker_glyph_color_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:240](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L240) (Tag: `maps_android_3d_marker_glyph_text_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:274](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L274) (Tag: `maps_android_3d_marker_glyph_circle_java`) - `setBackgroundColor`: - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:181](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L181) (Tag: `maps_android_3d_marker_custom_icon_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:176](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L176) (Tag: `maps_android_3d_marker_custom_icon_java`) - `setBorderColor`: - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:182](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L182) (Tag: `maps_android_3d_marker_custom_icon_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:177](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L177) (Tag: `maps_android_3d_marker_custom_icon_java`) - `setGlyph`: - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:180](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L180) (Tag: `maps_android_3d_marker_custom_icon_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:213](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L213) (Tag: `maps_android_3d_marker_glyph_color_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:244](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L244) (Tag: `maps_android_3d_marker_glyph_text_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:278](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L278) (Tag: `maps_android_3d_marker_glyph_circle_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:175](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L175) (Tag: `maps_android_3d_marker_custom_icon_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:208](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L208) (Tag: `maps_android_3d_marker_glyph_color_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:239](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L239) (Tag: `maps_android_3d_marker_glyph_text_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:273](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L273) (Tag: `maps_android_3d_marker_glyph_circle_java`) - `setScale`: - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:179](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L179) (Tag: `maps_android_3d_marker_custom_icon_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:174](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L174) (Tag: `maps_android_3d_marker_custom_icon_java`) ### `Polygon` - `getAltitudeMode`: ❌ No coverage @@ -1709,25 +1765,29 @@ The following non-getter/setter APIs currently have `0` occurrences within this - `getStrokeWidth`: ❌ No coverage - `getZIndex`: ❌ No coverage - `setAltitudeMode`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:100](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L100) (Tag: `maps_android_3d_polygon_extruded_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:67](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L67) (Tag: `maps_android_3d_polygon_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:101](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L101) (Tag: `maps_android_3d_polygon_extruded_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:140](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L140) (Tag: `maps_android_3d_polygon_hole_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:68](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L68) (Tag: `maps_android_3d_polygon_add_java`) - `setDrawsOccludedSegments`: ❌ No coverage - `setExtruded`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:98](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L98) (Tag: `maps_android_3d_polygon_extruded_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:99](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L99) (Tag: `maps_android_3d_polygon_extruded_java`) - `setFillColor`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:64](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L64) (Tag: `maps_android_3d_polygon_add_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:97](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L97) (Tag: `maps_android_3d_polygon_extruded_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:139](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L139) (Tag: `maps_android_3d_polygon_hole_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:65](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L65) (Tag: `maps_android_3d_polygon_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:98](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L98) (Tag: `maps_android_3d_polygon_extruded_java`) - `setGeodesic`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:99](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L99) (Tag: `maps_android_3d_polygon_extruded_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:100](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L100) (Tag: `maps_android_3d_polygon_extruded_java`) - `setId`: ❌ No coverage -- `setInnerPaths`: ❌ No coverage +- `setInnerPaths`: + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:144](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L144) (Tag: `maps_android_3d_polygon_hole_java`) - `setPath`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:63](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L63) (Tag: `maps_android_3d_polygon_add_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:96](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L96) (Tag: `maps_android_3d_polygon_extruded_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:138](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L138) (Tag: `maps_android_3d_polygon_hole_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:64](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L64) (Tag: `maps_android_3d_polygon_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:97](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L97) (Tag: `maps_android_3d_polygon_extruded_java`) - `setStrokeColor`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:65](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L65) (Tag: `maps_android_3d_polygon_add_java`) -- `setStrokeWidth`: - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:66](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L66) (Tag: `maps_android_3d_polygon_add_java`) +- `setStrokeWidth`: + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:67](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L67) (Tag: `maps_android_3d_polygon_add_java`) - `setZIndex`: ❌ No coverage - `writeToParcel`: ❌ No coverage diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java index ee31149a..31c80f91 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java @@ -22,6 +22,7 @@ import com.google.android.gms.maps3d.model.Camera; import com.google.android.gms.maps3d.model.FlyToOptions; import com.google.android.gms.maps3d.model.LatLngAltitude; +import com.google.android.gms.maps3d.model.Hole; import com.google.android.gms.maps3d.model.Polygon; import com.google.android.gms.maps3d.model.PolygonOptions; import java.util.Arrays; @@ -106,4 +107,47 @@ public void addExtrudedPolygon() { FlyToOptions flyTo = new FlyToOptions(cam, 1000L); map.flyCameraTo(flyTo); } + + /** + * Adds a polygon with a hole cutout. + */ + @SuppressWarnings("unused") + @SnippetItem( + title = "3. Polygon with Hole", + description = "Draws a polygon with an interior hole cutout." + ) + public void addPolygonWithHole() { + // [START maps_android_3d_polygon_hole_java] + List outerPoints = Arrays.asList( + new LatLngAltitude(37.422, -122.084, 0.0), + new LatLngAltitude(37.422, -122.086, 0.0), + new LatLngAltitude(37.424, -122.086, 0.0), + new LatLngAltitude(37.424, -122.084, 0.0), + new LatLngAltitude(37.422, -122.084, 0.0) + ); + + List innerPoints = Arrays.asList( + new LatLngAltitude(37.4225, -122.0845, 0.0), + new LatLngAltitude(37.4225, -122.0855, 0.0), + new LatLngAltitude(37.4235, -122.0855, 0.0), + new LatLngAltitude(37.4235, -122.0845, 0.0), + new LatLngAltitude(37.4225, -122.0845, 0.0) + ); + + PolygonOptions options = new PolygonOptions(); + options.setPath(outerPoints); + options.setFillColor(Color.GREEN); + options.setAltitudeMode(AltitudeMode.CLAMP_TO_GROUND); + + // Core logic: create a Hole object and set InnerPaths (Optional) + Hole innerHole = new Hole(innerPoints); + options.setInnerPaths(Arrays.asList(innerHole)); + + Polygon polygon = map.addPolygon(options); + // [END maps_android_3d_polygon_hole_java] + + Camera cam = new Camera(new LatLngAltitude(37.423600, -122.085098, 4.31), 0.00, 45.00, 0.00, 1085.51); + FlyToOptions flyTo = new FlyToOptions(cam, 1000L); + map.flyCameraTo(flyTo); + } } diff --git a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt index 3e8f705e..6eb0e3a8 100644 --- a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt +++ b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt @@ -20,6 +20,7 @@ import android.graphics.Color import com.example.snippets.kotlin.TrackedMap3D import com.example.snippets.kotlin.annotations.SnippetGroup import com.example.snippets.kotlin.annotations.SnippetItem +import com.google.android.gms.maps3d.model.Hole import com.google.android.gms.maps3d.model.AltitudeMode import com.google.android.gms.maps3d.model.camera import com.google.android.gms.maps3d.model.flyToOptions @@ -119,4 +120,50 @@ class PolygonSnippets(private val map: TrackedMap3D) { durationInMillis = 1000 }) } + + /** + * Adds a polygon with a hole cutout. + */ + @Suppress("unused") + @SnippetItem( + title = "3. Polygon with Hole", + description = "Draws a polygon with an interior hole cutout." + ) + fun addPolygonWithHole() { + // [START maps_android_3d_polygon_hole_kt] + val outerPoints = listOf( + latLngAltitude { latitude = 37.422; longitude = -122.084; altitude = 0.0 }, + latLngAltitude { latitude = 37.422; longitude = -122.086; altitude = 0.0 }, + latLngAltitude { latitude = 37.424; longitude = -122.086; altitude = 0.0 }, + latLngAltitude { latitude = 37.424; longitude = -122.084; altitude = 0.0 }, + latLngAltitude { latitude = 37.422; longitude = -122.084; altitude = 0.0 } + ) + + val innerPoints = listOf( + latLngAltitude { latitude = 37.4225; longitude = -122.0845; altitude = 0.0 }, + latLngAltitude { latitude = 37.4225; longitude = -122.0855; altitude = 0.0 }, + latLngAltitude { latitude = 37.4235; longitude = -122.0855; altitude = 0.0 }, + latLngAltitude { latitude = 37.4235; longitude = -122.0845; altitude = 0.0 }, + latLngAltitude { latitude = 37.4225; longitude = -122.0845; altitude = 0.0 } + ) + + val options = polygonOptions { + path = outerPoints + fillColor = Color.GREEN + // Inner paths is optional, wrap inner vertices with Hole + innerPaths = listOf(Hole(innerPoints)) + altitudeMode = AltitudeMode.CLAMP_TO_GROUND + } + + val polygon = map.addPolygon(options) + // [END maps_android_3d_polygon_hole_kt] + + map.flyCameraTo(flyToOptions { + endCamera = camera { + center = latLngAltitude { latitude = 37.423600; longitude = -122.085098; altitude = 4.31 } + tilt = 45.00; heading = 0.00; range = 1085.51; roll = 0.00 + } + durationInMillis = 1000 + }) + } } From 342a4491f288a5fd0902f49867707f1c1e979b54 Mon Sep 17 00:00:00 2001 From: dkhawk <107309+dkhawk@users.noreply.github.com> Date: Fri, 20 Mar 2026 11:58:04 -0600 Subject: [PATCH 28/36] feat(snippets): Add click listeners & Toast triggers for Polygons, Polylines, and Models - Expanded constructors for `PolygonSnippets`, `PolylineSnippets`, and `ModelSnippets` to accept an Android `Context` safely. - Appended `.setClickListener` hooks to dispatch `Toast` popups on the UI thread for all relevant creation functions in both Kotlin and Java. - Fixed Nullable compilation errors in Kotlin by using safe calls (`polygon?.`, `polyline?.`, `model?.`). - Regenerated `CATALOG.md` output to sync coordinate and listener trackers correctly on local branches. --- snippets/CATALOG.md | 490 +++++++++--------- .../snippets/java/snippets/ModelSnippets.java | 21 +- .../java/snippets/PolygonSnippets.java | 29 +- .../java/snippets/PolylineSnippets.java | 22 +- .../snippets/kotlin/snippets/ModelSnippets.kt | 13 +- .../kotlin/snippets/PolygonSnippets.kt | 27 +- .../kotlin/snippets/PolylineSnippets.kt | 20 +- 7 files changed, 374 insertions(+), 248 deletions(-) diff --git a/snippets/CATALOG.md b/snippets/CATALOG.md index c6cb0d4e..a9dd45bd 100644 --- a/snippets/CATALOG.md +++ b/snippets/CATALOG.md @@ -145,10 +145,10 @@ This section maps high-level concepts (groups) to specific demonstration files a - **1. Basic**: - *Description*: Loads a GLB model from a URL and places it clamped to the ground. - **Kotlin** - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:43](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L43) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:47](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L47) - Tag: `maps_android_3d_model_add_kt` - **Java** - - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java:49](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L49) + - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java:55](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L55) - Tag: `maps_android_3d_model_add_java` ### Places @@ -167,25 +167,25 @@ This section maps high-level concepts (groups) to specific demonstration files a - **1. Basic**: - *Description*: Draws a red polygon with a blue stroke around a small area - **Kotlin** - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:40](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L40) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:44](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L44) - Tag: `maps_android_3d_polygon_add_kt` - **Java** - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:49](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L49) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:55](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L55) - Tag: `maps_android_3d_polygon_add_java` - **2. Extruded**: - **Kotlin** - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:84](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L84) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:95](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L95) - Tag: `maps_android_3d_polygon_extruded_kt` - **Java** - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:82](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L82) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:95](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L95) - Tag: `maps_android_3d_polygon_extruded_java` - **3. Polygon with Hole**: - *Description*: Draws a polygon with an interior hole cutout. - **Kotlin** - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:128](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L128) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:146](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L146) - Tag: `maps_android_3d_polygon_hole_kt` - **Java** - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:115](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L115) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:135](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L135) - Tag: `maps_android_3d_polygon_hole_java` ### Polylines @@ -194,17 +194,17 @@ This section maps high-level concepts (groups) to specific demonstration files a - **1. Basic**: - *Description*: Draws a thick red polyline connecting three points - **Kotlin** - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:39](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L39) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:43](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L43) - Tag: `maps_android_3d_polyline_add_kt` - **Java** - - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:48](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L48) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:54](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L54) - Tag: `maps_android_3d_polyline_add_java` - **2. Styled**: - **Kotlin** - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:80](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L80) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:91](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L91) - Tag: `maps_android_3d_polyline_options_kt` - **Java** - - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:78](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L78) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:91](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L91) - Tag: `maps_android_3d_polyline_options_java` ### Popovers @@ -253,13 +253,13 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:283](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L283) (Tag: `maps_android_3d_marker_glyph_text_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:326](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L326) (Tag: `maps_android_3d_marker_glyph_circle_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:70](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L70) (Tag: `maps_android_3d_marker_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:73](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L73) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:84](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L84) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:58](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L58) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:111](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L111) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:163](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L163) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:67](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L67) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:108](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L108) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:63](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L63) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:129](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L129) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:188](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L188) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:78](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L78) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:126](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L126) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:74](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L74) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:122](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L122) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:77](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L77) (Tag: `No Tag`) - `setHeading`: @@ -275,13 +275,13 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:289](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L289) (Tag: `maps_android_3d_marker_glyph_text_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:332](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L332) (Tag: `maps_android_3d_marker_glyph_circle_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:76](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L76) (Tag: `maps_android_3d_marker_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:75](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L75) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:86](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L86) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:60](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L60) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:117](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L117) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:164](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L164) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:73](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L73) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:114](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L114) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:69](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L69) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:135](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L135) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:189](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L189) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:84](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L84) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:132](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L132) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:80](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L80) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:124](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L124) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:79](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L79) (Tag: `No Tag`) - `setRange`: @@ -297,13 +297,13 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:290](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L290) (Tag: `maps_android_3d_marker_glyph_text_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:333](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L333) (Tag: `maps_android_3d_marker_glyph_circle_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:77](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L77) (Tag: `maps_android_3d_marker_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:76](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L76) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:87](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L87) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:61](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L61) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:118](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L118) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:164](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L164) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:74](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L74) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:115](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L115) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:70](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L70) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:136](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L136) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:189](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L189) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:85](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L85) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:133](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L133) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:81](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L81) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:125](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L125) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:80](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L80) (Tag: `No Tag`) - `setRoll`: @@ -311,7 +311,7 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:62](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L62) (Tag: `maps_android_3d_camera_fly_to_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:94](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L94) (Tag: `maps_android_3d_camera_fly_around_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:68](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L68) (Tag: `maps_android_3d_init_basic_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:164](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L164) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:189](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L189) (Tag: `No Tag`) - `setTilt`: - [MapActivity.kt:196](MapActivity.kt#L196) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:135](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L135) (Tag: `maps_android_3d_camera_stop_kt`) @@ -325,13 +325,13 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:288](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L288) (Tag: `maps_android_3d_marker_glyph_text_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:331](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L331) (Tag: `maps_android_3d_marker_glyph_circle_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:75](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L75) (Tag: `maps_android_3d_marker_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:74](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L74) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:85](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L85) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:59](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L59) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:116](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L116) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:164](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L164) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:72](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L72) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:113](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L113) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:68](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L68) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:134](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L134) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:189](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L189) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:83](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L83) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:131](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L131) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:79](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L79) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:123](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L123) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:78](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L78) (Tag: `No Tag`) - `writeToParcel`: ❌ No coverage @@ -378,13 +378,13 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:292](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L292) (Tag: `maps_android_3d_marker_glyph_text_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:335](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L335) (Tag: `maps_android_3d_marker_glyph_circle_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:79](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L79) (Tag: `maps_android_3d_marker_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:78](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L78) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:89](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L89) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:63](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L63) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:120](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L120) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:166](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L166) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:76](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L76) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:117](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L117) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:72](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L72) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:138](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L138) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:191](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L191) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:87](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L87) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:135](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L135) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:83](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L83) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:127](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L127) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:82](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L82) (Tag: `No Tag`) - `setEndCamera`: @@ -398,13 +398,13 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:282](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L282) (Tag: `maps_android_3d_marker_glyph_text_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:325](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L325) (Tag: `maps_android_3d_marker_glyph_circle_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:69](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L69) (Tag: `maps_android_3d_marker_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:72](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L72) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:83](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L83) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:57](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L57) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:110](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L110) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:162](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L162) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:66](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L66) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:107](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L107) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:62](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L62) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:128](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L128) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:187](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L187) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:77](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L77) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:125](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L125) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:73](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L73) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:121](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L121) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:76](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L76) (Tag: `No Tag`) - `writeToParcel`: ❌ No coverage @@ -443,16 +443,16 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:53](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L53) (Tag: `maps_android_3d_popover_add_kt`) - `addModel`: - [TrackedMap3D.kt:49](TrackedMap3D.kt#L49) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:67](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L67) (Tag: `maps_android_3d_model_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:71](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L71) (Tag: `maps_android_3d_model_add_kt`) - `addPolygon`: - [TrackedMap3D.kt:43](TrackedMap3D.kt#L43) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:106](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L106) (Tag: `maps_android_3d_polygon_extruded_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:158](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L158) (Tag: `maps_android_3d_polygon_hole_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:62](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L62) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:117](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L117) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:176](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L176) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:66](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L66) (Tag: `maps_android_3d_polygon_add_kt`) - `addPolyline`: - [TrackedMap3D.kt:37](TrackedMap3D.kt#L37) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:103](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L103) (Tag: `maps_android_3d_polyline_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:58](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L58) (Tag: `maps_android_3d_polyline_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:114](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L114) (Tag: `maps_android_3d_polyline_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:62](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L62) (Tag: `maps_android_3d_polyline_add_kt`) - `addPopover`: - [TrackedMap3D.kt:55](TrackedMap3D.kt#L55) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:116](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L116) (Tag: `maps_android_3d_popover_options_kt`) @@ -473,13 +473,13 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:281](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L281) (Tag: `maps_android_3d_marker_glyph_text_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:324](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L324) (Tag: `maps_android_3d_marker_glyph_circle_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:68](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L68) (Tag: `maps_android_3d_marker_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:71](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L71) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:82](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L82) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:56](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L56) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:109](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L109) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:161](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L161) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:65](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L65) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:106](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L106) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:61](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L61) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:127](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L127) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:186](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L186) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:76](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L76) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:124](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L124) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:72](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L72) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:120](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L120) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:75](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L75) (Tag: `No Tag`) - `getCamera`: @@ -578,38 +578,38 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:57](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L57) (Tag: `maps_android_3d_marker_add_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:73](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L73) (Tag: `maps_android_3d_marker_add_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:99](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L99) (Tag: `maps_android_3d_marker_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:52](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L52) (Tag: `maps_android_3d_model_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:56](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L56) (Tag: `maps_android_3d_model_add_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:58](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L58) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:114](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L114) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:135](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L135) (Tag: `maps_android_3d_polygon_hole_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:136](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L136) (Tag: `maps_android_3d_polygon_hole_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:137](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L137) (Tag: `maps_android_3d_polygon_hole_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:138](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L138) (Tag: `maps_android_3d_polygon_hole_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:139](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L139) (Tag: `maps_android_3d_polygon_hole_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:143](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L143) (Tag: `maps_android_3d_polygon_hole_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:144](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L144) (Tag: `maps_android_3d_polygon_hole_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:145](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L145) (Tag: `maps_android_3d_polygon_hole_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:146](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L146) (Tag: `maps_android_3d_polygon_hole_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:147](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L147) (Tag: `maps_android_3d_polygon_hole_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:163](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L163) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:47](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L47) (Tag: `maps_android_3d_polygon_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:48](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L48) (Tag: `maps_android_3d_polygon_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:49](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L49) (Tag: `maps_android_3d_polygon_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:50](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L50) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:102](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L102) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:103](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L103) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:104](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L104) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:105](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L105) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:106](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L106) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:132](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L132) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:153](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L153) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:154](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L154) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:155](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L155) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:156](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L156) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:157](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L157) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:161](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L161) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:162](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L162) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:163](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L163) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:164](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L164) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:165](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L165) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:188](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L188) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:51](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L51) (Tag: `maps_android_3d_polygon_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:70](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L70) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:91](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L91) (Tag: `maps_android_3d_polygon_extruded_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:92](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L92) (Tag: `maps_android_3d_polygon_extruded_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:93](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L93) (Tag: `maps_android_3d_polygon_extruded_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:94](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L94) (Tag: `maps_android_3d_polygon_extruded_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:95](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L95) (Tag: `maps_android_3d_polygon_extruded_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:111](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L111) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:46](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L46) (Tag: `maps_android_3d_polyline_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:47](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L47) (Tag: `maps_android_3d_polyline_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:48](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L48) (Tag: `maps_android_3d_polyline_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:66](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L66) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:87](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L87) (Tag: `maps_android_3d_polyline_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:88](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L88) (Tag: `maps_android_3d_polyline_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:52](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L52) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:53](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L53) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:54](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L54) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:55](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L55) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:81](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L81) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:129](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L129) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:50](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L50) (Tag: `maps_android_3d_polyline_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:51](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L51) (Tag: `maps_android_3d_polyline_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:52](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L52) (Tag: `maps_android_3d_polyline_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:77](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L77) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:98](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L98) (Tag: `maps_android_3d_polyline_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:99](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L99) (Tag: `maps_android_3d_polyline_options_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:122](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L122) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:51](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L51) (Tag: `maps_android_3d_popover_add_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:77](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L77) (Tag: `No Tag`) @@ -635,38 +635,38 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:55](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L55) (Tag: `maps_android_3d_marker_add_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:71](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L71) (Tag: `maps_android_3d_marker_add_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:97](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L97) (Tag: `maps_android_3d_marker_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:50](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L50) (Tag: `maps_android_3d_model_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:54](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L54) (Tag: `maps_android_3d_model_add_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:58](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L58) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:112](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L112) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:135](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L135) (Tag: `maps_android_3d_polygon_hole_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:136](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L136) (Tag: `maps_android_3d_polygon_hole_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:137](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L137) (Tag: `maps_android_3d_polygon_hole_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:138](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L138) (Tag: `maps_android_3d_polygon_hole_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:139](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L139) (Tag: `maps_android_3d_polygon_hole_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:143](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L143) (Tag: `maps_android_3d_polygon_hole_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:144](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L144) (Tag: `maps_android_3d_polygon_hole_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:145](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L145) (Tag: `maps_android_3d_polygon_hole_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:146](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L146) (Tag: `maps_android_3d_polygon_hole_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:147](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L147) (Tag: `maps_android_3d_polygon_hole_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:163](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L163) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:47](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L47) (Tag: `maps_android_3d_polygon_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:48](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L48) (Tag: `maps_android_3d_polygon_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:49](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L49) (Tag: `maps_android_3d_polygon_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:50](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L50) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:102](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L102) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:103](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L103) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:104](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L104) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:105](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L105) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:106](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L106) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:130](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L130) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:153](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L153) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:154](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L154) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:155](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L155) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:156](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L156) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:157](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L157) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:161](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L161) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:162](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L162) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:163](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L163) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:164](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L164) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:165](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L165) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:188](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L188) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:51](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L51) (Tag: `maps_android_3d_polygon_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:68](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L68) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:91](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L91) (Tag: `maps_android_3d_polygon_extruded_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:92](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L92) (Tag: `maps_android_3d_polygon_extruded_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:93](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L93) (Tag: `maps_android_3d_polygon_extruded_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:94](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L94) (Tag: `maps_android_3d_polygon_extruded_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:95](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L95) (Tag: `maps_android_3d_polygon_extruded_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:109](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L109) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:46](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L46) (Tag: `maps_android_3d_polyline_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:47](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L47) (Tag: `maps_android_3d_polyline_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:48](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L48) (Tag: `maps_android_3d_polyline_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:64](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L64) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:87](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L87) (Tag: `maps_android_3d_polyline_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:88](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L88) (Tag: `maps_android_3d_polyline_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:52](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L52) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:53](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L53) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:54](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L54) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:55](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L55) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:79](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L79) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:127](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L127) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:50](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L50) (Tag: `maps_android_3d_polyline_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:51](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L51) (Tag: `maps_android_3d_polyline_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:52](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L52) (Tag: `maps_android_3d_polyline_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:75](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L75) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:98](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L98) (Tag: `maps_android_3d_polyline_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:99](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L99) (Tag: `maps_android_3d_polyline_options_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:122](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L122) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:51](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L51) (Tag: `maps_android_3d_popover_add_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:77](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L77) (Tag: `No Tag`) @@ -692,38 +692,38 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:56](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L56) (Tag: `maps_android_3d_marker_add_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:72](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L72) (Tag: `maps_android_3d_marker_add_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:98](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L98) (Tag: `maps_android_3d_marker_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:51](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L51) (Tag: `maps_android_3d_model_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:55](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L55) (Tag: `maps_android_3d_model_add_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:58](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L58) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:113](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L113) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:135](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L135) (Tag: `maps_android_3d_polygon_hole_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:136](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L136) (Tag: `maps_android_3d_polygon_hole_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:137](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L137) (Tag: `maps_android_3d_polygon_hole_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:138](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L138) (Tag: `maps_android_3d_polygon_hole_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:139](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L139) (Tag: `maps_android_3d_polygon_hole_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:143](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L143) (Tag: `maps_android_3d_polygon_hole_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:144](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L144) (Tag: `maps_android_3d_polygon_hole_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:145](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L145) (Tag: `maps_android_3d_polygon_hole_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:146](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L146) (Tag: `maps_android_3d_polygon_hole_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:147](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L147) (Tag: `maps_android_3d_polygon_hole_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:163](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L163) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:47](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L47) (Tag: `maps_android_3d_polygon_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:48](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L48) (Tag: `maps_android_3d_polygon_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:49](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L49) (Tag: `maps_android_3d_polygon_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:50](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L50) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:102](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L102) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:103](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L103) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:104](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L104) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:105](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L105) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:106](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L106) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:131](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L131) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:153](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L153) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:154](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L154) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:155](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L155) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:156](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L156) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:157](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L157) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:161](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L161) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:162](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L162) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:163](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L163) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:164](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L164) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:165](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L165) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:188](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L188) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:51](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L51) (Tag: `maps_android_3d_polygon_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:69](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L69) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:91](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L91) (Tag: `maps_android_3d_polygon_extruded_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:92](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L92) (Tag: `maps_android_3d_polygon_extruded_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:93](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L93) (Tag: `maps_android_3d_polygon_extruded_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:94](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L94) (Tag: `maps_android_3d_polygon_extruded_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:95](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L95) (Tag: `maps_android_3d_polygon_extruded_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:110](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L110) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:46](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L46) (Tag: `maps_android_3d_polyline_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:47](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L47) (Tag: `maps_android_3d_polyline_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:48](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L48) (Tag: `maps_android_3d_polyline_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:65](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L65) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:87](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L87) (Tag: `maps_android_3d_polyline_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:88](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L88) (Tag: `maps_android_3d_polyline_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:52](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L52) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:53](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L53) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:54](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L54) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:55](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L55) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:80](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L80) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:128](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L128) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:50](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L50) (Tag: `maps_android_3d_polyline_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:51](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L51) (Tag: `maps_android_3d_polyline_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:52](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L52) (Tag: `maps_android_3d_polyline_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:76](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L76) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:98](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L98) (Tag: `maps_android_3d_polyline_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:99](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L99) (Tag: `maps_android_3d_polyline_options_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:122](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L122) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:51](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L51) (Tag: `maps_android_3d_popover_add_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:77](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L77) (Tag: `No Tag`) @@ -895,7 +895,8 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - `remove`: - [SnippetRegistry.kt:63](SnippetRegistry.kt#L63) (Tag: `No Tag`) - `setAltitudeMode`: ❌ No coverage -- `setClickListener`: ❌ No coverage +- `setClickListener`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:73](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L73) (Tag: `maps_android_3d_model_add_kt`) - `setOrientation`: ❌ No coverage - `setPosition`: ❌ No coverage - `setScale`: ❌ No coverage @@ -909,16 +910,16 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - `getScale`: ❌ No coverage - `getUrl`: ❌ No coverage - `setAltitudeMode`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:58](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L58) (Tag: `maps_android_3d_model_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:62](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L62) (Tag: `maps_android_3d_model_add_kt`) - `setId`: ❌ No coverage - `setOrientation`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:59](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L59) (Tag: `maps_android_3d_model_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:63](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L63) (Tag: `maps_android_3d_model_add_kt`) - `setPosition`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:56](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L56) (Tag: `maps_android_3d_model_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:60](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L60) (Tag: `maps_android_3d_model_add_kt`) - `setScale`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:64](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L64) (Tag: `maps_android_3d_model_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:68](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L68) (Tag: `maps_android_3d_model_add_kt`) - `setUrl`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:57](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L57) (Tag: `maps_android_3d_model_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:61](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L61) (Tag: `maps_android_3d_model_add_kt`) - `writeToParcel`: ❌ No coverage ### `Orientation` @@ -926,11 +927,11 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - `getRoll`: ❌ No coverage - `getTilt`: ❌ No coverage - `setHeading`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:61](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L61) (Tag: `maps_android_3d_model_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:65](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L65) (Tag: `maps_android_3d_model_add_kt`) - `setRoll`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:62](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L62) (Tag: `maps_android_3d_model_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:66](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L66) (Tag: `maps_android_3d_model_add_kt`) - `setTilt`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:60](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L60) (Tag: `maps_android_3d_model_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:64](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L64) (Tag: `maps_android_3d_model_add_kt`) - `writeToParcel`: ❌ No coverage ### `PinConfiguration` @@ -987,7 +988,10 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - `remove`: - [SnippetRegistry.kt:62](SnippetRegistry.kt#L62) (Tag: `No Tag`) - `setAltitudeMode`: ❌ No coverage -- `setClickListener`: ❌ No coverage +- `setClickListener`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:119](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L119) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:178](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L178) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:68](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L68) (Tag: `maps_android_3d_polygon_add_kt`) - `setDrawsOccludedSegments`: ❌ No coverage - `setExtruded`: ❌ No coverage - `setFillColor`: ❌ No coverage @@ -1013,29 +1017,29 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - `getStrokeWidth`: ❌ No coverage - `getZIndex`: ❌ No coverage - `setAltitudeMode`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:103](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L103) (Tag: `maps_android_3d_polygon_extruded_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:155](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L155) (Tag: `maps_android_3d_polygon_hole_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:59](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L59) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:114](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L114) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:173](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L173) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:63](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L63) (Tag: `maps_android_3d_polygon_add_kt`) - `setDrawsOccludedSegments`: ❌ No coverage - `setExtruded`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:101](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L101) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:112](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L112) (Tag: `maps_android_3d_polygon_extruded_kt`) - `setFillColor`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:100](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L100) (Tag: `maps_android_3d_polygon_extruded_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:152](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L152) (Tag: `maps_android_3d_polygon_hole_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:56](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L56) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:111](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L111) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:170](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L170) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:60](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L60) (Tag: `maps_android_3d_polygon_add_kt`) - `setGeodesic`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:102](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L102) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:113](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L113) (Tag: `maps_android_3d_polygon_extruded_kt`) - `setId`: ❌ No coverage - `setInnerPaths`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:154](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L154) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:172](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L172) (Tag: `maps_android_3d_polygon_hole_kt`) - `setPath`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:151](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L151) (Tag: `maps_android_3d_polygon_hole_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:55](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L55) (Tag: `maps_android_3d_polygon_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:99](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L99) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:110](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L110) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:169](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L169) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:59](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L59) (Tag: `maps_android_3d_polygon_add_kt`) - `setStrokeColor`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:57](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L57) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:61](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L61) (Tag: `maps_android_3d_polygon_add_kt`) - `setStrokeWidth`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:58](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L58) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:62](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L62) (Tag: `maps_android_3d_polygon_add_kt`) - `setZIndex`: ❌ No coverage - `writeToParcel`: ❌ No coverage @@ -1055,7 +1059,9 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - `remove`: - [SnippetRegistry.kt:61](SnippetRegistry.kt#L61) (Tag: `No Tag`) - `setAltitudeMode`: ❌ No coverage -- `setClickListener`: ❌ No coverage +- `setClickListener`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:116](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L116) (Tag: `maps_android_3d_polyline_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:64](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L64) (Tag: `maps_android_3d_polyline_add_kt`) - `setCoordinates`: ❌ No coverage - `setDrawsOccludedSegments`: ❌ No coverage - `setGeodesic`: ❌ No coverage @@ -1079,28 +1085,28 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - `getStrokeWidth`: ❌ No coverage - `getZIndex`: ❌ No coverage - `setAltitudeMode`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:55](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L55) (Tag: `maps_android_3d_polyline_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:97](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L97) (Tag: `maps_android_3d_polyline_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:108](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L108) (Tag: `maps_android_3d_polyline_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:59](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L59) (Tag: `maps_android_3d_polyline_add_kt`) - `setDrawsOccludedSegments`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:100](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L100) (Tag: `maps_android_3d_polyline_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:111](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L111) (Tag: `maps_android_3d_polyline_options_kt`) - `setExtruded`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:98](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L98) (Tag: `maps_android_3d_polyline_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:109](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L109) (Tag: `maps_android_3d_polyline_options_kt`) - `setGeodesic`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:99](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L99) (Tag: `maps_android_3d_polyline_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:110](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L110) (Tag: `maps_android_3d_polyline_options_kt`) - `setId`: ❌ No coverage - `setOuterColor`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:95](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L95) (Tag: `maps_android_3d_polyline_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:106](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L106) (Tag: `maps_android_3d_polyline_options_kt`) - `setOuterWidth`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:96](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L96) (Tag: `maps_android_3d_polyline_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:107](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L107) (Tag: `maps_android_3d_polyline_options_kt`) - `setPath`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:52](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L52) (Tag: `maps_android_3d_polyline_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:92](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L92) (Tag: `maps_android_3d_polyline_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:103](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L103) (Tag: `maps_android_3d_polyline_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:56](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L56) (Tag: `maps_android_3d_polyline_add_kt`) - `setStrokeColor`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:53](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L53) (Tag: `maps_android_3d_polyline_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:93](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L93) (Tag: `maps_android_3d_polyline_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:104](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L104) (Tag: `maps_android_3d_polyline_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:57](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L57) (Tag: `maps_android_3d_polyline_add_kt`) - `setStrokeWidth`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:54](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L54) (Tag: `maps_android_3d_polyline_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:94](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L94) (Tag: `maps_android_3d_polyline_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:105](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L105) (Tag: `maps_android_3d_polyline_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:58](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L58) (Tag: `maps_android_3d_polyline_add_kt`) - `setZIndex`: ❌ No coverage - `writeToParcel`: ❌ No coverage @@ -1208,11 +1214,11 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - `getY`: ❌ No coverage - `getZ`: ❌ No coverage - `setX`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:64](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L64) (Tag: `maps_android_3d_model_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:68](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L68) (Tag: `maps_android_3d_model_add_kt`) - `setY`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:64](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L64) (Tag: `maps_android_3d_model_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:68](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L68) (Tag: `maps_android_3d_model_add_kt`) - `setZ`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:64](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L64) (Tag: `maps_android_3d_model_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:68](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L68) (Tag: `maps_android_3d_model_add_kt`) - `writeToParcel`: ❌ No coverage ### Missing Extracted API Coverage (Kotlin Snippets) @@ -1383,16 +1389,16 @@ The following non-getter/setter APIs currently have `0` occurrences within this - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:60](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L60) (Tag: `maps_android_3d_popover_add_java`) - `addModel`: - [TrackedMap3D.java:72](TrackedMap3D.java#L72) (Tag: `No Tag`) - - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java:64](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L64) (Tag: `maps_android_3d_model_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java:70](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L70) (Tag: `maps_android_3d_model_add_java`) - `addPolygon`: - [TrackedMap3D.java:66](TrackedMap3D.java#L66) (Tag: `No Tag`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:103](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L103) (Tag: `maps_android_3d_polygon_extruded_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:146](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L146) (Tag: `maps_android_3d_polygon_hole_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:70](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L70) (Tag: `maps_android_3d_polygon_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:116](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L116) (Tag: `maps_android_3d_polygon_extruded_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:166](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L166) (Tag: `maps_android_3d_polygon_hole_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:76](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L76) (Tag: `maps_android_3d_polygon_add_java`) - `addPolyline`: - [TrackedMap3D.java:60](TrackedMap3D.java#L60) (Tag: `No Tag`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:100](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L100) (Tag: `maps_android_3d_polyline_options_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:66](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L66) (Tag: `maps_android_3d_polyline_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:113](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L113) (Tag: `maps_android_3d_polyline_options_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:72](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L72) (Tag: `maps_android_3d_polyline_add_java`) - `addPopover`: - [TrackedMap3D.java:78](TrackedMap3D.java#L78) (Tag: `No Tag`) - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:114](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L114) (Tag: `maps_android_3d_popover_options_java`) @@ -1411,13 +1417,13 @@ The following non-getter/setter APIs currently have `0` occurrences within this - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:248](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L248) (Tag: `maps_android_3d_marker_glyph_text_java`) - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:282](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L282) (Tag: `maps_android_3d_marker_glyph_circle_java`) - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:78](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L78) (Tag: `maps_android_3d_marker_add_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java:70](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L70) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java:83](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L83) (Tag: `No Tag`) - [java-app/src/main/java/com/example/snippets/java/snippets/PlaceSnippets.java:74](java-app/src/main/java/com/example/snippets/java/snippets/PlaceSnippets.java#L74) (Tag: `No Tag`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:108](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L108) (Tag: `No Tag`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:151](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L151) (Tag: `No Tag`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:75](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L75) (Tag: `No Tag`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:105](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L105) (Tag: `No Tag`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:71](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L71) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:128](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L128) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:178](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L178) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:88](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L88) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:125](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L125) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:84](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L84) (Tag: `No Tag`) - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:123](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L123) (Tag: `No Tag`) - `getCamera`: - [MapActivity.java:53](MapActivity.java#L53) (Tag: `No Tag`) @@ -1650,7 +1656,8 @@ The following non-getter/setter APIs currently have `0` occurrences within this - `remove`: - [SnippetRegistry.java:41](SnippetRegistry.java#L41) (Tag: `No Tag`) - `setAltitudeMode`: ❌ No coverage -- `setClickListener`: ❌ No coverage +- `setClickListener`: + - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java:72](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L72) (Tag: `maps_android_3d_model_add_java`) - `setOrientation`: ❌ No coverage - `setPosition`: ❌ No coverage - `setScale`: ❌ No coverage @@ -1664,16 +1671,16 @@ The following non-getter/setter APIs currently have `0` occurrences within this - `getScale`: ❌ No coverage - `getUrl`: ❌ No coverage - `setAltitudeMode`: - - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java:60](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L60) (Tag: `maps_android_3d_model_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java:66](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L66) (Tag: `maps_android_3d_model_add_java`) - `setId`: ❌ No coverage - `setOrientation`: - - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java:61](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L61) (Tag: `maps_android_3d_model_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java:67](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L67) (Tag: `maps_android_3d_model_add_java`) - `setPosition`: - - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java:58](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L58) (Tag: `maps_android_3d_model_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java:64](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L64) (Tag: `maps_android_3d_model_add_java`) - `setScale`: - - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java:62](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L62) (Tag: `maps_android_3d_model_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java:68](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L68) (Tag: `maps_android_3d_model_add_java`) - `setUrl`: - - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java:59](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L59) (Tag: `maps_android_3d_model_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java:65](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L65) (Tag: `maps_android_3d_model_add_java`) - `writeToParcel`: ❌ No coverage ### `Orientation` @@ -1739,7 +1746,10 @@ The following non-getter/setter APIs currently have `0` occurrences within this - `remove`: - [SnippetRegistry.java:40](SnippetRegistry.java#L40) (Tag: `No Tag`) - `setAltitudeMode`: ❌ No coverage -- `setClickListener`: ❌ No coverage +- `setClickListener`: + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:118](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L118) (Tag: `maps_android_3d_polygon_extruded_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:168](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L168) (Tag: `maps_android_3d_polygon_hole_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:78](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L78) (Tag: `maps_android_3d_polygon_add_java`) - `setDrawsOccludedSegments`: ❌ No coverage - `setExtruded`: ❌ No coverage - `setFillColor`: ❌ No coverage @@ -1765,29 +1775,29 @@ The following non-getter/setter APIs currently have `0` occurrences within this - `getStrokeWidth`: ❌ No coverage - `getZIndex`: ❌ No coverage - `setAltitudeMode`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:101](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L101) (Tag: `maps_android_3d_polygon_extruded_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:140](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L140) (Tag: `maps_android_3d_polygon_hole_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:68](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L68) (Tag: `maps_android_3d_polygon_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:114](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L114) (Tag: `maps_android_3d_polygon_extruded_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:160](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L160) (Tag: `maps_android_3d_polygon_hole_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:74](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L74) (Tag: `maps_android_3d_polygon_add_java`) - `setDrawsOccludedSegments`: ❌ No coverage - `setExtruded`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:99](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L99) (Tag: `maps_android_3d_polygon_extruded_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:112](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L112) (Tag: `maps_android_3d_polygon_extruded_java`) - `setFillColor`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:139](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L139) (Tag: `maps_android_3d_polygon_hole_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:65](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L65) (Tag: `maps_android_3d_polygon_add_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:98](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L98) (Tag: `maps_android_3d_polygon_extruded_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:111](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L111) (Tag: `maps_android_3d_polygon_extruded_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:159](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L159) (Tag: `maps_android_3d_polygon_hole_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:71](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L71) (Tag: `maps_android_3d_polygon_add_java`) - `setGeodesic`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:100](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L100) (Tag: `maps_android_3d_polygon_extruded_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:113](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L113) (Tag: `maps_android_3d_polygon_extruded_java`) - `setId`: ❌ No coverage - `setInnerPaths`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:144](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L144) (Tag: `maps_android_3d_polygon_hole_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:164](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L164) (Tag: `maps_android_3d_polygon_hole_java`) - `setPath`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:138](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L138) (Tag: `maps_android_3d_polygon_hole_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:64](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L64) (Tag: `maps_android_3d_polygon_add_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:97](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L97) (Tag: `maps_android_3d_polygon_extruded_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:110](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L110) (Tag: `maps_android_3d_polygon_extruded_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:158](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L158) (Tag: `maps_android_3d_polygon_hole_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:70](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L70) (Tag: `maps_android_3d_polygon_add_java`) - `setStrokeColor`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:66](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L66) (Tag: `maps_android_3d_polygon_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:72](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L72) (Tag: `maps_android_3d_polygon_add_java`) - `setStrokeWidth`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:67](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L67) (Tag: `maps_android_3d_polygon_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:73](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L73) (Tag: `maps_android_3d_polygon_add_java`) - `setZIndex`: ❌ No coverage - `writeToParcel`: ❌ No coverage @@ -1807,7 +1817,9 @@ The following non-getter/setter APIs currently have `0` occurrences within this - `remove`: - [SnippetRegistry.java:39](SnippetRegistry.java#L39) (Tag: `No Tag`) - `setAltitudeMode`: ❌ No coverage -- `setClickListener`: ❌ No coverage +- `setClickListener`: + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:115](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L115) (Tag: `maps_android_3d_polyline_options_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:74](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L74) (Tag: `maps_android_3d_polyline_add_java`) - `setCoordinates`: ❌ No coverage - `setDrawsOccludedSegments`: ❌ No coverage - `setGeodesic`: ❌ No coverage @@ -1831,28 +1843,28 @@ The following non-getter/setter APIs currently have `0` occurrences within this - `getStrokeWidth`: ❌ No coverage - `getZIndex`: ❌ No coverage - `setAltitudeMode`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:64](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L64) (Tag: `maps_android_3d_polyline_add_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:95](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L95) (Tag: `maps_android_3d_polyline_options_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:108](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L108) (Tag: `maps_android_3d_polyline_options_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:70](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L70) (Tag: `maps_android_3d_polyline_add_java`) - `setDrawsOccludedSegments`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:98](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L98) (Tag: `maps_android_3d_polyline_options_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:111](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L111) (Tag: `maps_android_3d_polyline_options_java`) - `setExtruded`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:96](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L96) (Tag: `maps_android_3d_polyline_options_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:109](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L109) (Tag: `maps_android_3d_polyline_options_java`) - `setGeodesic`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:97](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L97) (Tag: `maps_android_3d_polyline_options_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:110](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L110) (Tag: `maps_android_3d_polyline_options_java`) - `setId`: ❌ No coverage - `setOuterColor`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:93](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L93) (Tag: `maps_android_3d_polyline_options_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:106](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L106) (Tag: `maps_android_3d_polyline_options_java`) - `setOuterWidth`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:94](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L94) (Tag: `maps_android_3d_polyline_options_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:107](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L107) (Tag: `maps_android_3d_polyline_options_java`) - `setPath`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:61](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L61) (Tag: `maps_android_3d_polyline_add_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:90](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L90) (Tag: `maps_android_3d_polyline_options_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:103](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L103) (Tag: `maps_android_3d_polyline_options_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:67](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L67) (Tag: `maps_android_3d_polyline_add_java`) - `setStrokeColor`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:62](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L62) (Tag: `maps_android_3d_polyline_add_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:91](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L91) (Tag: `maps_android_3d_polyline_options_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:104](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L104) (Tag: `maps_android_3d_polyline_options_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:68](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L68) (Tag: `maps_android_3d_polyline_add_java`) - `setStrokeWidth`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:63](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L63) (Tag: `maps_android_3d_polyline_add_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:92](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L92) (Tag: `maps_android_3d_polyline_options_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:105](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L105) (Tag: `maps_android_3d_polyline_options_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:69](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L69) (Tag: `maps_android_3d_polyline_add_java`) - `setZIndex`: ❌ No coverage - `writeToParcel`: ❌ No coverage diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java index be0e320c..ecb99f08 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java @@ -16,15 +16,19 @@ package com.example.snippets.java.snippets; -import com.google.android.gms.maps3d.model.AltitudeMode; +import android.content.Context; +import android.os.Handler; +import android.os.Looper; +import android.widget.Toast; import com.example.snippets.java.TrackedMap3D; +import com.google.android.gms.maps3d.model.AltitudeMode; +import com.google.android.gms.maps3d.model.Camera; +import com.google.android.gms.maps3d.model.FlyToOptions; import com.google.android.gms.maps3d.model.LatLngAltitude; import com.google.android.gms.maps3d.model.Model; import com.google.android.gms.maps3d.model.ModelOptions; import com.google.android.gms.maps3d.model.Orientation; import com.google.android.gms.maps3d.model.Vector3D; -import com.google.android.gms.maps3d.model.Camera; -import com.google.android.gms.maps3d.model.FlyToOptions; import com.example.snippets.java.annotations.SnippetGroup; import com.example.snippets.java.annotations.SnippetItem; @@ -36,9 +40,11 @@ public class ModelSnippets { public static final String SAUCER_URL = "https://storage.googleapis.com/gmp-maps-demos/p3d-map/assets/UFO.glb"; + private final Context context; private final TrackedMap3D map; - public ModelSnippets(TrackedMap3D map) { + public ModelSnippets(Context context, TrackedMap3D map) { + this.context = context; this.map = map; } @@ -62,6 +68,13 @@ public void addBasicModel() { options.setScale(new Vector3D(10.0, 10.0, 10.0)); Model model = map.addModel(options); + // [START_EXCLUDE] + model.setClickListener(() -> { + new Handler(Looper.getMainLooper()).post(() -> { + Toast.makeText(context, "Model Clicked!", Toast.LENGTH_SHORT).show(); + }); + }); + // [END_EXCLUDE] // [END maps_android_3d_model_add_java] // Position camera to see the model diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java index 31c80f91..0cd36a12 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java @@ -16,7 +16,11 @@ package com.example.snippets.java.snippets; +import android.content.Context; import android.graphics.Color; +import android.os.Handler; +import android.os.Looper; +import android.widget.Toast; import com.example.snippets.java.TrackedMap3D; import com.google.android.gms.maps3d.model.AltitudeMode; import com.google.android.gms.maps3d.model.Camera; @@ -36,9 +40,11 @@ ) public class PolygonSnippets { + private final Context context; private final TrackedMap3D map; - public PolygonSnippets(TrackedMap3D map) { + public PolygonSnippets(Context context, TrackedMap3D map) { + this.context = context; this.map = map; } @@ -68,6 +74,13 @@ public void addBasicPolygon() { options.setAltitudeMode(AltitudeMode.CLAMP_TO_GROUND); Polygon polygon = map.addPolygon(options); + // [START_EXCLUDE] + polygon.setClickListener(() -> { + new Handler(Looper.getMainLooper()).post(() -> { + Toast.makeText(context, "Polygon Clicked!", Toast.LENGTH_SHORT).show(); + }); + }); + // [END_EXCLUDE] // [END maps_android_3d_polygon_add_java] Camera cam = new Camera(new LatLngAltitude(37.424968, -122.084874, 19.90), 0.0, 45.02, 0.0, 4643.0); @@ -101,6 +114,13 @@ public void addExtrudedPolygon() { options.setAltitudeMode(AltitudeMode.RELATIVE_TO_GROUND); Polygon polygon = map.addPolygon(options); + // [START_EXCLUDE] + polygon.setClickListener(() -> { + new Handler(Looper.getMainLooper()).post(() -> { + Toast.makeText(context, "Polygon Clicked!", Toast.LENGTH_SHORT).show(); + }); + }); + // [END_EXCLUDE] // [END maps_android_3d_polygon_extruded_java] Camera cam = new Camera(new LatLngAltitude(37.424968, -122.084874, 19.90), 0.0, 45.02, 0.0, 4643.0); @@ -144,6 +164,13 @@ public void addPolygonWithHole() { options.setInnerPaths(Arrays.asList(innerHole)); Polygon polygon = map.addPolygon(options); + // [START_EXCLUDE] + polygon.setClickListener(() -> { + new Handler(Looper.getMainLooper()).post(() -> { + Toast.makeText(context, "Polygon Clicked!", Toast.LENGTH_SHORT).show(); + }); + }); + // [END_EXCLUDE] // [END maps_android_3d_polygon_hole_java] Camera cam = new Camera(new LatLngAltitude(37.423600, -122.085098, 4.31), 0.00, 45.00, 0.00, 1085.51); diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java index c1991474..c613776c 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java @@ -16,7 +16,11 @@ package com.example.snippets.java.snippets; +import android.content.Context; import android.graphics.Color; +import android.os.Handler; +import android.os.Looper; +import android.widget.Toast; import com.example.snippets.java.TrackedMap3D; import com.google.android.gms.maps3d.model.AltitudeMode; import com.google.android.gms.maps3d.model.LatLngAltitude; @@ -35,9 +39,11 @@ ) public class PolylineSnippets { + private final Context context; private final TrackedMap3D map; - public PolylineSnippets(TrackedMap3D map) { + public PolylineSnippets(Context context, TrackedMap3D map) { + this.context = context; this.map = map; } @@ -64,6 +70,13 @@ public void addBasicPolyline() { options.setAltitudeMode(AltitudeMode.CLAMP_TO_GROUND); Polyline polyline = map.addPolyline(options); + // [START_EXCLUDE] + polyline.setClickListener(() -> { + new Handler(Looper.getMainLooper()).post(() -> { + Toast.makeText(context, "Polyline Clicked!", Toast.LENGTH_SHORT).show(); + }); + }); + // [END_EXCLUDE] // [END maps_android_3d_polyline_add_java] Camera camera = new Camera(new LatLngAltitude(37.43, -122.085, 0.0), 0.0, 45.0, 0.0, 5000.0); @@ -98,6 +111,13 @@ public void addStyledPolyline() { options.setDrawsOccludedSegments(true); Polyline polyline = map.addPolyline(options); + // [START_EXCLUDE] + polyline.setClickListener(() -> { + new Handler(Looper.getMainLooper()).post(() -> { + Toast.makeText(context, "Polyline Clicked!", Toast.LENGTH_SHORT).show(); + }); + }); + // [END_EXCLUDE] // [END maps_android_3d_polyline_options_java] Camera camera = new Camera(new LatLngAltitude(37.425, -122.085, 0.0), 0.0, 45.0, 0.0, 4000.0); diff --git a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt index 7a286475..caf3f464 100644 --- a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt +++ b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt @@ -16,6 +16,10 @@ package com.example.snippets.kotlin.snippets +import android.content.Context +import android.os.Handler +import android.os.Looper +import android.widget.Toast import com.example.snippets.kotlin.TrackedMap3D import com.example.snippets.kotlin.annotations.SnippetGroup import com.example.snippets.kotlin.annotations.SnippetItem @@ -31,7 +35,7 @@ import com.google.android.gms.maps3d.model.vector3D title = "Models", description = "Snippets demonstrating 3D Model (GLB) integration and configuration." ) -class ModelSnippets(private val map: TrackedMap3D) { +class ModelSnippets(private val context: Context, private val map: TrackedMap3D) { companion object { const val SAUCER_URL = "https://storage.googleapis.com/gmp-maps-demos/p3d-map/assets/UFO.glb" } @@ -65,6 +69,13 @@ class ModelSnippets(private val map: TrackedMap3D) { } val model = map.addModel(options) + // [START_EXCLUDE] + model?.setClickListener { + Handler(Looper.getMainLooper()).post { + Toast.makeText(context, "Model Clicked!", Toast.LENGTH_SHORT).show() + } + } + // [END_EXCLUDE] // [END maps_android_3d_model_add_kt] // Position the camera to show the model diff --git a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt index 6eb0e3a8..111def79 100644 --- a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt +++ b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt @@ -16,7 +16,11 @@ package com.example.snippets.kotlin.snippets +import android.content.Context import android.graphics.Color +import android.os.Handler +import android.os.Looper +import android.widget.Toast import com.example.snippets.kotlin.TrackedMap3D import com.example.snippets.kotlin.annotations.SnippetGroup import com.example.snippets.kotlin.annotations.SnippetItem @@ -31,7 +35,7 @@ import com.google.android.gms.maps3d.model.polygonOptions title = "Polygons", description = "Snippets demonstrating 2D and 3D extruded polygon layers on the map." ) -class PolygonSnippets(private val map: TrackedMap3D) { +class PolygonSnippets(private val context: Context, private val map: TrackedMap3D) { /** * Adds a simple polygon to the map. @@ -60,6 +64,13 @@ class PolygonSnippets(private val map: TrackedMap3D) { } val polygon = map.addPolygon(options) + // [START_EXCLUDE] + polygon?.setClickListener { + Handler(Looper.getMainLooper()).post { + Toast.makeText(context, "Polygon Clicked!", Toast.LENGTH_SHORT).show() + } + } + // [END_EXCLUDE] // [END maps_android_3d_polygon_add_kt] map.flyCameraTo(flyToOptions { @@ -104,6 +115,13 @@ class PolygonSnippets(private val map: TrackedMap3D) { } val polygon = map.addPolygon(options) + // [START_EXCLUDE] + polygon?.setClickListener { + Handler(Looper.getMainLooper()).post { + Toast.makeText(context, "Polygon Clicked!", Toast.LENGTH_SHORT).show() + } + } + // [END_EXCLUDE] // [END maps_android_3d_polygon_extruded_kt] map.flyCameraTo(flyToOptions { @@ -156,6 +174,13 @@ class PolygonSnippets(private val map: TrackedMap3D) { } val polygon = map.addPolygon(options) + // [START_EXCLUDE] + polygon?.setClickListener { + Handler(Looper.getMainLooper()).post { + Toast.makeText(context, "Polygon Clicked!", Toast.LENGTH_SHORT).show() + } + } + // [END_EXCLUDE] // [END maps_android_3d_polygon_hole_kt] map.flyCameraTo(flyToOptions { diff --git a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt index 0ac6ad6f..7d99c504 100644 --- a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt +++ b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt @@ -16,7 +16,11 @@ package com.example.snippets.kotlin.snippets +import android.content.Context import android.graphics.Color +import android.os.Handler +import android.os.Looper +import android.widget.Toast import com.example.snippets.kotlin.TrackedMap3D import com.example.snippets.kotlin.annotations.SnippetGroup import com.example.snippets.kotlin.annotations.SnippetItem @@ -30,7 +34,7 @@ import com.google.android.gms.maps3d.model.polylineOptions title = "Polylines", description = "Snippets demonstrating 2D and 3D extruded polyline paths on the map." ) -class PolylineSnippets(private val map: TrackedMap3D) { +class PolylineSnippets(private val context: Context, private val map: TrackedMap3D) { /** * Adds a basic polyline to the map. @@ -56,6 +60,13 @@ class PolylineSnippets(private val map: TrackedMap3D) { } val polyline = map.addPolyline(options) + // [START_EXCLUDE] + polyline?.setClickListener { + Handler(Looper.getMainLooper()).post { + Toast.makeText(context, "Polyline Clicked!", Toast.LENGTH_SHORT).show() + } + } + // [END_EXCLUDE] // [END maps_android_3d_polyline_add_kt] map.flyCameraTo(flyToOptions { @@ -101,6 +112,13 @@ class PolylineSnippets(private val map: TrackedMap3D) { } val polyline = map.addPolyline(options) + // [START_EXCLUDE] + polyline?.setClickListener { + Handler(Looper.getMainLooper()).post { + Toast.makeText(context, "Polyline Clicked!", Toast.LENGTH_SHORT).show() + } + } + // [END_EXCLUDE] // [END maps_android_3d_polyline_options_kt] map.flyCameraTo(flyToOptions { From a52876629782edcff099b0c712f337a149c235db Mon Sep 17 00:00:00 2001 From: dkhawk <107309+dkhawk@users.noreply.github.com> Date: Fri, 20 Mar 2026 12:11:34 -0600 Subject: [PATCH 29/36] docs(snippets): Create snippets/README.md and fix DevRel critiques - Created snippets/README.md explaining the decorator architecture. - Appended trace logs inside empty hooks for . - Injected educational warning comment block for CoroutineScope lifecycles setup. - Linked top-level index pointers. --- README.md | 1 + snippets/README.md | 41 +++++++++++++++++++ .../java/snippets/MapInitSnippets.java | 4 +- .../kotlin/snippets/CameraControlSnippets.kt | 10 +++++ .../kotlin/snippets/MapInitSnippets.kt | 4 +- 5 files changed, 58 insertions(+), 2 deletions(-) create mode 100644 snippets/README.md diff --git a/README.md b/README.md index 9d9e97d9..cd813436 100644 --- a/README.md +++ b/README.md @@ -26,6 +26,7 @@ Android Views. It's a great starting point to understand core concepts like map * **[Maps3DSamples/advanced](Maps3DSamples/advanced)**: For developers using Jetpack Compose, this sample demonstrates how to integrate the Maps3D SDK into a declarative UI. It utilizes helper classes to bridge the SDK's View-based SDK with Compose, offering a more modern approach to building UIs with 3D maps. +* **[snippets](snippets)**: A collection of standalone, extraction-ready code snippets demonstrating standard integration endpoints in both Kotlin and Java. Includes a coordinate checklist mapping tracker listed in [CATALOG.md](snippets/CATALOG.md). ## View-based Kotlin Samples diff --git a/snippets/README.md b/snippets/README.md new file mode 100644 index 00000000..10d4bdaa --- /dev/null +++ b/snippets/README.md @@ -0,0 +1,41 @@ +# Maps 3D Android Snippets + +A collection of standalone, extracting-ready code snippets demonstrating standard integration endpoints for the **Google Maps 3D SDK for Android**. + +## 📂 Code Layout + +The snippets are available in both **Kotlin** and **Java** module sets accurately: +- **Kotlin**: [`snippets/kotlin-app`](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets) +- **Java**: [`snippets/java-app`](java-app/src/main/java/com/example/snippets/java/snippets) + +### **Thematic Topics Coverages** +- **`MapInitSnippets`**: Lifecycle initialization listeners and reading steady state intervals. +- **`CameraControlSnippets`**: Orchestrating animations with explicit coordination. +- **`PolygonSnippets` / `PolylineSnippets`**: Managing mesh geometry vector objects overlays. +- **`PopoverSnippets` / `MarkerSnippets`**: Static labels and dynamic 2D frames over 3D coordinates anchor bounds. + +--- + +## 🔬 Architectural Design: The `TrackedMap3D` Decorator + +To maintain clean, lightweight extracted code extracts free from lifecycle clearing boilerplate setups, these snippets wrap `GoogleMap3D` in a **Decorator delegate** called **`TrackedMap3D`**: + +```kotlin +class TrackedMap3D(val delegate: GoogleMap3D, private val items: MutableList) { + fun addMarker(...) { + val marker = delegate.addMarker(...) + if (marker != null) items.add(marker) // Track reference for clearing + return marker + } +} +``` + +### **Why use a Delegate wrapper?** +When the layout detail launcher switches between snippets to preview live inside sample frame interfaces, `SnippetRegistry` clears tracked coordinates references accumulated from previous snippets cleanly to guarantee a fully interactive clean-slate coordinate frame every snapshot launch cycle iteratively. + +--- + +## 📜 Complete API Index Catalog +For a detailed breakdown of EXACTLY which native class functions or parameters are covered inside these extracted instruction extracts, refer to the fully indexed checklist summary: + +👉 **[`CATALOG.md`](CATALOG.md)** diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java index 0835e8ad..bf90d5c5 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java @@ -16,6 +16,7 @@ package com.example.snippets.java.snippets; +import android.util.Log; import android.content.Context; import androidx.annotation.NonNull; import com.google.android.gms.maps3d.GoogleMap3D; @@ -56,7 +57,8 @@ public void onMap3DViewReady(@NonNull GoogleMap3D googleMap3D) { @Override public void onError(@NonNull Exception e) { - // Handle initialization error + // Log the exception to guide developers debugging layout mismatches + Log.e("MapInitSnippets", "Failed to initialize 3D Map: " + e.getMessage(), e); } }); // [END maps_android_3d_init_basic_java] diff --git a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt index 132b46c9..16230902 100644 --- a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt +++ b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt @@ -35,6 +35,16 @@ import kotlin.time.Duration.Companion.seconds title = "Camera", description = "Snippets demonstrating dynamic camera orchestration and animations." ) +/** + * Snippets demonstrating dynamic camera orchestration and animations. + * + * @property map The tracked map delegate wrapper. + * @property lifecycleScope The scope managing asynchronous animations duration cycles. + * + * NOTE: While passing a bare CoroutineScope is straightforward for snippets runner contexts, + * in production, bounding animation jobs to lifecycle-aware components (like Views, Fragments, + * or ViewModel `viewModelScope` triggers) prevents memory leaks and guarantees safe cancellation. + */ class CameraControlSnippets( private val map: TrackedMap3D, private val lifecycleScope: kotlinx.coroutines.CoroutineScope diff --git a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt index 94b4dff1..a7794023 100644 --- a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt +++ b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt @@ -16,6 +16,7 @@ package com.example.snippets.kotlin.snippets +import android.util.Log import androidx.compose.foundation.layout.fillMaxSize import android.content.Context import android.os.Handler @@ -71,7 +72,8 @@ class MapInitSnippets { googleMap3D.setCamera(camera) } override fun onError(error: Exception) { - // Handle initialization error + // Log exception trace guiding developers to key deficits or mismatches + Log.e("MapInitSnippets", "Failed to initialize 3D Map: ${error.message}", error) } }) } From 7c78727def149982da775e8b7ec24c280f15dbdb Mon Sep 17 00:00:00 2001 From: dkhawk <107309+dkhawk@users.noreply.github.com> Date: Fri, 20 Mar 2026 12:47:12 -0600 Subject: [PATCH 30/36] tooling(snippets): Format catalog links pointing to region tag ranges - Updated to map line items back to exact region start-end bounds. - Link generations now use ranges enabling perfect GitHub coordinate views. --- snippets/CATALOG.md | 1017 ++++++++++++++----------------- snippets/scripts/catalog_api.py | 59 +- 2 files changed, 504 insertions(+), 572 deletions(-) diff --git a/snippets/CATALOG.md b/snippets/CATALOG.md index a9dd45bd..044f7576 100644 --- a/snippets/CATALOG.md +++ b/snippets/CATALOG.md @@ -12,73 +12,73 @@ This section maps high-level concepts (groups) to specific demonstration files a - **1. Fly To**: - *Description*: Animates the camera to a specific position with a tilt and heading over 5 seconds. - **Kotlin** - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:47](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L47) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L62-L81) - Tag: `maps_android_3d_camera_fly_to_kt` - **Java** - - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:50](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L50) + - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L45-L64) - Tag: `maps_android_3d_camera_fly_to_java` - **2. Fly Around**: - *Description*: Rotates the camera 360 degrees around a specific location over 10 seconds. - **Kotlin** - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:78](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L78) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L93-L125) - Tag: `maps_android_3d_camera_fly_around_kt` - **Java** - - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:70](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L70) + - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L75-L94) - Tag: `maps_android_3d_camera_fly_around_java` - **3. Stop Animation**: - *Description*: Stops any currently running camera animation immediately. - **Kotlin** - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:122](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L122) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L137-L176) - Tag: `maps_android_3d_camera_stop_kt` - **Java** - - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:101](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L101) + - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L106-L115) - Tag: `maps_android_3d_camera_stop_java` - **4. Listen Camera Events**: - *Description*: Logs camera change events to the console, printing the center coordinates as the camera moves. - **Kotlin** - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:173](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L173) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L188-L202) - Tag: `maps_android_3d_camera_events_kt` - **Java** - - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:123](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L123) + - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L128-L147) - Tag: `maps_android_3d_camera_events_java` - **5. Listen Steady State**: - *Description*: Logs to the console when the map finishes rendering or enters a steady state. - **Kotlin** - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:204](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L204) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L219-L223) - Tag: `maps_android_3d_camera_steady_kt` - **Java** - - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:154](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L154) + - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L159-L163) - Tag: `maps_android_3d_camera_steady_java` - **6. Camera Restriction**: - *Description*: Restricts the camera to a specific altitude range and bounding box. - **Kotlin** - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:220](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L220) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L235-L259) - Tag: `maps_android_3d_camera_restriction_kt` - **Java** - - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:170](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L170) - - Tag: `maps_android_3d_camera_steady_java` + - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L184-L194) + - Tag: `maps_android_3d_camera_restriction_java` ### Map Initialization > Snippets demonstrating map lifecycle, listeners and readiness states. - **1. Listen Events**: - **Kotlin** - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:87](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L87) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L94-L114) - Tag: `maps_android_3d_init_listeners_kt` - **1. Basic Map3D Initialization**: - *Description*: Initializes a standard 3D Map View and sets an initial camera angle. - **Java** - - [java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java:38](java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java#L38) + - [java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java#L45-L64) - Tag: `maps_android_3d_init_basic_java` - **2. Add Map to AndroidView**: - *Description*: Shows how to add a Map3DView to an AndroidView which bridges to Jetpack Compose. - **Kotlin** - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:48](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L48) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L42-L83) - Tag: `maps_android_3d_init_basic_kt` - **2. Listen Map Events**: - *Description*: Logs map events to the console, such as clicks or idle status. - **Java** - - [java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java:69](java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java#L69) + - [java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java#L73-L97) - Tag: `maps_android_3d_init_listeners_java` ### Markers @@ -87,78 +87,78 @@ This section maps high-level concepts (groups) to specific demonstration files a - **1. Basic**: - *Description*: Adds a standard marker. - **Kotlin** - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:48](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L48) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L53-L82) - Tag: `maps_android_3d_marker_add_kt` - **Java** - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:59](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L59) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L64-L81) - Tag: `maps_android_3d_marker_add_java` - **2. Advanced**: - *Description*: Adds a 'Priority Marker' that is extruded and collides with other markers. - **Kotlin** - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:89](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L89) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L94-L124) - Tag: `maps_android_3d_marker_options_kt` - **Java** - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:88](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L88) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L93-L113) - Tag: `maps_android_3d_marker_options_java` - **3. Click**: - *Description*: Adds a marker that logs a message when clicked. - **Kotlin** - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:131](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L131) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L136-L166) - Tag: `maps_android_3d_marker_click_kt` - **Java** - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:120](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L120) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L125-L147) - Tag: `maps_android_3d_marker_click_java` - **4. Custom Icon**: - *Description*: Adds a marker with a custom icon using PinConfiguration and Glyph styling. - **Kotlin** - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:173](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L173) - - Tag: `maps_android_3d_marker_custom_icon_kt` + - Tag: `No Tag` - **Java** - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:154](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L154) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L159-L189) - Tag: `maps_android_3d_marker_custom_icon_java` - **5. Color Glyph**: - *Description*: Adds a marker with a customized glyph color. - **Kotlin** - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:222](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L222) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L227-L255) - Tag: `maps_android_3d_marker_glyph_color_kt` - **Java** - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:196](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L196) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L201-L220) - Tag: `maps_android_3d_marker_glyph_color_java` - **6. Text Glyph**: - *Description*: Adds a marker with text inside the glyph. - **Kotlin** - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:262](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L262) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L267-L295) - Tag: `maps_android_3d_marker_glyph_text_kt` - **Java** - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:227](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L227) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L232-L251) - Tag: `maps_android_3d_marker_glyph_text_java` - **7. Circle Glyph**: - *Description*: Adds a marker with a default circle glyph. - **Kotlin** - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:302](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L302) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L307-L338) - Tag: `maps_android_3d_marker_glyph_circle_kt` - **Java** - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:258](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L258) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L263-L285) - Tag: `maps_android_3d_marker_glyph_circle_java` ### Models - **1. Basic**: - *Description*: Loads a GLB model from a URL and places it clamped to the ground. - **Kotlin** - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:47](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L47) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L52-L79) - Tag: `maps_android_3d_model_add_kt` - **Java** - - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java:55](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L55) + - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L60-L78) - Tag: `maps_android_3d_model_add_java` ### Places - **1. Listen Clicks**: - *Description*: Sets up a listener that logs the Place ID when a user clicks on a 3D building or POI. - **Kotlin** - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:39](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L39) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L44-L53) - Tag: `maps_android_3d_place_click_kt` - **Java** - - [java-app/src/main/java/com/example/snippets/java/snippets/PlaceSnippets.java:51](java-app/src/main/java/com/example/snippets/java/snippets/PlaceSnippets.java#L51) + - [java-app/src/main/java/com/example/snippets/java/snippets/PlaceSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PlaceSnippets.java#L56-L68) - Tag: `maps_android_3d_place_click_java` ### Polygons @@ -167,25 +167,25 @@ This section maps high-level concepts (groups) to specific demonstration files a - **1. Basic**: - *Description*: Draws a red polygon with a blue stroke around a small area - **Kotlin** - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:44](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L44) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L49-L74) - Tag: `maps_android_3d_polygon_add_kt` - **Java** - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:55](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L55) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L60-L84) - Tag: `maps_android_3d_polygon_add_java` - **2. Extruded**: - **Kotlin** - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:95](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L95) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L100-L125) - Tag: `maps_android_3d_polygon_extruded_kt` - **Java** - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:95](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L95) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L100-L124) - Tag: `maps_android_3d_polygon_extruded_java` - **3. Polygon with Hole**: - *Description*: Draws a polygon with an interior hole cutout. - **Kotlin** - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:146](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L146) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L151-L184) - Tag: `maps_android_3d_polygon_hole_kt` - **Java** - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:135](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L135) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L140-L174) - Tag: `maps_android_3d_polygon_hole_java` ### Polylines @@ -194,17 +194,17 @@ This section maps high-level concepts (groups) to specific demonstration files a - **1. Basic**: - *Description*: Draws a thick red polyline connecting three points - **Kotlin** - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:43](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L43) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L48-L70) - Tag: `maps_android_3d_polyline_add_kt` - **Java** - - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:54](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L54) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L59-L80) - Tag: `maps_android_3d_polyline_add_java` - **2. Styled**: - **Kotlin** - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:91](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L91) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L96-L122) - Tag: `maps_android_3d_polyline_options_kt` - **Java** - - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:91](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L91) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L96-L121) - Tag: `maps_android_3d_polyline_options_java` ### Popovers @@ -213,18 +213,18 @@ This section maps high-level concepts (groups) to specific demonstration files a - **1. Marker Anchor**: - *Description*: Adds a 'Hello Popover!' text bubble anchored to a marker - **Kotlin** - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:43](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L43) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L48-L73) - Tag: `maps_android_3d_popover_add_kt` - **Java** - - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:53](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L53) + - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L58-L82) - Tag: `maps_android_3d_popover_add_java` - **2. Configured**: - *Description*: Adds an 'Info' popover anchored to a marker with auto-close enabled and auto-pan disabled. - **Kotlin** - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:90](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L90) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L95-L118) - Tag: `maps_android_3d_popover_options_kt` - **Java** - - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:89](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L89) + - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L94-L118) - Tag: `maps_android_3d_popover_options_java` @@ -238,21 +238,21 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d ### `Camera` - `getCenter`: - [MapActivity.kt:58](MapActivity.kt#L58) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:185](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L185) (Tag: `maps_android_3d_camera_events_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L188-L202) (Tag: `maps_android_3d_camera_events_kt`) - `setCenter`: - [MapActivity.kt:191](MapActivity.kt#L191) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:130](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L130) (Tag: `maps_android_3d_camera_stop_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:228](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L228) (Tag: `maps_android_3d_camera_restriction_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:54](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L54) (Tag: `maps_android_3d_camera_fly_to_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:86](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L86) (Tag: `maps_android_3d_camera_fly_around_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:61](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L61) (Tag: `maps_android_3d_init_basic_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:112](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L112) (Tag: `maps_android_3d_marker_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:147](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L147) (Tag: `maps_android_3d_marker_click_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L137-L176) (Tag: `maps_android_3d_camera_stop_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L235-L259) (Tag: `maps_android_3d_camera_restriction_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L62-L81) (Tag: `maps_android_3d_camera_fly_to_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L93-L125) (Tag: `maps_android_3d_camera_fly_around_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L42-L83) (Tag: `maps_android_3d_init_basic_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:204](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L204) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:243](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L243) (Tag: `maps_android_3d_marker_glyph_color_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:283](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L283) (Tag: `maps_android_3d_marker_glyph_text_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:326](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L326) (Tag: `maps_android_3d_marker_glyph_circle_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:70](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L70) (Tag: `maps_android_3d_marker_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L136-L166) (Tag: `maps_android_3d_marker_click_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L227-L255) (Tag: `maps_android_3d_marker_glyph_color_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L267-L295) (Tag: `maps_android_3d_marker_glyph_text_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L307-L338) (Tag: `maps_android_3d_marker_glyph_circle_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L53-L82) (Tag: `maps_android_3d_marker_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L94-L124) (Tag: `maps_android_3d_marker_options_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:84](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L84) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:58](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L58) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:129](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L129) (Tag: `No Tag`) @@ -264,17 +264,17 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:77](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L77) (Tag: `No Tag`) - `setHeading`: - [MapActivity.kt:197](MapActivity.kt#L197) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:136](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L136) (Tag: `maps_android_3d_camera_stop_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:60](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L60) (Tag: `maps_android_3d_camera_fly_to_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:92](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L92) (Tag: `maps_android_3d_camera_fly_around_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:66](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L66) (Tag: `maps_android_3d_init_basic_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:118](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L118) (Tag: `maps_android_3d_marker_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:153](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L153) (Tag: `maps_android_3d_marker_click_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L137-L176) (Tag: `maps_android_3d_camera_stop_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L62-L81) (Tag: `maps_android_3d_camera_fly_to_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L93-L125) (Tag: `maps_android_3d_camera_fly_around_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L42-L83) (Tag: `maps_android_3d_init_basic_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:210](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L210) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:249](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L249) (Tag: `maps_android_3d_marker_glyph_color_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:289](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L289) (Tag: `maps_android_3d_marker_glyph_text_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:332](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L332) (Tag: `maps_android_3d_marker_glyph_circle_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:76](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L76) (Tag: `maps_android_3d_marker_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L136-L166) (Tag: `maps_android_3d_marker_click_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L227-L255) (Tag: `maps_android_3d_marker_glyph_color_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L267-L295) (Tag: `maps_android_3d_marker_glyph_text_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L307-L338) (Tag: `maps_android_3d_marker_glyph_circle_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L53-L82) (Tag: `maps_android_3d_marker_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L94-L124) (Tag: `maps_android_3d_marker_options_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:86](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L86) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:60](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L60) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:135](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L135) (Tag: `No Tag`) @@ -286,17 +286,17 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:79](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L79) (Tag: `No Tag`) - `setRange`: - [MapActivity.kt:198](MapActivity.kt#L198) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:137](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L137) (Tag: `maps_android_3d_camera_stop_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:61](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L61) (Tag: `maps_android_3d_camera_fly_to_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:93](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L93) (Tag: `maps_android_3d_camera_fly_around_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:69](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L69) (Tag: `maps_android_3d_init_basic_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:119](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L119) (Tag: `maps_android_3d_marker_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:154](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L154) (Tag: `maps_android_3d_marker_click_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L137-L176) (Tag: `maps_android_3d_camera_stop_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L62-L81) (Tag: `maps_android_3d_camera_fly_to_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L93-L125) (Tag: `maps_android_3d_camera_fly_around_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L42-L83) (Tag: `maps_android_3d_init_basic_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:211](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L211) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:250](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L250) (Tag: `maps_android_3d_marker_glyph_color_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:290](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L290) (Tag: `maps_android_3d_marker_glyph_text_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:333](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L333) (Tag: `maps_android_3d_marker_glyph_circle_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:77](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L77) (Tag: `maps_android_3d_marker_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L136-L166) (Tag: `maps_android_3d_marker_click_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L227-L255) (Tag: `maps_android_3d_marker_glyph_color_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L267-L295) (Tag: `maps_android_3d_marker_glyph_text_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L307-L338) (Tag: `maps_android_3d_marker_glyph_circle_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L53-L82) (Tag: `maps_android_3d_marker_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L94-L124) (Tag: `maps_android_3d_marker_options_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:87](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L87) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:61](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L61) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:136](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L136) (Tag: `No Tag`) @@ -307,24 +307,24 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:125](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L125) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:80](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L80) (Tag: `No Tag`) - `setRoll`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:138](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L138) (Tag: `maps_android_3d_camera_stop_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:62](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L62) (Tag: `maps_android_3d_camera_fly_to_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:94](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L94) (Tag: `maps_android_3d_camera_fly_around_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:68](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L68) (Tag: `maps_android_3d_init_basic_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L137-L176) (Tag: `maps_android_3d_camera_stop_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L62-L81) (Tag: `maps_android_3d_camera_fly_to_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L93-L125) (Tag: `maps_android_3d_camera_fly_around_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L42-L83) (Tag: `maps_android_3d_init_basic_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:189](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L189) (Tag: `No Tag`) - `setTilt`: - [MapActivity.kt:196](MapActivity.kt#L196) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:135](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L135) (Tag: `maps_android_3d_camera_stop_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:59](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L59) (Tag: `maps_android_3d_camera_fly_to_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:91](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L91) (Tag: `maps_android_3d_camera_fly_around_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:67](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L67) (Tag: `maps_android_3d_init_basic_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:117](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L117) (Tag: `maps_android_3d_marker_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:152](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L152) (Tag: `maps_android_3d_marker_click_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L137-L176) (Tag: `maps_android_3d_camera_stop_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L62-L81) (Tag: `maps_android_3d_camera_fly_to_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L93-L125) (Tag: `maps_android_3d_camera_fly_around_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L42-L83) (Tag: `maps_android_3d_init_basic_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:209](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L209) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:248](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L248) (Tag: `maps_android_3d_marker_glyph_color_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:288](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L288) (Tag: `maps_android_3d_marker_glyph_text_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:331](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L331) (Tag: `maps_android_3d_marker_glyph_circle_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:75](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L75) (Tag: `maps_android_3d_marker_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L136-L166) (Tag: `maps_android_3d_marker_click_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L227-L255) (Tag: `maps_android_3d_marker_glyph_color_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L267-L295) (Tag: `maps_android_3d_marker_glyph_text_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L307-L338) (Tag: `maps_android_3d_marker_glyph_circle_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L53-L82) (Tag: `maps_android_3d_marker_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L94-L124) (Tag: `maps_android_3d_marker_options_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:85](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L85) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:59](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L59) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:134](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L134) (Tag: `No Tag`) @@ -338,13 +338,13 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d ### `CameraRestriction` - `setBounds`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:245](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L245) (Tag: `maps_android_3d_camera_restriction_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L235-L259) (Tag: `maps_android_3d_camera_restriction_kt`) - `setMaxAltitude`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:244](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L244) (Tag: `maps_android_3d_camera_restriction_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L235-L259) (Tag: `maps_android_3d_camera_restriction_kt`) - `setMaxHeading`: ❌ No coverage - `setMaxTilt`: ❌ No coverage - `setMinAltitude`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:243](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L243) (Tag: `maps_android_3d_camera_restriction_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L235-L259) (Tag: `maps_android_3d_camera_restriction_kt`) - `setMinHeading`: ❌ No coverage - `setMinTilt`: ❌ No coverage - `writeToParcel`: ❌ No coverage @@ -354,14 +354,14 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - `getDurationInMillis`: ❌ No coverage - `getRounds`: ❌ No coverage - `setCenter`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:103](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L103) (Tag: `maps_android_3d_camera_fly_around_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:155](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L155) (Tag: `maps_android_3d_camera_stop_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L137-L176) (Tag: `maps_android_3d_camera_stop_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L93-L125) (Tag: `maps_android_3d_camera_fly_around_kt`) - `setDurationInMillis`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:105](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L105) (Tag: `maps_android_3d_camera_fly_around_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:157](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L157) (Tag: `maps_android_3d_camera_stop_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L137-L176) (Tag: `maps_android_3d_camera_stop_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L93-L125) (Tag: `maps_android_3d_camera_fly_around_kt`) - `setRounds`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:104](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L104) (Tag: `maps_android_3d_camera_fly_around_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:156](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L156) (Tag: `maps_android_3d_camera_stop_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L137-L176) (Tag: `maps_android_3d_camera_stop_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L93-L125) (Tag: `maps_android_3d_camera_fly_around_kt`) - `writeToParcel`: ❌ No coverage ### `FlyToOptions` @@ -369,15 +369,15 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - `getEndCamera`: ❌ No coverage - `setDurationInMillis`: - [MapActivity.kt:202](MapActivity.kt#L202) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:144](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L144) (Tag: `maps_android_3d_camera_stop_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:67](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L67) (Tag: `maps_android_3d_camera_fly_to_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:121](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L121) (Tag: `maps_android_3d_marker_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:156](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L156) (Tag: `maps_android_3d_marker_click_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L137-L176) (Tag: `maps_android_3d_camera_stop_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L62-L81) (Tag: `maps_android_3d_camera_fly_to_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:213](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L213) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:252](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L252) (Tag: `maps_android_3d_marker_glyph_color_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:292](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L292) (Tag: `maps_android_3d_marker_glyph_text_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:335](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L335) (Tag: `maps_android_3d_marker_glyph_circle_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:79](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L79) (Tag: `maps_android_3d_marker_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L136-L166) (Tag: `maps_android_3d_marker_click_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L227-L255) (Tag: `maps_android_3d_marker_glyph_color_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L267-L295) (Tag: `maps_android_3d_marker_glyph_text_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L307-L338) (Tag: `maps_android_3d_marker_glyph_circle_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L53-L82) (Tag: `maps_android_3d_marker_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L94-L124) (Tag: `maps_android_3d_marker_options_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:89](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L89) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:63](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L63) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:138](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L138) (Tag: `No Tag`) @@ -389,15 +389,15 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:82](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L82) (Tag: `No Tag`) - `setEndCamera`: - [MapActivity.kt:201](MapActivity.kt#L201) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:143](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L143) (Tag: `maps_android_3d_camera_stop_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:66](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L66) (Tag: `maps_android_3d_camera_fly_to_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:111](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L111) (Tag: `maps_android_3d_marker_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:146](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L146) (Tag: `maps_android_3d_marker_click_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L137-L176) (Tag: `maps_android_3d_camera_stop_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L62-L81) (Tag: `maps_android_3d_camera_fly_to_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:203](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L203) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:242](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L242) (Tag: `maps_android_3d_marker_glyph_color_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:282](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L282) (Tag: `maps_android_3d_marker_glyph_text_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:325](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L325) (Tag: `maps_android_3d_marker_glyph_circle_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:69](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L69) (Tag: `maps_android_3d_marker_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L136-L166) (Tag: `maps_android_3d_marker_click_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L227-L255) (Tag: `maps_android_3d_marker_glyph_color_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L267-L295) (Tag: `maps_android_3d_marker_glyph_text_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L307-L338) (Tag: `maps_android_3d_marker_glyph_circle_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L53-L82) (Tag: `maps_android_3d_marker_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L94-L124) (Tag: `maps_android_3d_marker_options_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:83](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L83) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:57](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L57) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:128](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L128) (Tag: `No Tag`) @@ -412,18 +412,18 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d ### `Glyph` - `equals`: ❌ No coverage - `fromCircle`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:308](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L308) (Tag: `maps_android_3d_marker_glyph_circle_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L307-L338) (Tag: `maps_android_3d_marker_glyph_circle_kt`) - `fromColor`: - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:180](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L180) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:236](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L236) (Tag: `maps_android_3d_marker_glyph_color_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L227-L255) (Tag: `maps_android_3d_marker_glyph_color_kt`) - `fromText`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:276](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L276) (Tag: `maps_android_3d_marker_glyph_text_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L267-L295) (Tag: `maps_android_3d_marker_glyph_text_kt`) - `getColor`: ❌ No coverage - `getImage`: ❌ No coverage - `getText`: ❌ No coverage - `hashCode`: ❌ No coverage - `setColor`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:309](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L309) (Tag: `maps_android_3d_marker_glyph_circle_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L307-L338) (Tag: `maps_android_3d_marker_glyph_circle_kt`) - `setImage`: - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:182](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L182) (Tag: `No Tag`) - `setText`: ❌ No coverage @@ -432,47 +432,47 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d ### `GoogleMap3D` - `addMarker`: - [TrackedMap3D.kt:31](TrackedMap3D.kt#L31) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:108](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L108) (Tag: `maps_android_3d_marker_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:137](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L137) (Tag: `maps_android_3d_marker_click_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:200](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L200) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:239](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L239) (Tag: `maps_android_3d_marker_glyph_color_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:279](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L279) (Tag: `maps_android_3d_marker_glyph_text_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:322](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L322) (Tag: `maps_android_3d_marker_glyph_circle_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:66](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L66) (Tag: `maps_android_3d_marker_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:101](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L101) (Tag: `maps_android_3d_popover_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:53](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L53) (Tag: `maps_android_3d_popover_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L136-L166) (Tag: `maps_android_3d_marker_click_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L227-L255) (Tag: `maps_android_3d_marker_glyph_color_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L267-L295) (Tag: `maps_android_3d_marker_glyph_text_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L307-L338) (Tag: `maps_android_3d_marker_glyph_circle_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L53-L82) (Tag: `maps_android_3d_marker_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L94-L124) (Tag: `maps_android_3d_marker_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L48-L73) (Tag: `maps_android_3d_popover_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L95-L118) (Tag: `maps_android_3d_popover_options_kt`) - `addModel`: - [TrackedMap3D.kt:49](TrackedMap3D.kt#L49) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:71](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L71) (Tag: `maps_android_3d_model_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L52-L79) (Tag: `maps_android_3d_model_add_kt`) - `addPolygon`: - [TrackedMap3D.kt:43](TrackedMap3D.kt#L43) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:117](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L117) (Tag: `maps_android_3d_polygon_extruded_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:176](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L176) (Tag: `maps_android_3d_polygon_hole_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:66](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L66) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L100-L125) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L151-L184) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L49-L74) (Tag: `maps_android_3d_polygon_add_kt`) - `addPolyline`: - [TrackedMap3D.kt:37](TrackedMap3D.kt#L37) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:114](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L114) (Tag: `maps_android_3d_polyline_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:62](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L62) (Tag: `maps_android_3d_polyline_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L48-L70) (Tag: `maps_android_3d_polyline_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L96-L122) (Tag: `maps_android_3d_polyline_options_kt`) - `addPopover`: - [TrackedMap3D.kt:55](TrackedMap3D.kt#L55) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:116](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L116) (Tag: `maps_android_3d_popover_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:69](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L69) (Tag: `maps_android_3d_popover_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L48-L73) (Tag: `maps_android_3d_popover_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L95-L118) (Tag: `maps_android_3d_popover_options_kt`) - `flyCameraAround`: - [TrackedMap3D.kt:68](TrackedMap3D.kt#L68) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:111](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L111) (Tag: `maps_android_3d_camera_fly_around_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:154](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L154) (Tag: `maps_android_3d_camera_stop_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L137-L176) (Tag: `maps_android_3d_camera_stop_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L93-L125) (Tag: `maps_android_3d_camera_fly_around_kt`) - `flyCameraTo`: - [MapActivity.kt:200](MapActivity.kt#L200) (Tag: `No Tag`) - [TrackedMap3D.kt:67](TrackedMap3D.kt#L67) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:148](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L148) (Tag: `maps_android_3d_camera_stop_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:70](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L70) (Tag: `maps_android_3d_camera_fly_to_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:110](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L110) (Tag: `maps_android_3d_marker_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:145](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L145) (Tag: `maps_android_3d_marker_click_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L137-L176) (Tag: `maps_android_3d_camera_stop_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L62-L81) (Tag: `maps_android_3d_camera_fly_to_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:202](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L202) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:241](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L241) (Tag: `maps_android_3d_marker_glyph_color_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:281](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L281) (Tag: `maps_android_3d_marker_glyph_text_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:324](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L324) (Tag: `maps_android_3d_marker_glyph_circle_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:68](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L68) (Tag: `maps_android_3d_marker_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L136-L166) (Tag: `maps_android_3d_marker_click_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L227-L255) (Tag: `maps_android_3d_marker_glyph_color_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L267-L295) (Tag: `maps_android_3d_marker_glyph_text_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L307-L338) (Tag: `maps_android_3d_marker_glyph_circle_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L53-L82) (Tag: `maps_android_3d_marker_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L94-L124) (Tag: `maps_android_3d_marker_options_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:82](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L82) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:56](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L56) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:127](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L127) (Tag: `No Tag`) @@ -490,40 +490,39 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - `getMapMode`: ❌ No coverage - `setCamera`: - [TrackedMap3D.kt:60](TrackedMap3D.kt#L60) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:227](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L227) (Tag: `maps_android_3d_camera_restriction_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:99](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L99) (Tag: `maps_android_3d_camera_fly_around_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:71](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L71) (Tag: `maps_android_3d_init_basic_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L235-L259) (Tag: `maps_android_3d_camera_restriction_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L93-L125) (Tag: `maps_android_3d_camera_fly_around_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L42-L83) (Tag: `maps_android_3d_init_basic_kt`) - `setCameraAnimationEndListener`: - [MapExtensions.kt:19](MapExtensions.kt#L19) (Tag: `No Tag`) - [MapExtensions.kt:20](MapExtensions.kt#L20) (Tag: `No Tag`) - [MapExtensions.kt:27](MapExtensions.kt#L27) (Tag: `No Tag`) - `setCameraChangedListener`: - [TrackedMap3D.kt:61](TrackedMap3D.kt#L61) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:180](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L180) (Tag: `maps_android_3d_camera_events_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:196](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L196) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:206](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L206) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L188-L202) (Tag: `maps_android_3d_camera_events_kt`) - `setCameraRestriction`: - [TrackedMap3D.kt:71](TrackedMap3D.kt#L71) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:248](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L248) (Tag: `maps_android_3d_camera_restriction_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L235-L259) (Tag: `maps_android_3d_camera_restriction_kt`) - `setMap3DClickListener`: - [TrackedMap3D.kt:62](TrackedMap3D.kt#L62) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:45](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L45) (Tag: `maps_android_3d_place_click_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L44-L53) (Tag: `maps_android_3d_place_click_kt`) - `setMapMode`: ❌ No coverage - `setOnMapReadyListener`: - [MapActivity.kt:127](MapActivity.kt#L127) (Tag: `No Tag`) - [TrackedMap3D.kt:69](TrackedMap3D.kt#L69) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:95](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L95) (Tag: `maps_android_3d_init_listeners_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L94-L114) (Tag: `maps_android_3d_init_listeners_kt`) - `setOnMapSteadyListener`: - [MapExtensions.kt:40](MapExtensions.kt#L40) (Tag: `No Tag`) - [MapExtensions.kt:42](MapExtensions.kt#L42) (Tag: `No Tag`) - [MapExtensions.kt:51](MapExtensions.kt#L51) (Tag: `No Tag`) - [TrackedMap3D.kt:70](TrackedMap3D.kt#L70) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:108](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L108) (Tag: `maps_android_3d_camera_fly_around_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:110](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L110) (Tag: `maps_android_3d_camera_fly_around_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:210](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L210) (Tag: `maps_android_3d_camera_steady_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:104](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L104) (Tag: `maps_android_3d_init_listeners_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L219-L223) (Tag: `maps_android_3d_camera_steady_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L93-L125) (Tag: `maps_android_3d_camera_fly_around_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L94-L114) (Tag: `maps_android_3d_init_listeners_kt`) - `stopCameraAnimation`: - [TrackedMap3D.kt:66](TrackedMap3D.kt#L66) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:162](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L162) (Tag: `maps_android_3d_camera_stop_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L137-L176) (Tag: `maps_android_3d_camera_stop_kt`) ### `Hole` - `getVertices`: ❌ No coverage @@ -542,192 +541,114 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - [MapActivity.kt:73](MapActivity.kt#L73) (Tag: `No Tag`) - `getLatitude`: - [MapActivity.kt:71](MapActivity.kt#L71) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:113](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L113) (Tag: `maps_android_3d_marker_options_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:205](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L205) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:244](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L244) (Tag: `maps_android_3d_marker_glyph_color_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:284](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L284) (Tag: `maps_android_3d_marker_glyph_text_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:327](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L327) (Tag: `maps_android_3d_marker_glyph_circle_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:71](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L71) (Tag: `maps_android_3d_marker_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L227-L255) (Tag: `maps_android_3d_marker_glyph_color_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L267-L295) (Tag: `maps_android_3d_marker_glyph_text_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L307-L338) (Tag: `maps_android_3d_marker_glyph_circle_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L53-L82) (Tag: `maps_android_3d_marker_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L94-L124) (Tag: `maps_android_3d_marker_options_kt`) - `getLongitude`: - [MapActivity.kt:72](MapActivity.kt#L72) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:114](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L114) (Tag: `maps_android_3d_marker_options_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:206](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L206) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:245](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L245) (Tag: `maps_android_3d_marker_glyph_color_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:285](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L285) (Tag: `maps_android_3d_marker_glyph_text_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:328](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L328) (Tag: `maps_android_3d_marker_glyph_circle_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:72](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L72) (Tag: `maps_android_3d_marker_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L227-L255) (Tag: `maps_android_3d_marker_glyph_color_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L267-L295) (Tag: `maps_android_3d_marker_glyph_text_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L307-L338) (Tag: `maps_android_3d_marker_glyph_circle_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L53-L82) (Tag: `maps_android_3d_marker_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L94-L124) (Tag: `maps_android_3d_marker_options_kt`) - `getPosition`: ❌ No coverage - `setAltitude`: - [MapActivity.kt:194](MapActivity.kt#L194) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:133](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L133) (Tag: `maps_android_3d_camera_stop_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:231](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L231) (Tag: `maps_android_3d_camera_restriction_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:57](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L57) (Tag: `maps_android_3d_camera_fly_to_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:89](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L89) (Tag: `maps_android_3d_camera_fly_around_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:64](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L64) (Tag: `maps_android_3d_init_basic_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:115](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L115) (Tag: `maps_android_3d_marker_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:141](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L141) (Tag: `maps_android_3d_marker_click_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:150](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L150) (Tag: `maps_android_3d_marker_click_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L137-L176) (Tag: `maps_android_3d_camera_stop_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L235-L259) (Tag: `maps_android_3d_camera_restriction_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L62-L81) (Tag: `maps_android_3d_camera_fly_to_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L93-L125) (Tag: `maps_android_3d_camera_fly_around_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L42-L83) (Tag: `maps_android_3d_init_basic_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:188](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L188) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:207](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L207) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:232](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L232) (Tag: `maps_android_3d_marker_glyph_color_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:246](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L246) (Tag: `maps_android_3d_marker_glyph_color_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:272](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L272) (Tag: `maps_android_3d_marker_glyph_text_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:286](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L286) (Tag: `maps_android_3d_marker_glyph_text_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:315](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L315) (Tag: `maps_android_3d_marker_glyph_circle_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:329](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L329) (Tag: `maps_android_3d_marker_glyph_circle_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:57](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L57) (Tag: `maps_android_3d_marker_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:73](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L73) (Tag: `maps_android_3d_marker_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:99](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L99) (Tag: `maps_android_3d_marker_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:56](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L56) (Tag: `maps_android_3d_model_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L136-L166) (Tag: `maps_android_3d_marker_click_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L227-L255) (Tag: `maps_android_3d_marker_glyph_color_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L267-L295) (Tag: `maps_android_3d_marker_glyph_text_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L307-L338) (Tag: `maps_android_3d_marker_glyph_circle_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L53-L82) (Tag: `maps_android_3d_marker_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L94-L124) (Tag: `maps_android_3d_marker_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L52-L79) (Tag: `maps_android_3d_model_add_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:58](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L58) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:102](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L102) (Tag: `maps_android_3d_polygon_extruded_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:103](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L103) (Tag: `maps_android_3d_polygon_extruded_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:104](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L104) (Tag: `maps_android_3d_polygon_extruded_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:105](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L105) (Tag: `maps_android_3d_polygon_extruded_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:106](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L106) (Tag: `maps_android_3d_polygon_extruded_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:132](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L132) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:153](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L153) (Tag: `maps_android_3d_polygon_hole_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:154](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L154) (Tag: `maps_android_3d_polygon_hole_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:155](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L155) (Tag: `maps_android_3d_polygon_hole_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:156](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L156) (Tag: `maps_android_3d_polygon_hole_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:157](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L157) (Tag: `maps_android_3d_polygon_hole_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:161](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L161) (Tag: `maps_android_3d_polygon_hole_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:162](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L162) (Tag: `maps_android_3d_polygon_hole_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:163](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L163) (Tag: `maps_android_3d_polygon_hole_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:164](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L164) (Tag: `maps_android_3d_polygon_hole_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:165](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L165) (Tag: `maps_android_3d_polygon_hole_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:188](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L188) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:51](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L51) (Tag: `maps_android_3d_polygon_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:52](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L52) (Tag: `maps_android_3d_polygon_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:53](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L53) (Tag: `maps_android_3d_polygon_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:54](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L54) (Tag: `maps_android_3d_polygon_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:55](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L55) (Tag: `maps_android_3d_polygon_add_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:81](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L81) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L100-L125) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L151-L184) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L49-L74) (Tag: `maps_android_3d_polygon_add_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:129](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L129) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:50](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L50) (Tag: `maps_android_3d_polyline_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:51](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L51) (Tag: `maps_android_3d_polyline_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:52](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L52) (Tag: `maps_android_3d_polyline_add_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:77](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L77) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:98](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L98) (Tag: `maps_android_3d_polyline_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:99](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L99) (Tag: `maps_android_3d_polyline_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L48-L70) (Tag: `maps_android_3d_polyline_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L96-L122) (Tag: `maps_android_3d_polyline_options_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:122](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L122) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:51](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L51) (Tag: `maps_android_3d_popover_add_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:77](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L77) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:98](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L98) (Tag: `maps_android_3d_popover_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L48-L73) (Tag: `maps_android_3d_popover_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L95-L118) (Tag: `maps_android_3d_popover_options_kt`) - `setLatitude`: - [MapActivity.kt:192](MapActivity.kt#L192) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:131](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L131) (Tag: `maps_android_3d_camera_stop_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:229](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L229) (Tag: `maps_android_3d_camera_restriction_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:55](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L55) (Tag: `maps_android_3d_camera_fly_to_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:87](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L87) (Tag: `maps_android_3d_camera_fly_around_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:62](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L62) (Tag: `maps_android_3d_init_basic_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:113](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L113) (Tag: `maps_android_3d_marker_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:139](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L139) (Tag: `maps_android_3d_marker_click_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:148](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L148) (Tag: `maps_android_3d_marker_click_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L137-L176) (Tag: `maps_android_3d_camera_stop_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L235-L259) (Tag: `maps_android_3d_camera_restriction_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L62-L81) (Tag: `maps_android_3d_camera_fly_to_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L93-L125) (Tag: `maps_android_3d_camera_fly_around_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L42-L83) (Tag: `maps_android_3d_init_basic_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:186](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L186) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:205](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L205) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:230](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L230) (Tag: `maps_android_3d_marker_glyph_color_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:244](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L244) (Tag: `maps_android_3d_marker_glyph_color_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:270](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L270) (Tag: `maps_android_3d_marker_glyph_text_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:284](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L284) (Tag: `maps_android_3d_marker_glyph_text_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:313](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L313) (Tag: `maps_android_3d_marker_glyph_circle_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:327](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L327) (Tag: `maps_android_3d_marker_glyph_circle_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:55](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L55) (Tag: `maps_android_3d_marker_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:71](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L71) (Tag: `maps_android_3d_marker_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:97](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L97) (Tag: `maps_android_3d_marker_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:54](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L54) (Tag: `maps_android_3d_model_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L136-L166) (Tag: `maps_android_3d_marker_click_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L227-L255) (Tag: `maps_android_3d_marker_glyph_color_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L267-L295) (Tag: `maps_android_3d_marker_glyph_text_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L307-L338) (Tag: `maps_android_3d_marker_glyph_circle_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L53-L82) (Tag: `maps_android_3d_marker_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L94-L124) (Tag: `maps_android_3d_marker_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L52-L79) (Tag: `maps_android_3d_model_add_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:58](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L58) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:102](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L102) (Tag: `maps_android_3d_polygon_extruded_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:103](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L103) (Tag: `maps_android_3d_polygon_extruded_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:104](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L104) (Tag: `maps_android_3d_polygon_extruded_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:105](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L105) (Tag: `maps_android_3d_polygon_extruded_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:106](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L106) (Tag: `maps_android_3d_polygon_extruded_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:130](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L130) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:153](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L153) (Tag: `maps_android_3d_polygon_hole_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:154](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L154) (Tag: `maps_android_3d_polygon_hole_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:155](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L155) (Tag: `maps_android_3d_polygon_hole_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:156](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L156) (Tag: `maps_android_3d_polygon_hole_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:157](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L157) (Tag: `maps_android_3d_polygon_hole_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:161](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L161) (Tag: `maps_android_3d_polygon_hole_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:162](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L162) (Tag: `maps_android_3d_polygon_hole_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:163](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L163) (Tag: `maps_android_3d_polygon_hole_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:164](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L164) (Tag: `maps_android_3d_polygon_hole_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:165](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L165) (Tag: `maps_android_3d_polygon_hole_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:188](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L188) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:51](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L51) (Tag: `maps_android_3d_polygon_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:52](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L52) (Tag: `maps_android_3d_polygon_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:53](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L53) (Tag: `maps_android_3d_polygon_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:54](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L54) (Tag: `maps_android_3d_polygon_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:55](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L55) (Tag: `maps_android_3d_polygon_add_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:79](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L79) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L100-L125) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L151-L184) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L49-L74) (Tag: `maps_android_3d_polygon_add_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:127](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L127) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:50](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L50) (Tag: `maps_android_3d_polyline_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:51](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L51) (Tag: `maps_android_3d_polyline_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:52](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L52) (Tag: `maps_android_3d_polyline_add_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:75](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L75) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:98](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L98) (Tag: `maps_android_3d_polyline_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:99](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L99) (Tag: `maps_android_3d_polyline_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L48-L70) (Tag: `maps_android_3d_polyline_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L96-L122) (Tag: `maps_android_3d_polyline_options_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:122](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L122) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:51](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L51) (Tag: `maps_android_3d_popover_add_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:77](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L77) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:98](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L98) (Tag: `maps_android_3d_popover_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L48-L73) (Tag: `maps_android_3d_popover_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L95-L118) (Tag: `maps_android_3d_popover_options_kt`) - `setLongitude`: - [MapActivity.kt:193](MapActivity.kt#L193) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:132](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L132) (Tag: `maps_android_3d_camera_stop_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:230](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L230) (Tag: `maps_android_3d_camera_restriction_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:56](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L56) (Tag: `maps_android_3d_camera_fly_to_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:88](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L88) (Tag: `maps_android_3d_camera_fly_around_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:63](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L63) (Tag: `maps_android_3d_init_basic_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:114](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L114) (Tag: `maps_android_3d_marker_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:140](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L140) (Tag: `maps_android_3d_marker_click_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:149](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L149) (Tag: `maps_android_3d_marker_click_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L137-L176) (Tag: `maps_android_3d_camera_stop_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L235-L259) (Tag: `maps_android_3d_camera_restriction_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L62-L81) (Tag: `maps_android_3d_camera_fly_to_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L93-L125) (Tag: `maps_android_3d_camera_fly_around_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L42-L83) (Tag: `maps_android_3d_init_basic_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:187](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L187) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:206](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L206) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:231](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L231) (Tag: `maps_android_3d_marker_glyph_color_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:245](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L245) (Tag: `maps_android_3d_marker_glyph_color_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:271](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L271) (Tag: `maps_android_3d_marker_glyph_text_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:285](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L285) (Tag: `maps_android_3d_marker_glyph_text_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:314](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L314) (Tag: `maps_android_3d_marker_glyph_circle_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:328](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L328) (Tag: `maps_android_3d_marker_glyph_circle_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:56](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L56) (Tag: `maps_android_3d_marker_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:72](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L72) (Tag: `maps_android_3d_marker_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:98](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L98) (Tag: `maps_android_3d_marker_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:55](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L55) (Tag: `maps_android_3d_model_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L136-L166) (Tag: `maps_android_3d_marker_click_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L227-L255) (Tag: `maps_android_3d_marker_glyph_color_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L267-L295) (Tag: `maps_android_3d_marker_glyph_text_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L307-L338) (Tag: `maps_android_3d_marker_glyph_circle_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L53-L82) (Tag: `maps_android_3d_marker_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L94-L124) (Tag: `maps_android_3d_marker_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L52-L79) (Tag: `maps_android_3d_model_add_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:58](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L58) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:102](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L102) (Tag: `maps_android_3d_polygon_extruded_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:103](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L103) (Tag: `maps_android_3d_polygon_extruded_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:104](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L104) (Tag: `maps_android_3d_polygon_extruded_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:105](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L105) (Tag: `maps_android_3d_polygon_extruded_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:106](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L106) (Tag: `maps_android_3d_polygon_extruded_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:131](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L131) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:153](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L153) (Tag: `maps_android_3d_polygon_hole_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:154](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L154) (Tag: `maps_android_3d_polygon_hole_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:155](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L155) (Tag: `maps_android_3d_polygon_hole_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:156](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L156) (Tag: `maps_android_3d_polygon_hole_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:157](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L157) (Tag: `maps_android_3d_polygon_hole_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:161](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L161) (Tag: `maps_android_3d_polygon_hole_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:162](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L162) (Tag: `maps_android_3d_polygon_hole_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:163](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L163) (Tag: `maps_android_3d_polygon_hole_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:164](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L164) (Tag: `maps_android_3d_polygon_hole_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:165](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L165) (Tag: `maps_android_3d_polygon_hole_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:188](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L188) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:51](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L51) (Tag: `maps_android_3d_polygon_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:52](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L52) (Tag: `maps_android_3d_polygon_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:53](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L53) (Tag: `maps_android_3d_polygon_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:54](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L54) (Tag: `maps_android_3d_polygon_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:55](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L55) (Tag: `maps_android_3d_polygon_add_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:80](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L80) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L100-L125) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L151-L184) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L49-L74) (Tag: `maps_android_3d_polygon_add_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:128](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L128) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:50](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L50) (Tag: `maps_android_3d_polyline_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:51](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L51) (Tag: `maps_android_3d_polyline_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:52](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L52) (Tag: `maps_android_3d_polyline_add_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:76](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L76) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:98](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L98) (Tag: `maps_android_3d_polyline_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:99](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L99) (Tag: `maps_android_3d_polyline_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L48-L70) (Tag: `maps_android_3d_polyline_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L96-L122) (Tag: `maps_android_3d_polyline_options_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:122](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L122) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:51](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L51) (Tag: `maps_android_3d_popover_add_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:77](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L77) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:98](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L98) (Tag: `maps_android_3d_popover_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L48-L73) (Tag: `maps_android_3d_popover_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L95-L118) (Tag: `maps_android_3d_popover_options_kt`) - `writeToParcel`: ❌ No coverage ### `LatLngBounds` @@ -736,13 +657,13 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - `getSouthWestLat`: ❌ No coverage - `getSouthWestLng`: ❌ No coverage - `setNorthEastLat`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:236](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L236) (Tag: `maps_android_3d_camera_restriction_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L235-L259) (Tag: `maps_android_3d_camera_restriction_kt`) - `setNorthEastLng`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:237](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L237) (Tag: `maps_android_3d_camera_restriction_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L235-L259) (Tag: `maps_android_3d_camera_restriction_kt`) - `setSouthWestLat`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:238](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L238) (Tag: `maps_android_3d_camera_restriction_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L235-L259) (Tag: `maps_android_3d_camera_restriction_kt`) - `setSouthWestLng`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:239](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L239) (Tag: `maps_android_3d_camera_restriction_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L235-L259) (Tag: `maps_android_3d_camera_restriction_kt`) - `writeToParcel`: ❌ No coverage ### `Map3DOptions` @@ -789,7 +710,7 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d ### `Map3DView` - `getMap3DViewAsync`: - [MapActivity.kt:122](MapActivity.kt#L122) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt:58](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L58) (Tag: `maps_android_3d_init_basic_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L42-L83) (Tag: `maps_android_3d_init_basic_kt`) - `getOverlayView`: ❌ No coverage - `getParams`: ❌ No coverage - `overlayView`: ❌ No coverage @@ -812,7 +733,7 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - [SnippetRegistry.kt:60](SnippetRegistry.kt#L60) (Tag: `No Tag`) - `setAltitudeMode`: ❌ No coverage - `setClickListener`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:160](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L160) (Tag: `maps_android_3d_marker_click_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L136-L166) (Tag: `maps_android_3d_marker_click_kt`) - `setCollisionBehavior`: ❌ No coverage - `setDrawsWhenOccluded`: ❌ No coverage - `setExtruded`: ❌ No coverage @@ -828,47 +749,43 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - `getId`: ❌ No coverage - `getLabel`: ❌ No coverage - `getPosition`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:113](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L113) (Tag: `maps_android_3d_marker_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:114](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L114) (Tag: `maps_android_3d_marker_options_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:205](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L205) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:206](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L206) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:244](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L244) (Tag: `maps_android_3d_marker_glyph_color_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:245](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L245) (Tag: `maps_android_3d_marker_glyph_color_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:284](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L284) (Tag: `maps_android_3d_marker_glyph_text_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:285](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L285) (Tag: `maps_android_3d_marker_glyph_text_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:327](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L327) (Tag: `maps_android_3d_marker_glyph_circle_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:328](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L328) (Tag: `maps_android_3d_marker_glyph_circle_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L227-L255) (Tag: `maps_android_3d_marker_glyph_color_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L267-L295) (Tag: `maps_android_3d_marker_glyph_text_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L307-L338) (Tag: `maps_android_3d_marker_glyph_circle_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L94-L124) (Tag: `maps_android_3d_marker_options_kt`) - `getZIndex`: ❌ No coverage - `isDrawnWhenOccluded`: ❌ No coverage - `isExtruded`: ❌ No coverage - `isSizePreserved`: ❌ No coverage - `setAltitudeMode`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:101](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L101) (Tag: `maps_android_3d_marker_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L94-L124) (Tag: `maps_android_3d_marker_options_kt`) - `setCollisionBehavior`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:103](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L103) (Tag: `maps_android_3d_marker_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L94-L124) (Tag: `maps_android_3d_marker_options_kt`) - `setDrawnWhenOccluded`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:105](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L105) (Tag: `maps_android_3d_marker_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L94-L124) (Tag: `maps_android_3d_marker_options_kt`) - `setExtruded`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:104](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L104) (Tag: `maps_android_3d_marker_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L94-L124) (Tag: `maps_android_3d_marker_options_kt`) - `setId`: ❌ No coverage - `setLabel`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:102](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L102) (Tag: `maps_android_3d_marker_options_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:190](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L190) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:234](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L234) (Tag: `maps_android_3d_marker_glyph_color_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:274](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L274) (Tag: `maps_android_3d_marker_glyph_text_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:317](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L317) (Tag: `maps_android_3d_marker_glyph_circle_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:62](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L62) (Tag: `maps_android_3d_marker_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:99](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L99) (Tag: `maps_android_3d_popover_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L227-L255) (Tag: `maps_android_3d_marker_glyph_color_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L267-L295) (Tag: `maps_android_3d_marker_glyph_text_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L307-L338) (Tag: `maps_android_3d_marker_glyph_circle_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L53-L82) (Tag: `maps_android_3d_marker_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L94-L124) (Tag: `maps_android_3d_marker_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L95-L118) (Tag: `maps_android_3d_popover_options_kt`) - `setPosition`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:138](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L138) (Tag: `maps_android_3d_marker_click_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:185](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L185) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:229](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L229) (Tag: `maps_android_3d_marker_glyph_color_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:269](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L269) (Tag: `maps_android_3d_marker_glyph_text_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:312](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L312) (Tag: `maps_android_3d_marker_glyph_circle_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:61](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L61) (Tag: `maps_android_3d_marker_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:96](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L96) (Tag: `maps_android_3d_marker_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:51](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L51) (Tag: `maps_android_3d_popover_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:98](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L98) (Tag: `maps_android_3d_popover_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L136-L166) (Tag: `maps_android_3d_marker_click_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L227-L255) (Tag: `maps_android_3d_marker_glyph_color_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L267-L295) (Tag: `maps_android_3d_marker_glyph_text_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L307-L338) (Tag: `maps_android_3d_marker_glyph_circle_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L53-L82) (Tag: `maps_android_3d_marker_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L94-L124) (Tag: `maps_android_3d_marker_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L48-L73) (Tag: `maps_android_3d_popover_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L95-L118) (Tag: `maps_android_3d_popover_options_kt`) - `setSizePreserved`: ❌ No coverage - `setZIndex`: ❌ No coverage @@ -896,7 +813,7 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - [SnippetRegistry.kt:63](SnippetRegistry.kt#L63) (Tag: `No Tag`) - `setAltitudeMode`: ❌ No coverage - `setClickListener`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:73](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L73) (Tag: `maps_android_3d_model_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L52-L79) (Tag: `maps_android_3d_model_add_kt`) - `setOrientation`: ❌ No coverage - `setPosition`: ❌ No coverage - `setScale`: ❌ No coverage @@ -910,16 +827,16 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - `getScale`: ❌ No coverage - `getUrl`: ❌ No coverage - `setAltitudeMode`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:62](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L62) (Tag: `maps_android_3d_model_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L52-L79) (Tag: `maps_android_3d_model_add_kt`) - `setId`: ❌ No coverage - `setOrientation`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:63](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L63) (Tag: `maps_android_3d_model_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L52-L79) (Tag: `maps_android_3d_model_add_kt`) - `setPosition`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:60](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L60) (Tag: `maps_android_3d_model_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L52-L79) (Tag: `maps_android_3d_model_add_kt`) - `setScale`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:68](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L68) (Tag: `maps_android_3d_model_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L52-L79) (Tag: `maps_android_3d_model_add_kt`) - `setUrl`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:61](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L61) (Tag: `maps_android_3d_model_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L52-L79) (Tag: `maps_android_3d_model_add_kt`) - `writeToParcel`: ❌ No coverage ### `Orientation` @@ -927,19 +844,19 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - `getRoll`: ❌ No coverage - `getTilt`: ❌ No coverage - `setHeading`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:65](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L65) (Tag: `maps_android_3d_model_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L52-L79) (Tag: `maps_android_3d_model_add_kt`) - `setRoll`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:66](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L66) (Tag: `maps_android_3d_model_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L52-L79) (Tag: `maps_android_3d_model_add_kt`) - `setTilt`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:64](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L64) (Tag: `maps_android_3d_model_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L52-L79) (Tag: `maps_android_3d_model_add_kt`) - `writeToParcel`: ❌ No coverage ### `PinConfiguration` - `builder`: - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:192](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L192) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:235](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L235) (Tag: `maps_android_3d_marker_glyph_color_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:275](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L275) (Tag: `maps_android_3d_marker_glyph_text_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:318](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L318) (Tag: `maps_android_3d_marker_glyph_circle_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L227-L255) (Tag: `maps_android_3d_marker_glyph_color_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L267-L295) (Tag: `maps_android_3d_marker_glyph_text_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L307-L338) (Tag: `maps_android_3d_marker_glyph_circle_kt`) - `equals`: ❌ No coverage - `getBackgroundColor`: ❌ No coverage - `getBorderColor`: ❌ No coverage @@ -955,18 +872,18 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d ### `PinConfiguration.Builder` - `build`: - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:197](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L197) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:237](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L237) (Tag: `maps_android_3d_marker_glyph_color_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:277](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L277) (Tag: `maps_android_3d_marker_glyph_text_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:320](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L320) (Tag: `maps_android_3d_marker_glyph_circle_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L227-L255) (Tag: `maps_android_3d_marker_glyph_color_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L267-L295) (Tag: `maps_android_3d_marker_glyph_text_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L307-L338) (Tag: `maps_android_3d_marker_glyph_circle_kt`) - `setBackgroundColor`: - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:195](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L195) (Tag: `No Tag`) - `setBorderColor`: - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:196](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L196) (Tag: `No Tag`) - `setGlyph`: - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:194](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L194) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:236](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L236) (Tag: `maps_android_3d_marker_glyph_color_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:276](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L276) (Tag: `maps_android_3d_marker_glyph_text_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:319](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L319) (Tag: `maps_android_3d_marker_glyph_circle_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L227-L255) (Tag: `maps_android_3d_marker_glyph_color_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L267-L295) (Tag: `maps_android_3d_marker_glyph_text_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L307-L338) (Tag: `maps_android_3d_marker_glyph_circle_kt`) - `setScale`: - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:193](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L193) (Tag: `No Tag`) @@ -989,9 +906,9 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - [SnippetRegistry.kt:62](SnippetRegistry.kt#L62) (Tag: `No Tag`) - `setAltitudeMode`: ❌ No coverage - `setClickListener`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:119](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L119) (Tag: `maps_android_3d_polygon_extruded_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:178](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L178) (Tag: `maps_android_3d_polygon_hole_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:68](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L68) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L100-L125) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L151-L184) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L49-L74) (Tag: `maps_android_3d_polygon_add_kt`) - `setDrawsOccludedSegments`: ❌ No coverage - `setExtruded`: ❌ No coverage - `setFillColor`: ❌ No coverage @@ -1017,29 +934,29 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - `getStrokeWidth`: ❌ No coverage - `getZIndex`: ❌ No coverage - `setAltitudeMode`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:114](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L114) (Tag: `maps_android_3d_polygon_extruded_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:173](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L173) (Tag: `maps_android_3d_polygon_hole_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:63](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L63) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L100-L125) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L151-L184) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L49-L74) (Tag: `maps_android_3d_polygon_add_kt`) - `setDrawsOccludedSegments`: ❌ No coverage - `setExtruded`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:112](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L112) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L100-L125) (Tag: `maps_android_3d_polygon_extruded_kt`) - `setFillColor`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:111](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L111) (Tag: `maps_android_3d_polygon_extruded_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:170](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L170) (Tag: `maps_android_3d_polygon_hole_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:60](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L60) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L100-L125) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L151-L184) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L49-L74) (Tag: `maps_android_3d_polygon_add_kt`) - `setGeodesic`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:113](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L113) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L100-L125) (Tag: `maps_android_3d_polygon_extruded_kt`) - `setId`: ❌ No coverage - `setInnerPaths`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:172](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L172) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L151-L184) (Tag: `maps_android_3d_polygon_hole_kt`) - `setPath`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:110](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L110) (Tag: `maps_android_3d_polygon_extruded_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:169](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L169) (Tag: `maps_android_3d_polygon_hole_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:59](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L59) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L100-L125) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L151-L184) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L49-L74) (Tag: `maps_android_3d_polygon_add_kt`) - `setStrokeColor`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:61](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L61) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L49-L74) (Tag: `maps_android_3d_polygon_add_kt`) - `setStrokeWidth`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:62](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L62) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L49-L74) (Tag: `maps_android_3d_polygon_add_kt`) - `setZIndex`: ❌ No coverage - `writeToParcel`: ❌ No coverage @@ -1060,8 +977,8 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - [SnippetRegistry.kt:61](SnippetRegistry.kt#L61) (Tag: `No Tag`) - `setAltitudeMode`: ❌ No coverage - `setClickListener`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:116](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L116) (Tag: `maps_android_3d_polyline_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:64](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L64) (Tag: `maps_android_3d_polyline_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L48-L70) (Tag: `maps_android_3d_polyline_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L96-L122) (Tag: `maps_android_3d_polyline_options_kt`) - `setCoordinates`: ❌ No coverage - `setDrawsOccludedSegments`: ❌ No coverage - `setGeodesic`: ❌ No coverage @@ -1085,28 +1002,28 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - `getStrokeWidth`: ❌ No coverage - `getZIndex`: ❌ No coverage - `setAltitudeMode`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:108](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L108) (Tag: `maps_android_3d_polyline_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:59](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L59) (Tag: `maps_android_3d_polyline_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L48-L70) (Tag: `maps_android_3d_polyline_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L96-L122) (Tag: `maps_android_3d_polyline_options_kt`) - `setDrawsOccludedSegments`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:111](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L111) (Tag: `maps_android_3d_polyline_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L96-L122) (Tag: `maps_android_3d_polyline_options_kt`) - `setExtruded`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:109](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L109) (Tag: `maps_android_3d_polyline_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L96-L122) (Tag: `maps_android_3d_polyline_options_kt`) - `setGeodesic`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:110](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L110) (Tag: `maps_android_3d_polyline_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L96-L122) (Tag: `maps_android_3d_polyline_options_kt`) - `setId`: ❌ No coverage - `setOuterColor`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:106](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L106) (Tag: `maps_android_3d_polyline_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L96-L122) (Tag: `maps_android_3d_polyline_options_kt`) - `setOuterWidth`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:107](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L107) (Tag: `maps_android_3d_polyline_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L96-L122) (Tag: `maps_android_3d_polyline_options_kt`) - `setPath`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:103](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L103) (Tag: `maps_android_3d_polyline_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:56](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L56) (Tag: `maps_android_3d_polyline_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L48-L70) (Tag: `maps_android_3d_polyline_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L96-L122) (Tag: `maps_android_3d_polyline_options_kt`) - `setStrokeColor`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:104](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L104) (Tag: `maps_android_3d_polyline_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:57](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L57) (Tag: `maps_android_3d_polyline_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L48-L70) (Tag: `maps_android_3d_polyline_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L96-L122) (Tag: `maps_android_3d_polyline_options_kt`) - `setStrokeWidth`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:105](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L105) (Tag: `maps_android_3d_polyline_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:58](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L58) (Tag: `maps_android_3d_polyline_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L48-L70) (Tag: `maps_android_3d_polyline_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L96-L122) (Tag: `maps_android_3d_polyline_options_kt`) - `setZIndex`: ❌ No coverage - `writeToParcel`: ❌ No coverage @@ -1135,8 +1052,8 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - [SnippetRegistry.kt:64](SnippetRegistry.kt#L64) (Tag: `No Tag`) - `removeFn`: ❌ No coverage - `show`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:117](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L117) (Tag: `maps_android_3d_popover_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:72](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L72) (Tag: `maps_android_3d_popover_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L48-L73) (Tag: `maps_android_3d_popover_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L95-L118) (Tag: `maps_android_3d_popover_options_kt`) - `toggle`: ❌ No coverage ### `PopoverOptions` @@ -1148,19 +1065,19 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - `getPopoverStyle`: ❌ No coverage - `getPositionAnchor`: ❌ No coverage - `setAltitudeMode`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:66](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L66) (Tag: `maps_android_3d_popover_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L48-L73) (Tag: `maps_android_3d_popover_add_kt`) - `setAnchorOffset`: ❌ No coverage - `setAutoCloseEnabled`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:112](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L112) (Tag: `maps_android_3d_popover_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L95-L118) (Tag: `maps_android_3d_popover_options_kt`) - `setAutoPanEnabled`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:113](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L113) (Tag: `maps_android_3d_popover_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L95-L118) (Tag: `maps_android_3d_popover_options_kt`) - `setContent`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:110](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L110) (Tag: `maps_android_3d_popover_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:64](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L64) (Tag: `maps_android_3d_popover_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L48-L73) (Tag: `maps_android_3d_popover_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L95-L118) (Tag: `maps_android_3d_popover_options_kt`) - `setPopoverStyle`: ❌ No coverage - `setPositionAnchor`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:111](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L111) (Tag: `maps_android_3d_popover_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:65](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L65) (Tag: `maps_android_3d_popover_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L48-L73) (Tag: `maps_android_3d_popover_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L95-L118) (Tag: `maps_android_3d_popover_options_kt`) ### `PopoverShadow` - `getColor`: ❌ No coverage @@ -1214,11 +1131,11 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - `getY`: ❌ No coverage - `getZ`: ❌ No coverage - `setX`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:68](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L68) (Tag: `maps_android_3d_model_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L52-L79) (Tag: `maps_android_3d_model_add_kt`) - `setY`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:68](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L68) (Tag: `maps_android_3d_model_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L52-L79) (Tag: `maps_android_3d_model_add_kt`) - `setZ`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:68](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L68) (Tag: `maps_android_3d_model_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L52-L79) (Tag: `maps_android_3d_model_add_kt`) - `writeToParcel`: ❌ No coverage ### Missing Extracted API Coverage (Kotlin Snippets) @@ -1321,7 +1238,7 @@ The following non-getter/setter APIs currently have `0` occurrences within this ### `Camera` - `getCenter`: - [MapActivity.java:55](MapActivity.java#L55) (Tag: `No Tag`) - - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:135](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L135) (Tag: `maps_android_3d_camera_events_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L128-L147) (Tag: `maps_android_3d_camera_events_java`) - `setCenter`: ❌ No coverage - `setHeading`: ❌ No coverage - `setRange`: ❌ No coverage @@ -1358,65 +1275,65 @@ The following non-getter/setter APIs currently have `0` occurrences within this ### `Glyph` - `equals`: ❌ No coverage - `fromCircle`: - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:266](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L266) (Tag: `maps_android_3d_marker_glyph_circle_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L263-L285) (Tag: `maps_android_3d_marker_glyph_circle_java`) - `fromColor`: - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:163](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L163) (Tag: `maps_android_3d_marker_custom_icon_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:208](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L208) (Tag: `maps_android_3d_marker_glyph_color_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L159-L189) (Tag: `maps_android_3d_marker_custom_icon_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L201-L220) (Tag: `maps_android_3d_marker_glyph_color_java`) - `fromText`: - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:239](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L239) (Tag: `maps_android_3d_marker_glyph_text_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L232-L251) (Tag: `maps_android_3d_marker_glyph_text_java`) - `getColor`: ❌ No coverage - `getImage`: ❌ No coverage - `getText`: ❌ No coverage - `hashCode`: ❌ No coverage - `setColor`: - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:267](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L267) (Tag: `maps_android_3d_marker_glyph_circle_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L263-L285) (Tag: `maps_android_3d_marker_glyph_circle_java`) - `setImage`: - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:166](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L166) (Tag: `maps_android_3d_marker_custom_icon_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L159-L189) (Tag: `maps_android_3d_marker_custom_icon_java`) - `setText`: ❌ No coverage - `writeToParcel`: ❌ No coverage ### `GoogleMap3D` - `addMarker`: - [TrackedMap3D.java:54](TrackedMap3D.java#L54) (Tag: `No Tag`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:104](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L104) (Tag: `maps_android_3d_marker_options_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:130](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L130) (Tag: `maps_android_3d_marker_click_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:180](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L180) (Tag: `maps_android_3d_marker_custom_icon_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:211](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L211) (Tag: `maps_android_3d_marker_glyph_color_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:242](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L242) (Tag: `maps_android_3d_marker_glyph_text_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:276](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L276) (Tag: `maps_android_3d_marker_glyph_circle_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:72](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L72) (Tag: `maps_android_3d_marker_add_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:100](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L100) (Tag: `maps_android_3d_popover_options_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:60](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L60) (Tag: `maps_android_3d_popover_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L125-L147) (Tag: `maps_android_3d_marker_click_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L159-L189) (Tag: `maps_android_3d_marker_custom_icon_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L201-L220) (Tag: `maps_android_3d_marker_glyph_color_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L232-L251) (Tag: `maps_android_3d_marker_glyph_text_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L263-L285) (Tag: `maps_android_3d_marker_glyph_circle_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L64-L81) (Tag: `maps_android_3d_marker_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L93-L113) (Tag: `maps_android_3d_marker_options_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L58-L82) (Tag: `maps_android_3d_popover_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L94-L118) (Tag: `maps_android_3d_popover_options_java`) - `addModel`: - [TrackedMap3D.java:72](TrackedMap3D.java#L72) (Tag: `No Tag`) - - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java:70](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L70) (Tag: `maps_android_3d_model_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L60-L78) (Tag: `maps_android_3d_model_add_java`) - `addPolygon`: - [TrackedMap3D.java:66](TrackedMap3D.java#L66) (Tag: `No Tag`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:116](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L116) (Tag: `maps_android_3d_polygon_extruded_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:166](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L166) (Tag: `maps_android_3d_polygon_hole_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:76](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L76) (Tag: `maps_android_3d_polygon_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L100-L124) (Tag: `maps_android_3d_polygon_extruded_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L140-L174) (Tag: `maps_android_3d_polygon_hole_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L60-L84) (Tag: `maps_android_3d_polygon_add_java`) - `addPolyline`: - [TrackedMap3D.java:60](TrackedMap3D.java#L60) (Tag: `No Tag`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:113](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L113) (Tag: `maps_android_3d_polyline_options_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:72](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L72) (Tag: `maps_android_3d_polyline_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L59-L80) (Tag: `maps_android_3d_polyline_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L96-L121) (Tag: `maps_android_3d_polyline_options_java`) - `addPopover`: - [TrackedMap3D.java:78](TrackedMap3D.java#L78) (Tag: `No Tag`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:114](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L114) (Tag: `maps_android_3d_popover_options_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:76](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L76) (Tag: `maps_android_3d_popover_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L58-L82) (Tag: `maps_android_3d_popover_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L94-L118) (Tag: `maps_android_3d_popover_options_java`) - `flyCameraAround`: - [TrackedMap3D.java:86](TrackedMap3D.java#L86) (Tag: `No Tag`) - - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:111](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L111) (Tag: `maps_android_3d_camera_stop_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:91](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L91) (Tag: `maps_android_3d_camera_fly_around_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L106-L115) (Tag: `maps_android_3d_camera_stop_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L75-L94) (Tag: `maps_android_3d_camera_fly_around_java`) - `flyCameraTo`: - [TrackedMap3D.java:91](TrackedMap3D.java#L91) (Tag: `No Tag`) - - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:62](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L62) (Tag: `maps_android_3d_camera_fly_to_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:110](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L110) (Tag: `maps_android_3d_marker_options_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:136](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L136) (Tag: `maps_android_3d_marker_click_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:186](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L186) (Tag: `maps_android_3d_marker_custom_icon_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:217](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L217) (Tag: `maps_android_3d_marker_glyph_color_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:248](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L248) (Tag: `maps_android_3d_marker_glyph_text_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:282](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L282) (Tag: `maps_android_3d_marker_glyph_circle_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:78](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L78) (Tag: `maps_android_3d_marker_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L45-L64) (Tag: `maps_android_3d_camera_fly_to_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L125-L147) (Tag: `maps_android_3d_marker_click_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L159-L189) (Tag: `maps_android_3d_marker_custom_icon_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L201-L220) (Tag: `maps_android_3d_marker_glyph_color_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L232-L251) (Tag: `maps_android_3d_marker_glyph_text_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L263-L285) (Tag: `maps_android_3d_marker_glyph_circle_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L64-L81) (Tag: `maps_android_3d_marker_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L93-L113) (Tag: `maps_android_3d_marker_options_java`) - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java:83](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L83) (Tag: `No Tag`) - [java-app/src/main/java/com/example/snippets/java/snippets/PlaceSnippets.java:74](java-app/src/main/java/com/example/snippets/java/snippets/PlaceSnippets.java#L74) (Tag: `No Tag`) - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:128](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L128) (Tag: `No Tag`) @@ -1434,29 +1351,27 @@ The following non-getter/setter APIs currently have `0` occurrences within this - `setCamera`: - [TrackedMap3D.java:83](TrackedMap3D.java#L83) (Tag: `No Tag`) - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:182](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L182) (Tag: `No Tag`) - - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:86](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L86) (Tag: `maps_android_3d_camera_fly_around_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java:54](java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java#L54) (Tag: `maps_android_3d_init_basic_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L75-L94) (Tag: `maps_android_3d_camera_fly_around_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java#L45-L64) (Tag: `maps_android_3d_init_basic_java`) - `setCameraAnimationEndListener`: ❌ No coverage - `setCameraChangedListener`: - [TrackedMap3D.java:84](TrackedMap3D.java#L84) (Tag: `No Tag`) - - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:130](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L130) (Tag: `maps_android_3d_camera_events_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:145](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L145) (Tag: `maps_android_3d_camera_events_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L128-L147) (Tag: `maps_android_3d_camera_events_java`) - `setCameraRestriction`: - [TrackedMap3D.java:94](TrackedMap3D.java#L94) (Tag: `No Tag`) - - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:193](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L193) (Tag: `maps_android_3d_camera_restriction_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L184-L194) (Tag: `maps_android_3d_camera_restriction_java`) - `setMap3DClickListener`: - [TrackedMap3D.java:85](TrackedMap3D.java#L85) (Tag: `No Tag`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PlaceSnippets.java:57](java-app/src/main/java/com/example/snippets/java/snippets/PlaceSnippets.java#L57) (Tag: `maps_android_3d_place_click_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PlaceSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PlaceSnippets.java#L56-L68) (Tag: `maps_android_3d_place_click_java`) - `setMapMode`: ❌ No coverage - `setOnMapReadyListener`: - [TrackedMap3D.java:92](TrackedMap3D.java#L92) (Tag: `No Tag`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java:74](java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java#L74) (Tag: `maps_android_3d_init_listeners_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java#L73-L97) (Tag: `maps_android_3d_init_listeners_java`) - `setOnMapSteadyListener`: - [TrackedMap3D.java:93](TrackedMap3D.java#L93) (Tag: `No Tag`) - - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:160](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L160) (Tag: `maps_android_3d_camera_steady_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:88](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L88) (Tag: `maps_android_3d_camera_fly_around_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:90](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L90) (Tag: `maps_android_3d_camera_fly_around_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java:85](java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java#L85) (Tag: `maps_android_3d_init_listeners_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L159-L163) (Tag: `maps_android_3d_camera_steady_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L75-L94) (Tag: `maps_android_3d_camera_fly_around_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java#L73-L97) (Tag: `maps_android_3d_init_listeners_java`) - `stopCameraAnimation`: - [TrackedMap3D.java:90](TrackedMap3D.java#L90) (Tag: `No Tag`) @@ -1477,22 +1392,22 @@ The following non-getter/setter APIs currently have `0` occurrences within this - [MapActivity.java:64](MapActivity.java#L64) (Tag: `No Tag`) - `getLatitude`: - [MapActivity.java:64](MapActivity.java#L64) (Tag: `No Tag`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:108](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L108) (Tag: `maps_android_3d_marker_options_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:134](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L134) (Tag: `maps_android_3d_marker_click_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:184](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L184) (Tag: `maps_android_3d_marker_custom_icon_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:215](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L215) (Tag: `maps_android_3d_marker_glyph_color_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:246](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L246) (Tag: `maps_android_3d_marker_glyph_text_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:280](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L280) (Tag: `maps_android_3d_marker_glyph_circle_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:76](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L76) (Tag: `maps_android_3d_marker_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L125-L147) (Tag: `maps_android_3d_marker_click_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L159-L189) (Tag: `maps_android_3d_marker_custom_icon_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L201-L220) (Tag: `maps_android_3d_marker_glyph_color_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L232-L251) (Tag: `maps_android_3d_marker_glyph_text_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L263-L285) (Tag: `maps_android_3d_marker_glyph_circle_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L64-L81) (Tag: `maps_android_3d_marker_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L93-L113) (Tag: `maps_android_3d_marker_options_java`) - `getLongitude`: - [MapActivity.java:64](MapActivity.java#L64) (Tag: `No Tag`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:108](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L108) (Tag: `maps_android_3d_marker_options_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:134](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L134) (Tag: `maps_android_3d_marker_click_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:184](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L184) (Tag: `maps_android_3d_marker_custom_icon_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:215](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L215) (Tag: `maps_android_3d_marker_glyph_color_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:246](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L246) (Tag: `maps_android_3d_marker_glyph_text_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:280](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L280) (Tag: `maps_android_3d_marker_glyph_circle_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:76](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L76) (Tag: `maps_android_3d_marker_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L125-L147) (Tag: `maps_android_3d_marker_click_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L159-L189) (Tag: `maps_android_3d_marker_custom_icon_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L201-L220) (Tag: `maps_android_3d_marker_glyph_color_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L232-L251) (Tag: `maps_android_3d_marker_glyph_text_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L263-L285) (Tag: `maps_android_3d_marker_glyph_circle_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L64-L81) (Tag: `maps_android_3d_marker_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L93-L113) (Tag: `maps_android_3d_marker_options_java`) - `getPosition`: ❌ No coverage - `setAltitude`: ❌ No coverage - `setLatitude`: ❌ No coverage @@ -1554,7 +1469,7 @@ The following non-getter/setter APIs currently have `0` occurrences within this ### `Map3DView` - `getMap3DViewAsync`: - [MapActivity.java:115](MapActivity.java#L115) (Tag: `No Tag`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java:48](java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java#L48) (Tag: `maps_android_3d_init_basic_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java#L45-L64) (Tag: `maps_android_3d_init_basic_java`) - `getOverlayView`: ❌ No coverage - `getParams`: ❌ No coverage - `overlayView`: ❌ No coverage @@ -1577,7 +1492,7 @@ The following non-getter/setter APIs currently have `0` occurrences within this - [SnippetRegistry.java:38](SnippetRegistry.java#L38) (Tag: `No Tag`) - `setAltitudeMode`: ❌ No coverage - `setClickListener`: - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:142](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L142) (Tag: `maps_android_3d_marker_click_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L125-L147) (Tag: `maps_android_3d_marker_click_java`) - `setCollisionBehavior`: ❌ No coverage - `setDrawsWhenOccluded`: ❌ No coverage - `setExtruded`: ❌ No coverage @@ -1593,43 +1508,43 @@ The following non-getter/setter APIs currently have `0` occurrences within this - `getId`: ❌ No coverage - `getLabel`: ❌ No coverage - `getPosition`: - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:106](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L106) (Tag: `maps_android_3d_marker_options_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:132](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L132) (Tag: `maps_android_3d_marker_click_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:182](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L182) (Tag: `maps_android_3d_marker_custom_icon_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:213](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L213) (Tag: `maps_android_3d_marker_glyph_color_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:244](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L244) (Tag: `maps_android_3d_marker_glyph_text_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:278](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L278) (Tag: `maps_android_3d_marker_glyph_circle_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:74](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L74) (Tag: `maps_android_3d_marker_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L125-L147) (Tag: `maps_android_3d_marker_click_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L159-L189) (Tag: `maps_android_3d_marker_custom_icon_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L201-L220) (Tag: `maps_android_3d_marker_glyph_color_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L232-L251) (Tag: `maps_android_3d_marker_glyph_text_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L263-L285) (Tag: `maps_android_3d_marker_glyph_circle_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L64-L81) (Tag: `maps_android_3d_marker_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L93-L113) (Tag: `maps_android_3d_marker_options_java`) - `getZIndex`: ❌ No coverage - `isDrawnWhenOccluded`: ❌ No coverage - `isExtruded`: ❌ No coverage - `isSizePreserved`: ❌ No coverage - `setAltitudeMode`: - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:98](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L98) (Tag: `maps_android_3d_marker_options_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L93-L113) (Tag: `maps_android_3d_marker_options_java`) - `setCollisionBehavior`: - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:100](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L100) (Tag: `maps_android_3d_marker_options_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L93-L113) (Tag: `maps_android_3d_marker_options_java`) - `setDrawnWhenOccluded`: - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:102](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L102) (Tag: `maps_android_3d_marker_options_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L93-L113) (Tag: `maps_android_3d_marker_options_java`) - `setExtruded`: - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:101](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L101) (Tag: `maps_android_3d_marker_options_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L93-L113) (Tag: `maps_android_3d_marker_options_java`) - `setId`: ❌ No coverage - `setLabel`: - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:170](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L170) (Tag: `maps_android_3d_marker_custom_icon_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:206](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L206) (Tag: `maps_android_3d_marker_glyph_color_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:237](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L237) (Tag: `maps_android_3d_marker_glyph_text_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:271](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L271) (Tag: `maps_android_3d_marker_glyph_circle_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:69](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L69) (Tag: `maps_android_3d_marker_add_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:99](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L99) (Tag: `maps_android_3d_marker_options_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:99](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L99) (Tag: `maps_android_3d_popover_options_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L159-L189) (Tag: `maps_android_3d_marker_custom_icon_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L201-L220) (Tag: `maps_android_3d_marker_glyph_color_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L232-L251) (Tag: `maps_android_3d_marker_glyph_text_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L263-L285) (Tag: `maps_android_3d_marker_glyph_circle_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L64-L81) (Tag: `maps_android_3d_marker_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L93-L113) (Tag: `maps_android_3d_marker_options_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L94-L118) (Tag: `maps_android_3d_popover_options_java`) - `setPosition`: - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:128](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L128) (Tag: `maps_android_3d_marker_click_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:169](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L169) (Tag: `maps_android_3d_marker_custom_icon_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:205](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L205) (Tag: `maps_android_3d_marker_glyph_color_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:236](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L236) (Tag: `maps_android_3d_marker_glyph_text_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:270](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L270) (Tag: `maps_android_3d_marker_glyph_circle_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:68](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L68) (Tag: `maps_android_3d_marker_add_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:97](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L97) (Tag: `maps_android_3d_marker_options_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:98](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L98) (Tag: `maps_android_3d_popover_options_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L125-L147) (Tag: `maps_android_3d_marker_click_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L159-L189) (Tag: `maps_android_3d_marker_custom_icon_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L201-L220) (Tag: `maps_android_3d_marker_glyph_color_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L232-L251) (Tag: `maps_android_3d_marker_glyph_text_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L263-L285) (Tag: `maps_android_3d_marker_glyph_circle_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L64-L81) (Tag: `maps_android_3d_marker_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L93-L113) (Tag: `maps_android_3d_marker_options_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L94-L118) (Tag: `maps_android_3d_popover_options_java`) - `setSizePreserved`: ❌ No coverage - `setZIndex`: ❌ No coverage @@ -1657,7 +1572,7 @@ The following non-getter/setter APIs currently have `0` occurrences within this - [SnippetRegistry.java:41](SnippetRegistry.java#L41) (Tag: `No Tag`) - `setAltitudeMode`: ❌ No coverage - `setClickListener`: - - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java:72](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L72) (Tag: `maps_android_3d_model_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L60-L78) (Tag: `maps_android_3d_model_add_java`) - `setOrientation`: ❌ No coverage - `setPosition`: ❌ No coverage - `setScale`: ❌ No coverage @@ -1671,16 +1586,16 @@ The following non-getter/setter APIs currently have `0` occurrences within this - `getScale`: ❌ No coverage - `getUrl`: ❌ No coverage - `setAltitudeMode`: - - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java:66](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L66) (Tag: `maps_android_3d_model_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L60-L78) (Tag: `maps_android_3d_model_add_java`) - `setId`: ❌ No coverage - `setOrientation`: - - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java:67](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L67) (Tag: `maps_android_3d_model_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L60-L78) (Tag: `maps_android_3d_model_add_java`) - `setPosition`: - - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java:64](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L64) (Tag: `maps_android_3d_model_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L60-L78) (Tag: `maps_android_3d_model_add_java`) - `setScale`: - - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java:68](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L68) (Tag: `maps_android_3d_model_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L60-L78) (Tag: `maps_android_3d_model_add_java`) - `setUrl`: - - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java:65](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L65) (Tag: `maps_android_3d_model_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L60-L78) (Tag: `maps_android_3d_model_add_java`) - `writeToParcel`: ❌ No coverage ### `Orientation` @@ -1694,10 +1609,10 @@ The following non-getter/setter APIs currently have `0` occurrences within this ### `PinConfiguration` - `builder`: - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:173](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L173) (Tag: `maps_android_3d_marker_custom_icon_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:207](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L207) (Tag: `maps_android_3d_marker_glyph_color_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:238](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L238) (Tag: `maps_android_3d_marker_glyph_text_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:272](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L272) (Tag: `maps_android_3d_marker_glyph_circle_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L159-L189) (Tag: `maps_android_3d_marker_custom_icon_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L201-L220) (Tag: `maps_android_3d_marker_glyph_color_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L232-L251) (Tag: `maps_android_3d_marker_glyph_text_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L263-L285) (Tag: `maps_android_3d_marker_glyph_circle_java`) - `equals`: ❌ No coverage - `getBackgroundColor`: ❌ No coverage - `getBorderColor`: ❌ No coverage @@ -1712,21 +1627,21 @@ The following non-getter/setter APIs currently have `0` occurrences within this ### `PinConfiguration.Builder` - `build`: - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:178](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L178) (Tag: `maps_android_3d_marker_custom_icon_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:209](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L209) (Tag: `maps_android_3d_marker_glyph_color_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:240](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L240) (Tag: `maps_android_3d_marker_glyph_text_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:274](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L274) (Tag: `maps_android_3d_marker_glyph_circle_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L159-L189) (Tag: `maps_android_3d_marker_custom_icon_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L201-L220) (Tag: `maps_android_3d_marker_glyph_color_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L232-L251) (Tag: `maps_android_3d_marker_glyph_text_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L263-L285) (Tag: `maps_android_3d_marker_glyph_circle_java`) - `setBackgroundColor`: - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:176](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L176) (Tag: `maps_android_3d_marker_custom_icon_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L159-L189) (Tag: `maps_android_3d_marker_custom_icon_java`) - `setBorderColor`: - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:177](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L177) (Tag: `maps_android_3d_marker_custom_icon_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L159-L189) (Tag: `maps_android_3d_marker_custom_icon_java`) - `setGlyph`: - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:175](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L175) (Tag: `maps_android_3d_marker_custom_icon_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:208](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L208) (Tag: `maps_android_3d_marker_glyph_color_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:239](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L239) (Tag: `maps_android_3d_marker_glyph_text_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:273](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L273) (Tag: `maps_android_3d_marker_glyph_circle_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L159-L189) (Tag: `maps_android_3d_marker_custom_icon_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L201-L220) (Tag: `maps_android_3d_marker_glyph_color_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L232-L251) (Tag: `maps_android_3d_marker_glyph_text_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L263-L285) (Tag: `maps_android_3d_marker_glyph_circle_java`) - `setScale`: - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java:174](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L174) (Tag: `maps_android_3d_marker_custom_icon_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L159-L189) (Tag: `maps_android_3d_marker_custom_icon_java`) ### `Polygon` - `getAltitudeMode`: ❌ No coverage @@ -1747,9 +1662,9 @@ The following non-getter/setter APIs currently have `0` occurrences within this - [SnippetRegistry.java:40](SnippetRegistry.java#L40) (Tag: `No Tag`) - `setAltitudeMode`: ❌ No coverage - `setClickListener`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:118](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L118) (Tag: `maps_android_3d_polygon_extruded_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:168](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L168) (Tag: `maps_android_3d_polygon_hole_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:78](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L78) (Tag: `maps_android_3d_polygon_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L100-L124) (Tag: `maps_android_3d_polygon_extruded_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L140-L174) (Tag: `maps_android_3d_polygon_hole_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L60-L84) (Tag: `maps_android_3d_polygon_add_java`) - `setDrawsOccludedSegments`: ❌ No coverage - `setExtruded`: ❌ No coverage - `setFillColor`: ❌ No coverage @@ -1775,29 +1690,29 @@ The following non-getter/setter APIs currently have `0` occurrences within this - `getStrokeWidth`: ❌ No coverage - `getZIndex`: ❌ No coverage - `setAltitudeMode`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:114](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L114) (Tag: `maps_android_3d_polygon_extruded_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:160](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L160) (Tag: `maps_android_3d_polygon_hole_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:74](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L74) (Tag: `maps_android_3d_polygon_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L100-L124) (Tag: `maps_android_3d_polygon_extruded_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L140-L174) (Tag: `maps_android_3d_polygon_hole_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L60-L84) (Tag: `maps_android_3d_polygon_add_java`) - `setDrawsOccludedSegments`: ❌ No coverage - `setExtruded`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:112](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L112) (Tag: `maps_android_3d_polygon_extruded_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L100-L124) (Tag: `maps_android_3d_polygon_extruded_java`) - `setFillColor`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:111](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L111) (Tag: `maps_android_3d_polygon_extruded_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:159](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L159) (Tag: `maps_android_3d_polygon_hole_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:71](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L71) (Tag: `maps_android_3d_polygon_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L100-L124) (Tag: `maps_android_3d_polygon_extruded_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L140-L174) (Tag: `maps_android_3d_polygon_hole_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L60-L84) (Tag: `maps_android_3d_polygon_add_java`) - `setGeodesic`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:113](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L113) (Tag: `maps_android_3d_polygon_extruded_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L100-L124) (Tag: `maps_android_3d_polygon_extruded_java`) - `setId`: ❌ No coverage - `setInnerPaths`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:164](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L164) (Tag: `maps_android_3d_polygon_hole_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L140-L174) (Tag: `maps_android_3d_polygon_hole_java`) - `setPath`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:110](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L110) (Tag: `maps_android_3d_polygon_extruded_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:158](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L158) (Tag: `maps_android_3d_polygon_hole_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:70](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L70) (Tag: `maps_android_3d_polygon_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L100-L124) (Tag: `maps_android_3d_polygon_extruded_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L140-L174) (Tag: `maps_android_3d_polygon_hole_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L60-L84) (Tag: `maps_android_3d_polygon_add_java`) - `setStrokeColor`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:72](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L72) (Tag: `maps_android_3d_polygon_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L60-L84) (Tag: `maps_android_3d_polygon_add_java`) - `setStrokeWidth`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:73](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L73) (Tag: `maps_android_3d_polygon_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L60-L84) (Tag: `maps_android_3d_polygon_add_java`) - `setZIndex`: ❌ No coverage - `writeToParcel`: ❌ No coverage @@ -1818,8 +1733,8 @@ The following non-getter/setter APIs currently have `0` occurrences within this - [SnippetRegistry.java:39](SnippetRegistry.java#L39) (Tag: `No Tag`) - `setAltitudeMode`: ❌ No coverage - `setClickListener`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:115](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L115) (Tag: `maps_android_3d_polyline_options_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:74](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L74) (Tag: `maps_android_3d_polyline_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L59-L80) (Tag: `maps_android_3d_polyline_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L96-L121) (Tag: `maps_android_3d_polyline_options_java`) - `setCoordinates`: ❌ No coverage - `setDrawsOccludedSegments`: ❌ No coverage - `setGeodesic`: ❌ No coverage @@ -1843,28 +1758,28 @@ The following non-getter/setter APIs currently have `0` occurrences within this - `getStrokeWidth`: ❌ No coverage - `getZIndex`: ❌ No coverage - `setAltitudeMode`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:108](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L108) (Tag: `maps_android_3d_polyline_options_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:70](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L70) (Tag: `maps_android_3d_polyline_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L59-L80) (Tag: `maps_android_3d_polyline_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L96-L121) (Tag: `maps_android_3d_polyline_options_java`) - `setDrawsOccludedSegments`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:111](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L111) (Tag: `maps_android_3d_polyline_options_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L96-L121) (Tag: `maps_android_3d_polyline_options_java`) - `setExtruded`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:109](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L109) (Tag: `maps_android_3d_polyline_options_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L96-L121) (Tag: `maps_android_3d_polyline_options_java`) - `setGeodesic`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:110](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L110) (Tag: `maps_android_3d_polyline_options_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L96-L121) (Tag: `maps_android_3d_polyline_options_java`) - `setId`: ❌ No coverage - `setOuterColor`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:106](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L106) (Tag: `maps_android_3d_polyline_options_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L96-L121) (Tag: `maps_android_3d_polyline_options_java`) - `setOuterWidth`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:107](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L107) (Tag: `maps_android_3d_polyline_options_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L96-L121) (Tag: `maps_android_3d_polyline_options_java`) - `setPath`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:103](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L103) (Tag: `maps_android_3d_polyline_options_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:67](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L67) (Tag: `maps_android_3d_polyline_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L59-L80) (Tag: `maps_android_3d_polyline_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L96-L121) (Tag: `maps_android_3d_polyline_options_java`) - `setStrokeColor`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:104](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L104) (Tag: `maps_android_3d_polyline_options_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:68](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L68) (Tag: `maps_android_3d_polyline_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L59-L80) (Tag: `maps_android_3d_polyline_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L96-L121) (Tag: `maps_android_3d_polyline_options_java`) - `setStrokeWidth`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:105](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L105) (Tag: `maps_android_3d_polyline_options_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:69](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L69) (Tag: `maps_android_3d_polyline_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L59-L80) (Tag: `maps_android_3d_polyline_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L96-L121) (Tag: `maps_android_3d_polyline_options_java`) - `setZIndex`: ❌ No coverage - `writeToParcel`: ❌ No coverage @@ -1893,8 +1808,8 @@ The following non-getter/setter APIs currently have `0` occurrences within this - [SnippetRegistry.java:42](SnippetRegistry.java#L42) (Tag: `No Tag`) - `removeFn`: ❌ No coverage - `show`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:116](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L116) (Tag: `maps_android_3d_popover_options_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:80](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L80) (Tag: `maps_android_3d_popover_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L58-L82) (Tag: `maps_android_3d_popover_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L94-L118) (Tag: `maps_android_3d_popover_options_java`) - `toggle`: ❌ No coverage ### `PopoverOptions` @@ -1906,19 +1821,19 @@ The following non-getter/setter APIs currently have `0` occurrences within this - `getPopoverStyle`: ❌ No coverage - `getPositionAnchor`: ❌ No coverage - `setAltitudeMode`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:74](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L74) (Tag: `maps_android_3d_popover_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L58-L82) (Tag: `maps_android_3d_popover_add_java`) - `setAnchorOffset`: ❌ No coverage - `setAutoCloseEnabled`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:111](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L111) (Tag: `maps_android_3d_popover_options_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L94-L118) (Tag: `maps_android_3d_popover_options_java`) - `setAutoPanEnabled`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:112](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L112) (Tag: `maps_android_3d_popover_options_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L94-L118) (Tag: `maps_android_3d_popover_options_java`) - `setContent`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:109](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L109) (Tag: `maps_android_3d_popover_options_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:72](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L72) (Tag: `maps_android_3d_popover_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L58-L82) (Tag: `maps_android_3d_popover_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L94-L118) (Tag: `maps_android_3d_popover_options_java`) - `setPopoverStyle`: ❌ No coverage - `setPositionAnchor`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:110](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L110) (Tag: `maps_android_3d_popover_options_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:73](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L73) (Tag: `maps_android_3d_popover_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L58-L82) (Tag: `maps_android_3d_popover_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L94-L118) (Tag: `maps_android_3d_popover_options_java`) ### `PopoverShadow` - `getColor`: ❌ No coverage diff --git a/snippets/scripts/catalog_api.py b/snippets/scripts/catalog_api.py index d419f7cb..48e65554 100644 --- a/snippets/scripts/catalog_api.py +++ b/snippets/scripts/catalog_api.py @@ -112,7 +112,7 @@ def parse_javap_output(snippets_dir): return usages -def generate_snippet_index(snippets_dir, file_map): +def generate_snippet_index(snippets_dir, file_map, region_tags): groups = defaultdict(lambda: { 'description': '', 'items': defaultdict(lambda: { @@ -128,7 +128,10 @@ def generate_snippet_index(snippets_dir, file_map): if name.endswith(('.kt', '.java')): filepath = os.path.join(root, name) with open(filepath, 'r', encoding='utf-8') as f: - content = f.read() + try: + content = f.read() + except UnicodeDecodeError: + continue # Find Group group_match = re.search(r'@SnippetGroup\((.*?)\)', content, re.DOTALL) @@ -163,31 +166,36 @@ def generate_snippet_index(snippets_dir, file_map): item_title = item_title_match.group(1) item_desc = item_desc_match.group(1) if item_desc_match else "" - # Read back or ahead for closest Region Tag - tag = "No Tag" - min_dist = 999 - start_j = max(0, i - 15) - end_j = min(len(lines), i + 15) - for j in range(start_j, end_j): - start_match = re.search(r'\[START\s+([a-zA-Z0-9_]+)\]', lines[j]) - if start_match: - current_tag = start_match.group(1) - dist = abs(j - i) - if dist < min_dist: - min_dist = dist - tag = current_tag + # Find active region tag mapping + active_tag = "No Tag" + start_line = i + 1 + end_line = i + 1 + + # Look up in region_tags + if filepath in region_tags: + for region in region_tags[filepath]: + # Function index i is 0-based line index, region['start'] is 1-based + # Allow +- 10 lines buffer for comments/annotations preceding the START tag + if region['start'] <= (i + 15) and region['end'] >= i: + active_tag = region['tag'] + start_line = region['start'] + end_line = region['end'] + break rel_path = file_map.get(name, os.path.relpath(filepath, snippets_dir)) - link = f"[{rel_path}:{i+1}]({rel_path}#L{i+1})" + if active_tag != "No Tag": + link = f"[{rel_path}]({rel_path}#L{start_line}-L{end_line})" + else: + link = f"[{rel_path}:{i+1}]({rel_path}#L{i+1})" current_item = groups[group_title]['items'][item_title] if not current_item['description']: current_item['description'] = item_desc if is_kotlin: - current_item['kotlin'] = {'link': link, 'tag': tag} + current_item['kotlin'] = {'link': link, 'tag': active_tag} else: - current_item['java'] = {'link': link, 'tag': tag} + current_item['java'] = {'link': link, 'tag': active_tag} # Format Markdown lines = ["## 📑 Snippet Concepts Index\n\n"] @@ -263,7 +271,16 @@ def format_catalog_section(section_title, api_surface, usages, file_map, region_ active_tag = region['tag'] break - formatted_uses.append(f"[{rel_path}:{line_num}]({rel_path}#L{line_num}) (Tag: `{active_tag}`)") + if active_tag != "No Tag": + # We found a region, map the range + for region in region_tags[full_path_for_tag]: + if region['tag'] == active_tag: + start_line = region['start'] + end_line = region['end'] + break + formatted_uses.append(f"[{rel_path}]({rel_path}#L{start_line}-L{end_line}) (Tag: `{active_tag}`)") + else: + formatted_uses.append(f"[{rel_path}:{line_num}]({rel_path}#L{line_num}) (Tag: `{active_tag}`)") formatted_uses = sorted(list(set(formatted_uses))) lines.append(f"- `{method}`:\n") @@ -304,8 +321,8 @@ def main(): print(f"Loaded {sum(len(v) for v in api_surface.values())} API endpoints from {manifest_path}.") - usages = parse_javap_output(SNIPPETS_DIR) region_tags = extract_region_tags(SNIPPETS_DIR) + usages = parse_javap_output(SNIPPETS_DIR) file_map = {} for filepath in region_tags.keys(): @@ -317,7 +334,7 @@ def main(): catalog_lines.append("This document serves as a comprehensive developer reference and mapping matrix for the 3D Maps SDK features.\n\n") # Generate Snippet Index (Concepts to Code) - snippet_index_lines = generate_snippet_index(SNIPPETS_DIR, file_map) + snippet_index_lines = generate_snippet_index(SNIPPETS_DIR, file_map, region_tags) catalog_lines.extend(snippet_index_lines) catalog_lines.append("\n---\n\n") catalog_lines.append("## 📊 Maps3D API Coverage Matrix\n\n") From ddf6864db2e9bb720b936933b9030f40bb257b72 Mon Sep 17 00:00:00 2001 From: dkhawk <107309+dkhawk@users.noreply.github.com> Date: Fri, 20 Mar 2026 12:52:05 -0600 Subject: [PATCH 31/36] tooling(snippets): Populate file_map with full paths for all source files - Fixed dictionary fallbacks causing basenames (MapActivity.java) to fail relative mappings. - Re-ran catalog parser to flush full coordinate reference indices. --- snippets/CATALOG.md | 142 ++++++++++++++-------------- snippets/docs/framework_overview.md | 65 +++++++++++++ snippets/docs/process_guide.md | 47 +++++++++ snippets/docs/prompt_pipeline.md | 75 +++++++++++++++ snippets/docs/tooling_blueprint.md | 73 ++++++++++++++ snippets/scripts/catalog_api.py | 12 ++- 6 files changed, 339 insertions(+), 75 deletions(-) create mode 100644 snippets/docs/framework_overview.md create mode 100644 snippets/docs/process_guide.md create mode 100644 snippets/docs/prompt_pipeline.md create mode 100644 snippets/docs/tooling_blueprint.md diff --git a/snippets/CATALOG.md b/snippets/CATALOG.md index 044f7576..98e4509c 100644 --- a/snippets/CATALOG.md +++ b/snippets/CATALOG.md @@ -237,10 +237,10 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d ## Kotlin Snippets ### `Camera` - `getCenter`: - - [MapActivity.kt:58](MapActivity.kt#L58) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt:58](kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt#L58) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L188-L202) (Tag: `maps_android_3d_camera_events_kt`) - `setCenter`: - - [MapActivity.kt:191](MapActivity.kt#L191) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt:191](kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt#L191) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L137-L176) (Tag: `maps_android_3d_camera_stop_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L235-L259) (Tag: `maps_android_3d_camera_restriction_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L62-L81) (Tag: `maps_android_3d_camera_fly_to_kt`) @@ -263,7 +263,7 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:122](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L122) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:77](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L77) (Tag: `No Tag`) - `setHeading`: - - [MapActivity.kt:197](MapActivity.kt#L197) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt:197](kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt#L197) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L137-L176) (Tag: `maps_android_3d_camera_stop_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L62-L81) (Tag: `maps_android_3d_camera_fly_to_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L93-L125) (Tag: `maps_android_3d_camera_fly_around_kt`) @@ -285,7 +285,7 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:124](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L124) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:79](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L79) (Tag: `No Tag`) - `setRange`: - - [MapActivity.kt:198](MapActivity.kt#L198) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt:198](kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt#L198) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L137-L176) (Tag: `maps_android_3d_camera_stop_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L62-L81) (Tag: `maps_android_3d_camera_fly_to_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L93-L125) (Tag: `maps_android_3d_camera_fly_around_kt`) @@ -313,7 +313,7 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L42-L83) (Tag: `maps_android_3d_init_basic_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:189](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L189) (Tag: `No Tag`) - `setTilt`: - - [MapActivity.kt:196](MapActivity.kt#L196) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt:196](kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt#L196) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L137-L176) (Tag: `maps_android_3d_camera_stop_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L62-L81) (Tag: `maps_android_3d_camera_fly_to_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L93-L125) (Tag: `maps_android_3d_camera_fly_around_kt`) @@ -368,7 +368,7 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - `getDurationInMillis`: ❌ No coverage - `getEndCamera`: ❌ No coverage - `setDurationInMillis`: - - [MapActivity.kt:202](MapActivity.kt#L202) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt:202](kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt#L202) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L137-L176) (Tag: `maps_android_3d_camera_stop_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L62-L81) (Tag: `maps_android_3d_camera_fly_to_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:213](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L213) (Tag: `No Tag`) @@ -388,7 +388,7 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:127](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L127) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:82](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L82) (Tag: `No Tag`) - `setEndCamera`: - - [MapActivity.kt:201](MapActivity.kt#L201) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt:201](kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt#L201) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L137-L176) (Tag: `maps_android_3d_camera_stop_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L62-L81) (Tag: `maps_android_3d_camera_fly_to_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:203](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L203) (Tag: `No Tag`) @@ -431,7 +431,7 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d ### `GoogleMap3D` - `addMarker`: - - [TrackedMap3D.kt:31](TrackedMap3D.kt#L31) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt:31](kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt#L31) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:200](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L200) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L136-L166) (Tag: `maps_android_3d_marker_click_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L227-L255) (Tag: `maps_android_3d_marker_glyph_color_kt`) @@ -442,28 +442,28 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L48-L73) (Tag: `maps_android_3d_popover_add_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L95-L118) (Tag: `maps_android_3d_popover_options_kt`) - `addModel`: - - [TrackedMap3D.kt:49](TrackedMap3D.kt#L49) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt:49](kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt#L49) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L52-L79) (Tag: `maps_android_3d_model_add_kt`) - `addPolygon`: - - [TrackedMap3D.kt:43](TrackedMap3D.kt#L43) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt:43](kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt#L43) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L100-L125) (Tag: `maps_android_3d_polygon_extruded_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L151-L184) (Tag: `maps_android_3d_polygon_hole_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L49-L74) (Tag: `maps_android_3d_polygon_add_kt`) - `addPolyline`: - - [TrackedMap3D.kt:37](TrackedMap3D.kt#L37) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt:37](kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt#L37) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L48-L70) (Tag: `maps_android_3d_polyline_add_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L96-L122) (Tag: `maps_android_3d_polyline_options_kt`) - `addPopover`: - - [TrackedMap3D.kt:55](TrackedMap3D.kt#L55) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt:55](kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt#L55) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L48-L73) (Tag: `maps_android_3d_popover_add_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L95-L118) (Tag: `maps_android_3d_popover_options_kt`) - `flyCameraAround`: - - [TrackedMap3D.kt:68](TrackedMap3D.kt#L68) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt:68](kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt#L68) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L137-L176) (Tag: `maps_android_3d_camera_stop_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L93-L125) (Tag: `maps_android_3d_camera_fly_around_kt`) - `flyCameraTo`: - - [MapActivity.kt:200](MapActivity.kt#L200) (Tag: `No Tag`) - - [TrackedMap3D.kt:67](TrackedMap3D.kt#L67) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt:200](kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt#L200) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt:67](kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt#L67) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L137-L176) (Tag: `maps_android_3d_camera_stop_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L62-L81) (Tag: `maps_android_3d_camera_fly_to_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:202](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L202) (Tag: `No Tag`) @@ -483,45 +483,45 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:120](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L120) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:75](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L75) (Tag: `No Tag`) - `getCamera`: - - [MapActivity.kt:57](MapActivity.kt#L57) (Tag: `No Tag`) - - [TrackedMap3D.kt:65](TrackedMap3D.kt#L65) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt:57](kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt#L57) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt:65](kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt#L65) (Tag: `No Tag`) - `getCameraRestriction`: - - [TrackedMap3D.kt:72](TrackedMap3D.kt#L72) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt:72](kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt#L72) (Tag: `No Tag`) - `getMapMode`: ❌ No coverage - `setCamera`: - - [TrackedMap3D.kt:60](TrackedMap3D.kt#L60) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt:60](kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt#L60) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L235-L259) (Tag: `maps_android_3d_camera_restriction_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L93-L125) (Tag: `maps_android_3d_camera_fly_around_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L42-L83) (Tag: `maps_android_3d_init_basic_kt`) - `setCameraAnimationEndListener`: - - [MapExtensions.kt:19](MapExtensions.kt#L19) (Tag: `No Tag`) - - [MapExtensions.kt:20](MapExtensions.kt#L20) (Tag: `No Tag`) - - [MapExtensions.kt:27](MapExtensions.kt#L27) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/utils/MapExtensions.kt:19](kotlin-app/src/main/java/com/example/snippets/kotlin/utils/MapExtensions.kt#L19) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/utils/MapExtensions.kt:20](kotlin-app/src/main/java/com/example/snippets/kotlin/utils/MapExtensions.kt#L20) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/utils/MapExtensions.kt:27](kotlin-app/src/main/java/com/example/snippets/kotlin/utils/MapExtensions.kt#L27) (Tag: `No Tag`) - `setCameraChangedListener`: - - [TrackedMap3D.kt:61](TrackedMap3D.kt#L61) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt:61](kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt#L61) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:206](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L206) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L188-L202) (Tag: `maps_android_3d_camera_events_kt`) - `setCameraRestriction`: - - [TrackedMap3D.kt:71](TrackedMap3D.kt#L71) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt:71](kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt#L71) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L235-L259) (Tag: `maps_android_3d_camera_restriction_kt`) - `setMap3DClickListener`: - - [TrackedMap3D.kt:62](TrackedMap3D.kt#L62) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt:62](kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt#L62) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L44-L53) (Tag: `maps_android_3d_place_click_kt`) - `setMapMode`: ❌ No coverage - `setOnMapReadyListener`: - - [MapActivity.kt:127](MapActivity.kt#L127) (Tag: `No Tag`) - - [TrackedMap3D.kt:69](TrackedMap3D.kt#L69) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt:127](kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt#L127) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt:69](kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt#L69) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L94-L114) (Tag: `maps_android_3d_init_listeners_kt`) - `setOnMapSteadyListener`: - - [MapExtensions.kt:40](MapExtensions.kt#L40) (Tag: `No Tag`) - - [MapExtensions.kt:42](MapExtensions.kt#L42) (Tag: `No Tag`) - - [MapExtensions.kt:51](MapExtensions.kt#L51) (Tag: `No Tag`) - - [TrackedMap3D.kt:70](TrackedMap3D.kt#L70) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt:70](kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt#L70) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L219-L223) (Tag: `maps_android_3d_camera_steady_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L93-L125) (Tag: `maps_android_3d_camera_fly_around_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L94-L114) (Tag: `maps_android_3d_init_listeners_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/utils/MapExtensions.kt:40](kotlin-app/src/main/java/com/example/snippets/kotlin/utils/MapExtensions.kt#L40) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/utils/MapExtensions.kt:42](kotlin-app/src/main/java/com/example/snippets/kotlin/utils/MapExtensions.kt#L42) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/utils/MapExtensions.kt:51](kotlin-app/src/main/java/com/example/snippets/kotlin/utils/MapExtensions.kt#L51) (Tag: `No Tag`) - `stopCameraAnimation`: - - [TrackedMap3D.kt:66](TrackedMap3D.kt#L66) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt:66](kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt#L66) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L137-L176) (Tag: `maps_android_3d_camera_stop_kt`) ### `Hole` @@ -538,9 +538,9 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d ### `LatLngAltitude` - `getAltitude`: - - [MapActivity.kt:73](MapActivity.kt#L73) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt:73](kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt#L73) (Tag: `No Tag`) - `getLatitude`: - - [MapActivity.kt:71](MapActivity.kt#L71) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt:71](kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt#L71) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:205](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L205) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L227-L255) (Tag: `maps_android_3d_marker_glyph_color_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L267-L295) (Tag: `maps_android_3d_marker_glyph_text_kt`) @@ -548,7 +548,7 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L53-L82) (Tag: `maps_android_3d_marker_add_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L94-L124) (Tag: `maps_android_3d_marker_options_kt`) - `getLongitude`: - - [MapActivity.kt:72](MapActivity.kt#L72) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt:72](kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt#L72) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:206](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L206) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L227-L255) (Tag: `maps_android_3d_marker_glyph_color_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L267-L295) (Tag: `maps_android_3d_marker_glyph_text_kt`) @@ -557,7 +557,7 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L94-L124) (Tag: `maps_android_3d_marker_options_kt`) - `getPosition`: ❌ No coverage - `setAltitude`: - - [MapActivity.kt:194](MapActivity.kt#L194) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt:194](kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt#L194) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L137-L176) (Tag: `maps_android_3d_camera_stop_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L235-L259) (Tag: `maps_android_3d_camera_restriction_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L62-L81) (Tag: `maps_android_3d_camera_fly_to_kt`) @@ -588,7 +588,7 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L48-L73) (Tag: `maps_android_3d_popover_add_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L95-L118) (Tag: `maps_android_3d_popover_options_kt`) - `setLatitude`: - - [MapActivity.kt:192](MapActivity.kt#L192) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt:192](kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt#L192) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L137-L176) (Tag: `maps_android_3d_camera_stop_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L235-L259) (Tag: `maps_android_3d_camera_restriction_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L62-L81) (Tag: `maps_android_3d_camera_fly_to_kt`) @@ -619,7 +619,7 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L48-L73) (Tag: `maps_android_3d_popover_add_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L95-L118) (Tag: `maps_android_3d_popover_options_kt`) - `setLongitude`: - - [MapActivity.kt:193](MapActivity.kt#L193) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt:193](kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt#L193) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L137-L176) (Tag: `maps_android_3d_camera_stop_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L235-L259) (Tag: `maps_android_3d_camera_restriction_kt`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L62-L81) (Tag: `maps_android_3d_camera_fly_to_kt`) @@ -709,7 +709,7 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d ### `Map3DView` - `getMap3DViewAsync`: - - [MapActivity.kt:122](MapActivity.kt#L122) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt:122](kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt#L122) (Tag: `No Tag`) - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L42-L83) (Tag: `maps_android_3d_init_basic_kt`) - `getOverlayView`: ❌ No coverage - `getParams`: ❌ No coverage @@ -730,7 +730,7 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - `isExtruded`: ❌ No coverage - `onMarkerClick`: ❌ No coverage - `remove`: - - [SnippetRegistry.kt:60](SnippetRegistry.kt#L60) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/SnippetRegistry.kt:60](kotlin-app/src/main/java/com/example/snippets/kotlin/SnippetRegistry.kt#L60) (Tag: `No Tag`) - `setAltitudeMode`: ❌ No coverage - `setClickListener`: - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L136-L166) (Tag: `maps_android_3d_marker_click_kt`) @@ -810,7 +810,7 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - `getUrl`: ❌ No coverage - `onModelClick`: ❌ No coverage - `remove`: - - [SnippetRegistry.kt:63](SnippetRegistry.kt#L63) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/SnippetRegistry.kt:63](kotlin-app/src/main/java/com/example/snippets/kotlin/SnippetRegistry.kt#L63) (Tag: `No Tag`) - `setAltitudeMode`: ❌ No coverage - `setClickListener`: - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L52-L79) (Tag: `maps_android_3d_model_add_kt`) @@ -903,7 +903,7 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - `getZIndex`: ❌ No coverage - `onPolygonClick`: ❌ No coverage - `remove`: - - [SnippetRegistry.kt:62](SnippetRegistry.kt#L62) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/SnippetRegistry.kt:62](kotlin-app/src/main/java/com/example/snippets/kotlin/SnippetRegistry.kt#L62) (Tag: `No Tag`) - `setAltitudeMode`: ❌ No coverage - `setClickListener`: - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L100-L125) (Tag: `maps_android_3d_polygon_extruded_kt`) @@ -974,7 +974,7 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - `getZIndex`: ❌ No coverage - `onPolylineClick`: ❌ No coverage - `remove`: - - [SnippetRegistry.kt:61](SnippetRegistry.kt#L61) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/SnippetRegistry.kt:61](kotlin-app/src/main/java/com/example/snippets/kotlin/SnippetRegistry.kt#L61) (Tag: `No Tag`) - `setAltitudeMode`: ❌ No coverage - `setClickListener`: - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L48-L70) (Tag: `maps_android_3d_polyline_add_kt`) @@ -1049,7 +1049,7 @@ This matrix ensures that every critical feature in the 3D Maps SDK is actively d - `isVisible`: ❌ No coverage - `positionAnchor`: ❌ No coverage - `remove`: - - [SnippetRegistry.kt:64](SnippetRegistry.kt#L64) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/SnippetRegistry.kt:64](kotlin-app/src/main/java/com/example/snippets/kotlin/SnippetRegistry.kt#L64) (Tag: `No Tag`) - `removeFn`: ❌ No coverage - `show`: - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L48-L73) (Tag: `maps_android_3d_popover_add_kt`) @@ -1237,7 +1237,7 @@ The following non-getter/setter APIs currently have `0` occurrences within this ## Java Snippets ### `Camera` - `getCenter`: - - [MapActivity.java:55](MapActivity.java#L55) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/MapActivity.java:55](java-app/src/main/java/com/example/snippets/java/MapActivity.java#L55) (Tag: `No Tag`) - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L128-L147) (Tag: `maps_android_3d_camera_events_java`) - `setCenter`: ❌ No coverage - `setHeading`: ❌ No coverage @@ -1294,7 +1294,7 @@ The following non-getter/setter APIs currently have `0` occurrences within this ### `GoogleMap3D` - `addMarker`: - - [TrackedMap3D.java:54](TrackedMap3D.java#L54) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java:54](java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java#L54) (Tag: `No Tag`) - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L125-L147) (Tag: `maps_android_3d_marker_click_java`) - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L159-L189) (Tag: `maps_android_3d_marker_custom_icon_java`) - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L201-L220) (Tag: `maps_android_3d_marker_glyph_color_java`) @@ -1305,27 +1305,27 @@ The following non-getter/setter APIs currently have `0` occurrences within this - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L58-L82) (Tag: `maps_android_3d_popover_add_java`) - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L94-L118) (Tag: `maps_android_3d_popover_options_java`) - `addModel`: - - [TrackedMap3D.java:72](TrackedMap3D.java#L72) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java:72](java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java#L72) (Tag: `No Tag`) - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L60-L78) (Tag: `maps_android_3d_model_add_java`) - `addPolygon`: - - [TrackedMap3D.java:66](TrackedMap3D.java#L66) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java:66](java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java#L66) (Tag: `No Tag`) - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L100-L124) (Tag: `maps_android_3d_polygon_extruded_java`) - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L140-L174) (Tag: `maps_android_3d_polygon_hole_java`) - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L60-L84) (Tag: `maps_android_3d_polygon_add_java`) - `addPolyline`: - - [TrackedMap3D.java:60](TrackedMap3D.java#L60) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java:60](java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java#L60) (Tag: `No Tag`) - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L59-L80) (Tag: `maps_android_3d_polyline_add_java`) - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L96-L121) (Tag: `maps_android_3d_polyline_options_java`) - `addPopover`: - - [TrackedMap3D.java:78](TrackedMap3D.java#L78) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java:78](java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java#L78) (Tag: `No Tag`) - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L58-L82) (Tag: `maps_android_3d_popover_add_java`) - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L94-L118) (Tag: `maps_android_3d_popover_options_java`) - `flyCameraAround`: - - [TrackedMap3D.java:86](TrackedMap3D.java#L86) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java:86](java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java#L86) (Tag: `No Tag`) - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L106-L115) (Tag: `maps_android_3d_camera_stop_java`) - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L75-L94) (Tag: `maps_android_3d_camera_fly_around_java`) - `flyCameraTo`: - - [TrackedMap3D.java:91](TrackedMap3D.java#L91) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java:91](java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java#L91) (Tag: `No Tag`) - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L45-L64) (Tag: `maps_android_3d_camera_fly_to_java`) - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L125-L147) (Tag: `maps_android_3d_marker_click_java`) - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L159-L189) (Tag: `maps_android_3d_marker_custom_icon_java`) @@ -1343,37 +1343,37 @@ The following non-getter/setter APIs currently have `0` occurrences within this - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:84](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L84) (Tag: `No Tag`) - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:123](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L123) (Tag: `No Tag`) - `getCamera`: - - [MapActivity.java:53](MapActivity.java#L53) (Tag: `No Tag`) - - [TrackedMap3D.java:89](TrackedMap3D.java#L89) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/MapActivity.java:53](java-app/src/main/java/com/example/snippets/java/MapActivity.java#L53) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java:89](java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java#L89) (Tag: `No Tag`) - `getCameraRestriction`: - - [TrackedMap3D.java:95](TrackedMap3D.java#L95) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java:95](java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java#L95) (Tag: `No Tag`) - `getMapMode`: ❌ No coverage - `setCamera`: - - [TrackedMap3D.java:83](TrackedMap3D.java#L83) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java:83](java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java#L83) (Tag: `No Tag`) - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:182](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L182) (Tag: `No Tag`) - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L75-L94) (Tag: `maps_android_3d_camera_fly_around_java`) - [java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java#L45-L64) (Tag: `maps_android_3d_init_basic_java`) - `setCameraAnimationEndListener`: ❌ No coverage - `setCameraChangedListener`: - - [TrackedMap3D.java:84](TrackedMap3D.java#L84) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java:84](java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java#L84) (Tag: `No Tag`) - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L128-L147) (Tag: `maps_android_3d_camera_events_java`) - `setCameraRestriction`: - - [TrackedMap3D.java:94](TrackedMap3D.java#L94) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java:94](java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java#L94) (Tag: `No Tag`) - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L184-L194) (Tag: `maps_android_3d_camera_restriction_java`) - `setMap3DClickListener`: - - [TrackedMap3D.java:85](TrackedMap3D.java#L85) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java:85](java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java#L85) (Tag: `No Tag`) - [java-app/src/main/java/com/example/snippets/java/snippets/PlaceSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PlaceSnippets.java#L56-L68) (Tag: `maps_android_3d_place_click_java`) - `setMapMode`: ❌ No coverage - `setOnMapReadyListener`: - - [TrackedMap3D.java:92](TrackedMap3D.java#L92) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java:92](java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java#L92) (Tag: `No Tag`) - [java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java#L73-L97) (Tag: `maps_android_3d_init_listeners_java`) - `setOnMapSteadyListener`: - - [TrackedMap3D.java:93](TrackedMap3D.java#L93) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java:93](java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java#L93) (Tag: `No Tag`) - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L159-L163) (Tag: `maps_android_3d_camera_steady_java`) - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L75-L94) (Tag: `maps_android_3d_camera_fly_around_java`) - [java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java#L73-L97) (Tag: `maps_android_3d_init_listeners_java`) - `stopCameraAnimation`: - - [TrackedMap3D.java:90](TrackedMap3D.java#L90) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java:90](java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java#L90) (Tag: `No Tag`) ### `Hole` - `getVertices`: ❌ No coverage @@ -1389,9 +1389,9 @@ The following non-getter/setter APIs currently have `0` occurrences within this ### `LatLngAltitude` - `getAltitude`: - - [MapActivity.java:64](MapActivity.java#L64) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/MapActivity.java:64](java-app/src/main/java/com/example/snippets/java/MapActivity.java#L64) (Tag: `No Tag`) - `getLatitude`: - - [MapActivity.java:64](MapActivity.java#L64) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/MapActivity.java:64](java-app/src/main/java/com/example/snippets/java/MapActivity.java#L64) (Tag: `No Tag`) - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L125-L147) (Tag: `maps_android_3d_marker_click_java`) - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L159-L189) (Tag: `maps_android_3d_marker_custom_icon_java`) - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L201-L220) (Tag: `maps_android_3d_marker_glyph_color_java`) @@ -1400,7 +1400,7 @@ The following non-getter/setter APIs currently have `0` occurrences within this - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L64-L81) (Tag: `maps_android_3d_marker_add_java`) - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L93-L113) (Tag: `maps_android_3d_marker_options_java`) - `getLongitude`: - - [MapActivity.java:64](MapActivity.java#L64) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/MapActivity.java:64](java-app/src/main/java/com/example/snippets/java/MapActivity.java#L64) (Tag: `No Tag`) - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L125-L147) (Tag: `maps_android_3d_marker_click_java`) - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L159-L189) (Tag: `maps_android_3d_marker_custom_icon_java`) - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L201-L220) (Tag: `maps_android_3d_marker_glyph_color_java`) @@ -1468,7 +1468,7 @@ The following non-getter/setter APIs currently have `0` occurrences within this ### `Map3DView` - `getMap3DViewAsync`: - - [MapActivity.java:115](MapActivity.java#L115) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/MapActivity.java:115](java-app/src/main/java/com/example/snippets/java/MapActivity.java#L115) (Tag: `No Tag`) - [java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java#L45-L64) (Tag: `maps_android_3d_init_basic_java`) - `getOverlayView`: ❌ No coverage - `getParams`: ❌ No coverage @@ -1489,7 +1489,7 @@ The following non-getter/setter APIs currently have `0` occurrences within this - `isExtruded`: ❌ No coverage - `onMarkerClick`: ❌ No coverage - `remove`: - - [SnippetRegistry.java:38](SnippetRegistry.java#L38) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/SnippetRegistry.java:38](java-app/src/main/java/com/example/snippets/java/SnippetRegistry.java#L38) (Tag: `No Tag`) - `setAltitudeMode`: ❌ No coverage - `setClickListener`: - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L125-L147) (Tag: `maps_android_3d_marker_click_java`) @@ -1569,7 +1569,7 @@ The following non-getter/setter APIs currently have `0` occurrences within this - `getUrl`: ❌ No coverage - `onModelClick`: ❌ No coverage - `remove`: - - [SnippetRegistry.java:41](SnippetRegistry.java#L41) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/SnippetRegistry.java:41](java-app/src/main/java/com/example/snippets/java/SnippetRegistry.java#L41) (Tag: `No Tag`) - `setAltitudeMode`: ❌ No coverage - `setClickListener`: - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L60-L78) (Tag: `maps_android_3d_model_add_java`) @@ -1659,7 +1659,7 @@ The following non-getter/setter APIs currently have `0` occurrences within this - `getZIndex`: ❌ No coverage - `onPolygonClick`: ❌ No coverage - `remove`: - - [SnippetRegistry.java:40](SnippetRegistry.java#L40) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/SnippetRegistry.java:40](java-app/src/main/java/com/example/snippets/java/SnippetRegistry.java#L40) (Tag: `No Tag`) - `setAltitudeMode`: ❌ No coverage - `setClickListener`: - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L100-L124) (Tag: `maps_android_3d_polygon_extruded_java`) @@ -1730,7 +1730,7 @@ The following non-getter/setter APIs currently have `0` occurrences within this - `getZIndex`: ❌ No coverage - `onPolylineClick`: ❌ No coverage - `remove`: - - [SnippetRegistry.java:39](SnippetRegistry.java#L39) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/SnippetRegistry.java:39](java-app/src/main/java/com/example/snippets/java/SnippetRegistry.java#L39) (Tag: `No Tag`) - `setAltitudeMode`: ❌ No coverage - `setClickListener`: - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L59-L80) (Tag: `maps_android_3d_polyline_add_java`) @@ -1805,7 +1805,7 @@ The following non-getter/setter APIs currently have `0` occurrences within this - `isVisible`: ❌ No coverage - `positionAnchor`: ❌ No coverage - `remove`: - - [SnippetRegistry.java:42](SnippetRegistry.java#L42) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/SnippetRegistry.java:42](java-app/src/main/java/com/example/snippets/java/SnippetRegistry.java#L42) (Tag: `No Tag`) - `removeFn`: ❌ No coverage - `show`: - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L58-L82) (Tag: `maps_android_3d_popover_add_java`) diff --git a/snippets/docs/framework_overview.md b/snippets/docs/framework_overview.md new file mode 100644 index 00000000..776dd7e7 --- /dev/null +++ b/snippets/docs/framework_overview.md @@ -0,0 +1,65 @@ +# 📖 Framework Overview: Snippet Architecture + +This guide details the **Decoupled Architecture** used to maintain lightweight, standalone code snippets that can be dynamically loaded into a runner application without manual manifest linking boilerplates. + +--- + +## 🧩 1. Dynamic Loading via Annotations + +To avoid hardcoded lists inside launching activities (e.g. `when (snippet) { ... }`), the framework uses simple **Runtime Annotations**. + +### **The Anatomy** +1. **`@SnippetGroup`**: Applied at the class level to categorize a series of snippets (e.g. "Polygons", "Camera"). +2. **`@SnippetItem`**: Applied at the function level to denote an individual runnable code extract. + +### **Example (Kotlin)** +```kotlin +@SnippetGroup( + title = "Models", + description = "Snippets demonstrating 3D Model integration." +) +class ModelSnippets(private val context: Context, private val map: TrackedMap3D) { + + @SnippetItem( + title = "1. Basic Model", + description = "Places a GlTF model onto coordinates." + ) + fun addBasicModel() { ... } +} +``` + +### **Why use Annotations?** +- **Reflection Loading**: The runner application uses reflection to crawl the package index for classes carrying coordinate loads. +- **No UI Boilerplate**: Adding a new snippet function immediately populates the UI checklist dynamically without modifying an adapter. + +--- + +## 🛡️ 2. Optional: The Session State Cleaner (Decorator) + +For **Visual Map SDKs** or Canvas overlay rendering engines, added elements (Markers, Shapes) may persist in-memory until explicitly `.remove()` is executed. + +Whenever snippets add nodes that pollute standard coordinate viewframes iteratively, it is helpful to wrap the handler in an optional **Decorator Delegate**: + +### **Visual Case Study Design** +```java +public class TrackedMap3D { + private final GoogleMap3D delegate; + private final List sessionItems = new ArrayList<>(); + + public TrackedMap3D(GoogleMap3D delegate) { this.delegate = delegate; } + + public Marker addMarker(MarkerOptions options) { + Marker marker = delegate.addMarker(options); + if (marker != null) sessionItems.add(marker); // Track reference + return marker; + } + + // Runner App cleans up easily: + public void clear() { for (Object item : sessionItems) { ... } } +} +``` + +### **Applicability** +* **Visual APIs (Maps, 3D Renderers)**: Highly useful for keeping snippets lightweight and free from `.remove()` boilerplates. +* **Pure Data APIs (Places, Geocoding)**: Usually unnecessary since responses are simple asynchronous models directly fetched layout buffers. + diff --git a/snippets/docs/process_guide.md b/snippets/docs/process_guide.md new file mode 100644 index 00000000..73a22875 --- /dev/null +++ b/snippets/docs/process_guide.md @@ -0,0 +1,47 @@ +# 🗺️ Adoption Guide: Replicating Snippets for New SDKs + +This guide provides a step-by-step **Implementation Playbook** for porting this Standalone Snippet & Catalog architecture to a **New SDK module** (e.g., standard Maps Android, Places SDK). + +--- + +## ⏱️ The Workflow Timeline + +Building a scalable snippet index requires executing the following 4 distinct phases in order: + +### **Phase 1: API Indexing & Audit Prep** +The foundation forces AI and analysts to know the absolute checklist index. +1. **Decompile/Index Symbols**: Run `javap` or inspect online Markdown docs to list all Class methods. +2. **Generate `api_manifest.json`**: Feed findings to an AI to create a continuous dictionary checklist. +3. 👉 *Refer to:* [**`tooling_blueprint.md`**](tooling_blueprint.md) + +--- + +### **Phase 2: Architectural Setup (Annotations & Wrappers)** +Establish the runner harness structures to decouple snippet extracts from launcher maintenance. +1. **Create Annotations**: Define `@SnippetGroup` and `@SnippetItem` for dynamic loaders. +2. **Optional Decorators**: If managing persistent states (like Visual Maps), create a `TrackedMap3D` decorator style structure accumulate added items. +3. **Create Runner detail**: Design a layout launcher activity using reflection to dynamic load `@SnippetGroup` loads list adapters list. +4. 👉 *Refer to:* [**`framework_overview.md`**](framework_overview.md) + +--- + +### **Phase 3: Setup Automated Metrics (`catalog_api.py`)** +Before authoring boilerplate coordinates directly, configure the accounting audit tracker script. +1. **Build Parser**: Write a Python script scanning `.java` and `.kt` source nodes finding sign matches. +2. **Incremental checklist setups**: Generate **`CATALOG.md`** representing absolute counts vs deficit gaps below section checklists. +3. 👉 *Refer to:* [**`tooling_blueprint.md`**](tooling_blueprint.md) + +--- + +### **Phase 4: Iterative snippet generation & authors** +Use consecutive prompt triggers sequential iterations AUTHORING coordinate loops matching checklist index deficits iteratively. +1. Verify exact Java/kotlin parity matches. +2. Guarantee UI-threaded state callback alerts inside lambda macros setup structures. +3. 👉 *Refer to:* [**`prompt_pipeline.md`**](prompt_pipeline.md) + +--- + +## 💡 Top 3 Success Checklist +- **Always run bytecode before parser flushes**: Force compiled triggers flawless before counting occurrences accurately. +- **Maintain clean excerpt segments**: Guarantee extract blocks use absolute wrapper indices so juniors copy-paste extracts directly without crashing frameworks. +- **Parity matching sets**: Keep variable nodes matching exactly back bounding coordinate triggers. diff --git a/snippets/docs/prompt_pipeline.md b/snippets/docs/prompt_pipeline.md new file mode 100644 index 00000000..66f19420 --- /dev/null +++ b/snippets/docs/prompt_pipeline.md @@ -0,0 +1,75 @@ +# 💬 The Prompt Pipeline: Building a Snippet Framework + +Use this **4-Stage Prompt Pipeline** to instruct an AI Coding Assistant to build a standalone snippet and cataloging module for a **New SDK**. + +Copy and paste these prompts **one at a time**, waiting for the Assistant to complete and verify each stage before proceeding. + +--- + +### 🟢 **Stage 1: API Audit & Indexing** +> **Goal**: Feed the SDK specification list and generate the Ground Truth JSON dictionary representing all classes/methods. + +```text +You are an expert Tooling Developer. We need to create an API Index map for a new SDK module. + +I will provide you with a list of the public classes and methods (either compiled symbols or documentation). + +Your Task: +1. Create an `api_manifest.json` dictionary. +2. The keys must be the Class names (e.g., "Model", "Polyline"). +3. The values must be a list of non-getter/setter methods (e.g., "setClickListener", "setExtruded"). + +[INSERT SDK REFERENCE OR COMPILED SYMBOLS HERE] +``` + +--- + +### 🔵 **Stage 2: Interface & Decorator Scaffolding** +> **Goal**: Design the Annotations and the Clean-Slate Wrapper (`TrackedMap3D`) to decouple creating snippets from manual session cleanup. + +```text +You are an expert Android Architect. We have an index of SDK methods. Now we need to build the snippet execution harness. + +Your Task: +1. Create two Annotations (`@SnippetGroup`, `@SnippetItem`) to allow reflection crawling of categorized snippet classes dynamically. +2. Create a Decorator Wrapper/Delegate (e.g., `TrackedMap3D` or `TrackedPlacesClient`) wrapping the native SDK handle. +3. This wrapper MUST track added items (Markers, Models, Anchors) in an internal list so the Runner Application can execute `wrapper.clear()` automatically between view switches. + +Output the code for the Annotations and the Decorator Delegate in both Kotlin and Java. +``` + +--- + +### 🟡 **Stage 3: Catalog Script Generation** +> **Goal**: Create the Python script (`catalog_api.py`) that reads `.java`/`.kt` and maps occurrences against `api_manifest.json`. + +```text +You are a Static Analyzer Engineer. We need a script to track which SDK APIs are covered by our documentation. + +Your Task: +1. Create a Python script `catalog_api.py`. +2. It must read `api_manifest.json` as the ground truth checklist list. +3. It must scan `.java` and `.kt` source files inside the snippets module directories, looking for Class.Method calls or extracted tags. +4. Output a `CATALOG.md` file listing a table of API occurrences and accurate line locations. +5. Create a bottom section "Missing API Coverage" for methods with 0 occurrences. + +Write the core parser algorithm robustly dealing with lambda variables extensions and safe-calls. +``` + +--- + +### 🔴 **Stage 4: Code Generation & Parity Loops** +> **Goal**: Iteratively write the actual snippet extracts using the approved catalog and decorator. + +```text +You are a Principal DevRel Developer. We have the Annotations, target Manifest, and Cataloging script setup. + +Your Task: +1. Scan the `CATALOG.md` Missing APIs list. +2. Pick a category topic (e.g., "Camera Controls", "Shapes"). +3. Generate Snippet classes (e.g., `CameraSnippets.kt` and `CameraSnippets.java`) filling this missing deficit gap. +4. Ensure exact step-by-step logic parity between Kotlin and Java. +5. Use the Decorator wrapper created earlier to add elements, and wrap async layout callbacks to dispatch Toast alerts on the UI thread securely. + +Let's start by generating the snippets for [INSERT CATEGORY]. +``` diff --git a/snippets/docs/tooling_blueprint.md b/snippets/docs/tooling_blueprint.md new file mode 100644 index 00000000..8f936112 --- /dev/null +++ b/snippets/docs/tooling_blueprint.md @@ -0,0 +1,73 @@ +# 🛠️ Tooling Blueprint: API Indexing & Cataloging + +To prevent manual checklists from going stale, the framework automates snippet coverage tracking. This is accomplished using a **static code analyzer** mapping compiled SDK endpoints against extracted code blocks. + +--- + +## 📋 1. The API Manifest (`api_manifest.json`) + +Before cataloging snippets, the analyzer needs a "Ground Truth" dictionary of all class methods inside the SDK module suite. + +### **How to generate it:** +If source code is NOT available, run `javap` or `nm` over the compiled `.jar` or `.aar` extracts: + +```bash +# Decompile classes into method lists: +for class in $(find . -name "*.class"); do + javap -p $class >> raw_symbols.txt +done +``` + +### **The Dictionary Structure** +The static analyzer reads a list of objects describing continuous function pointers mapping safely: + +```json +{ + "Model": [ + "setClickListener", + "getScale", + "getPosition" + ], + "Polyline": [ + "setClickListener", + "getWidth" + ] +} +``` + +--- + +## 🐍 2. The Catalog Script (`catalog_api.py`) + +The python parser processes `.java` and `.kt` source files iteratively index extracts. + +### **Algorithm Blueprint** +1. **Extract Tag Buffers**: + * Find full comments containing `[START maps_...]` and `[END maps_...]`. + * Isolate the raw text coordinate segments accurately. +2. **Signature Parsing**: + * Read snippet files looking for calls (e.g., `model.setClickListener`). + * Increment an **Occurrence Dictionary map** (`{"Model.setClickListener": 1}`). +3. **Generate `CATALOG.md`**: + * Create Markdown Tables listing absolute counts. + * If a method has **`0` counts**, listed securely below inside the "Missing API Coverage" deficits layout index to highlight gaps. + +### **Example Layout** +| API Endpoint | Occurrences | Snippets Locations | +| :--- | :--- | :--- | +| `Model.setClickListener` | 1 | `ModelSnippets.kt:74` | +| `Polyline.setClickListener` | 2 | `PolylineSnippets.kt:50`, `PolylineSnippets.java:45` | + +--- + +## 🏃 3. Continuous Updates + +To maintain documentation accuracy, bind the parser execution to a convenient script that compiles the snippets before generating accurate Bytecode indexing: + +```bash +#!/bin/bash +# run_catalog.sh +./gradlew :snippets:compileDebugKotlin +python3 scripts/catalog_api.py +``` +This forces developers to keep methods building flawlessly before sync layouts are flushed backwards. diff --git a/snippets/scripts/catalog_api.py b/snippets/scripts/catalog_api.py index 48e65554..89f25086 100644 --- a/snippets/scripts/catalog_api.py +++ b/snippets/scripts/catalog_api.py @@ -324,11 +324,15 @@ def main(): region_tags = extract_region_tags(SNIPPETS_DIR) usages = parse_javap_output(SNIPPETS_DIR) + # Populate file_map for ALL source files to guarantee full relative paths file_map = {} - for filepath in region_tags.keys(): - basename = os.path.basename(filepath) - rel_path = os.path.relpath(filepath, SNIPPETS_DIR) - file_map[basename] = rel_path + for root, _, filenames in os.walk(SNIPPETS_DIR): + if 'build' in root or '.gradle' in root or 'scripts' in root: continue + for name in filenames: + if name.endswith(('.kt', '.java', '.xml')): + filepath = os.path.join(root, name) + rel_path = os.path.relpath(filepath, SNIPPETS_DIR) + file_map[name] = rel_path catalog_lines = ["# 🗺️ Maps3D API Snippets Catalog\n\n"] catalog_lines.append("This document serves as a comprehensive developer reference and mapping matrix for the 3D Maps SDK features.\n\n") From 85ca4ac97c64f6f6b4b6ca6768d54d943e9be9ba Mon Sep 17 00:00:00 2001 From: dkhawk <107309+dkhawk@users.noreply.github.com> Date: Fri, 20 Mar 2026 12:56:22 -0600 Subject: [PATCH 32/36] tooling(snippets): Split Catalog Index and Coverage Matrix - Updated to write (Index) and (Audit matrix) separately. - Updated documentation indices to reference the split matrix layouts accurately. --- snippets/CATALOG.md | 1762 +--------------------------- snippets/COVERAGE.md | 1757 +++++++++++++++++++++++++++ snippets/README.md | 8 +- snippets/docs/process_guide.md | 4 +- snippets/docs/tooling_blueprint.md | 16 +- snippets/scripts/catalog_api.py | 19 +- 6 files changed, 1785 insertions(+), 1781 deletions(-) create mode 100644 snippets/COVERAGE.md diff --git a/snippets/CATALOG.md b/snippets/CATALOG.md index 98e4509c..68b9480c 100644 --- a/snippets/CATALOG.md +++ b/snippets/CATALOG.md @@ -1,6 +1,6 @@ # 🗺️ Maps3D API Snippets Catalog -This document serves as a comprehensive developer reference and mapping matrix for the 3D Maps SDK features. +This document serves as a comprehensive developer reference mapping high-level concepts directly index extracts. ## 📑 Snippet Concepts Index @@ -227,1763 +227,3 @@ This section maps high-level concepts (groups) to specific demonstration files a - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L94-L118) - Tag: `maps_android_3d_popover_options_java` - ---- - -## 📊 Maps3D API Coverage Matrix - -This matrix ensures that every critical feature in the 3D Maps SDK is actively demonstrated inside a snippet boundary (`// [START ...]`). - -## Kotlin Snippets -### `Camera` -- `getCenter`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt:58](kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt#L58) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L188-L202) (Tag: `maps_android_3d_camera_events_kt`) -- `setCenter`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt:191](kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt#L191) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L137-L176) (Tag: `maps_android_3d_camera_stop_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L235-L259) (Tag: `maps_android_3d_camera_restriction_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L62-L81) (Tag: `maps_android_3d_camera_fly_to_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L93-L125) (Tag: `maps_android_3d_camera_fly_around_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L42-L83) (Tag: `maps_android_3d_init_basic_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:204](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L204) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L136-L166) (Tag: `maps_android_3d_marker_click_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L227-L255) (Tag: `maps_android_3d_marker_glyph_color_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L267-L295) (Tag: `maps_android_3d_marker_glyph_text_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L307-L338) (Tag: `maps_android_3d_marker_glyph_circle_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L53-L82) (Tag: `maps_android_3d_marker_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L94-L124) (Tag: `maps_android_3d_marker_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:84](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L84) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:58](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L58) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:129](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L129) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:188](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L188) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:78](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L78) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:126](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L126) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:74](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L74) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:122](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L122) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:77](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L77) (Tag: `No Tag`) -- `setHeading`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt:197](kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt#L197) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L137-L176) (Tag: `maps_android_3d_camera_stop_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L62-L81) (Tag: `maps_android_3d_camera_fly_to_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L93-L125) (Tag: `maps_android_3d_camera_fly_around_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L42-L83) (Tag: `maps_android_3d_init_basic_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:210](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L210) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L136-L166) (Tag: `maps_android_3d_marker_click_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L227-L255) (Tag: `maps_android_3d_marker_glyph_color_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L267-L295) (Tag: `maps_android_3d_marker_glyph_text_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L307-L338) (Tag: `maps_android_3d_marker_glyph_circle_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L53-L82) (Tag: `maps_android_3d_marker_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L94-L124) (Tag: `maps_android_3d_marker_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:86](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L86) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:60](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L60) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:135](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L135) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:189](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L189) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:84](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L84) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:132](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L132) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:80](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L80) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:124](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L124) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:79](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L79) (Tag: `No Tag`) -- `setRange`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt:198](kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt#L198) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L137-L176) (Tag: `maps_android_3d_camera_stop_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L62-L81) (Tag: `maps_android_3d_camera_fly_to_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L93-L125) (Tag: `maps_android_3d_camera_fly_around_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L42-L83) (Tag: `maps_android_3d_init_basic_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:211](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L211) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L136-L166) (Tag: `maps_android_3d_marker_click_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L227-L255) (Tag: `maps_android_3d_marker_glyph_color_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L267-L295) (Tag: `maps_android_3d_marker_glyph_text_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L307-L338) (Tag: `maps_android_3d_marker_glyph_circle_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L53-L82) (Tag: `maps_android_3d_marker_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L94-L124) (Tag: `maps_android_3d_marker_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:87](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L87) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:61](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L61) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:136](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L136) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:189](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L189) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:85](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L85) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:133](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L133) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:81](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L81) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:125](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L125) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:80](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L80) (Tag: `No Tag`) -- `setRoll`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L137-L176) (Tag: `maps_android_3d_camera_stop_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L62-L81) (Tag: `maps_android_3d_camera_fly_to_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L93-L125) (Tag: `maps_android_3d_camera_fly_around_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L42-L83) (Tag: `maps_android_3d_init_basic_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:189](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L189) (Tag: `No Tag`) -- `setTilt`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt:196](kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt#L196) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L137-L176) (Tag: `maps_android_3d_camera_stop_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L62-L81) (Tag: `maps_android_3d_camera_fly_to_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L93-L125) (Tag: `maps_android_3d_camera_fly_around_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L42-L83) (Tag: `maps_android_3d_init_basic_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:209](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L209) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L136-L166) (Tag: `maps_android_3d_marker_click_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L227-L255) (Tag: `maps_android_3d_marker_glyph_color_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L267-L295) (Tag: `maps_android_3d_marker_glyph_text_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L307-L338) (Tag: `maps_android_3d_marker_glyph_circle_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L53-L82) (Tag: `maps_android_3d_marker_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L94-L124) (Tag: `maps_android_3d_marker_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:85](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L85) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:59](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L59) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:134](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L134) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:189](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L189) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:83](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L83) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:131](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L131) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:79](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L79) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:123](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L123) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:78](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L78) (Tag: `No Tag`) -- `writeToParcel`: ❌ No coverage - -### `CameraRestriction` -- `setBounds`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L235-L259) (Tag: `maps_android_3d_camera_restriction_kt`) -- `setMaxAltitude`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L235-L259) (Tag: `maps_android_3d_camera_restriction_kt`) -- `setMaxHeading`: ❌ No coverage -- `setMaxTilt`: ❌ No coverage -- `setMinAltitude`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L235-L259) (Tag: `maps_android_3d_camera_restriction_kt`) -- `setMinHeading`: ❌ No coverage -- `setMinTilt`: ❌ No coverage -- `writeToParcel`: ❌ No coverage - -### `FlyAroundOptions` -- `getCenter`: ❌ No coverage -- `getDurationInMillis`: ❌ No coverage -- `getRounds`: ❌ No coverage -- `setCenter`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L137-L176) (Tag: `maps_android_3d_camera_stop_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L93-L125) (Tag: `maps_android_3d_camera_fly_around_kt`) -- `setDurationInMillis`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L137-L176) (Tag: `maps_android_3d_camera_stop_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L93-L125) (Tag: `maps_android_3d_camera_fly_around_kt`) -- `setRounds`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L137-L176) (Tag: `maps_android_3d_camera_stop_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L93-L125) (Tag: `maps_android_3d_camera_fly_around_kt`) -- `writeToParcel`: ❌ No coverage - -### `FlyToOptions` -- `getDurationInMillis`: ❌ No coverage -- `getEndCamera`: ❌ No coverage -- `setDurationInMillis`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt:202](kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt#L202) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L137-L176) (Tag: `maps_android_3d_camera_stop_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L62-L81) (Tag: `maps_android_3d_camera_fly_to_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:213](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L213) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L136-L166) (Tag: `maps_android_3d_marker_click_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L227-L255) (Tag: `maps_android_3d_marker_glyph_color_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L267-L295) (Tag: `maps_android_3d_marker_glyph_text_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L307-L338) (Tag: `maps_android_3d_marker_glyph_circle_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L53-L82) (Tag: `maps_android_3d_marker_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L94-L124) (Tag: `maps_android_3d_marker_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:89](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L89) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:63](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L63) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:138](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L138) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:191](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L191) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:87](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L87) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:135](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L135) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:83](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L83) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:127](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L127) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:82](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L82) (Tag: `No Tag`) -- `setEndCamera`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt:201](kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt#L201) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L137-L176) (Tag: `maps_android_3d_camera_stop_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L62-L81) (Tag: `maps_android_3d_camera_fly_to_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:203](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L203) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L136-L166) (Tag: `maps_android_3d_marker_click_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L227-L255) (Tag: `maps_android_3d_marker_glyph_color_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L267-L295) (Tag: `maps_android_3d_marker_glyph_text_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L307-L338) (Tag: `maps_android_3d_marker_glyph_circle_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L53-L82) (Tag: `maps_android_3d_marker_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L94-L124) (Tag: `maps_android_3d_marker_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:83](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L83) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:57](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L57) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:128](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L128) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:187](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L187) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:77](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L77) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:125](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L125) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:73](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L73) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:121](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L121) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:76](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L76) (Tag: `No Tag`) -- `writeToParcel`: ❌ No coverage - -### `Glyph` -- `equals`: ❌ No coverage -- `fromCircle`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L307-L338) (Tag: `maps_android_3d_marker_glyph_circle_kt`) -- `fromColor`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:180](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L180) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L227-L255) (Tag: `maps_android_3d_marker_glyph_color_kt`) -- `fromText`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L267-L295) (Tag: `maps_android_3d_marker_glyph_text_kt`) -- `getColor`: ❌ No coverage -- `getImage`: ❌ No coverage -- `getText`: ❌ No coverage -- `hashCode`: ❌ No coverage -- `setColor`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L307-L338) (Tag: `maps_android_3d_marker_glyph_circle_kt`) -- `setImage`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:182](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L182) (Tag: `No Tag`) -- `setText`: ❌ No coverage -- `writeToParcel`: ❌ No coverage - -### `GoogleMap3D` -- `addMarker`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt:31](kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt#L31) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:200](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L200) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L136-L166) (Tag: `maps_android_3d_marker_click_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L227-L255) (Tag: `maps_android_3d_marker_glyph_color_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L267-L295) (Tag: `maps_android_3d_marker_glyph_text_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L307-L338) (Tag: `maps_android_3d_marker_glyph_circle_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L53-L82) (Tag: `maps_android_3d_marker_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L94-L124) (Tag: `maps_android_3d_marker_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L48-L73) (Tag: `maps_android_3d_popover_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L95-L118) (Tag: `maps_android_3d_popover_options_kt`) -- `addModel`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt:49](kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt#L49) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L52-L79) (Tag: `maps_android_3d_model_add_kt`) -- `addPolygon`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt:43](kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt#L43) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L100-L125) (Tag: `maps_android_3d_polygon_extruded_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L151-L184) (Tag: `maps_android_3d_polygon_hole_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L49-L74) (Tag: `maps_android_3d_polygon_add_kt`) -- `addPolyline`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt:37](kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt#L37) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L48-L70) (Tag: `maps_android_3d_polyline_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L96-L122) (Tag: `maps_android_3d_polyline_options_kt`) -- `addPopover`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt:55](kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt#L55) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L48-L73) (Tag: `maps_android_3d_popover_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L95-L118) (Tag: `maps_android_3d_popover_options_kt`) -- `flyCameraAround`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt:68](kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt#L68) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L137-L176) (Tag: `maps_android_3d_camera_stop_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L93-L125) (Tag: `maps_android_3d_camera_fly_around_kt`) -- `flyCameraTo`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt:200](kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt#L200) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt:67](kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt#L67) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L137-L176) (Tag: `maps_android_3d_camera_stop_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L62-L81) (Tag: `maps_android_3d_camera_fly_to_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:202](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L202) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L136-L166) (Tag: `maps_android_3d_marker_click_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L227-L255) (Tag: `maps_android_3d_marker_glyph_color_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L267-L295) (Tag: `maps_android_3d_marker_glyph_text_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L307-L338) (Tag: `maps_android_3d_marker_glyph_circle_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L53-L82) (Tag: `maps_android_3d_marker_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L94-L124) (Tag: `maps_android_3d_marker_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:82](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L82) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:56](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L56) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:127](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L127) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:186](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L186) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:76](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L76) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:124](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L124) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:72](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L72) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:120](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L120) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:75](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L75) (Tag: `No Tag`) -- `getCamera`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt:57](kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt#L57) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt:65](kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt#L65) (Tag: `No Tag`) -- `getCameraRestriction`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt:72](kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt#L72) (Tag: `No Tag`) -- `getMapMode`: ❌ No coverage -- `setCamera`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt:60](kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt#L60) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L235-L259) (Tag: `maps_android_3d_camera_restriction_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L93-L125) (Tag: `maps_android_3d_camera_fly_around_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L42-L83) (Tag: `maps_android_3d_init_basic_kt`) -- `setCameraAnimationEndListener`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/utils/MapExtensions.kt:19](kotlin-app/src/main/java/com/example/snippets/kotlin/utils/MapExtensions.kt#L19) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/utils/MapExtensions.kt:20](kotlin-app/src/main/java/com/example/snippets/kotlin/utils/MapExtensions.kt#L20) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/utils/MapExtensions.kt:27](kotlin-app/src/main/java/com/example/snippets/kotlin/utils/MapExtensions.kt#L27) (Tag: `No Tag`) -- `setCameraChangedListener`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt:61](kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt#L61) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:206](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L206) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L188-L202) (Tag: `maps_android_3d_camera_events_kt`) -- `setCameraRestriction`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt:71](kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt#L71) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L235-L259) (Tag: `maps_android_3d_camera_restriction_kt`) -- `setMap3DClickListener`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt:62](kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt#L62) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L44-L53) (Tag: `maps_android_3d_place_click_kt`) -- `setMapMode`: ❌ No coverage -- `setOnMapReadyListener`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt:127](kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt#L127) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt:69](kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt#L69) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L94-L114) (Tag: `maps_android_3d_init_listeners_kt`) -- `setOnMapSteadyListener`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt:70](kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt#L70) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L219-L223) (Tag: `maps_android_3d_camera_steady_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L93-L125) (Tag: `maps_android_3d_camera_fly_around_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L94-L114) (Tag: `maps_android_3d_init_listeners_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/utils/MapExtensions.kt:40](kotlin-app/src/main/java/com/example/snippets/kotlin/utils/MapExtensions.kt#L40) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/utils/MapExtensions.kt:42](kotlin-app/src/main/java/com/example/snippets/kotlin/utils/MapExtensions.kt#L42) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/utils/MapExtensions.kt:51](kotlin-app/src/main/java/com/example/snippets/kotlin/utils/MapExtensions.kt#L51) (Tag: `No Tag`) -- `stopCameraAnimation`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt:66](kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt#L66) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L137-L176) (Tag: `maps_android_3d_camera_stop_kt`) - -### `Hole` -- `getVertices`: ❌ No coverage -- `setVertices`: ❌ No coverage -- `writeToParcel`: ❌ No coverage - -### `ImageView` -- `equals`: ❌ No coverage -- `getResourceId`: ❌ No coverage -- `hashCode`: ❌ No coverage -- `setResourceId`: ❌ No coverage -- `writeToParcel`: ❌ No coverage - -### `LatLngAltitude` -- `getAltitude`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt:73](kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt#L73) (Tag: `No Tag`) -- `getLatitude`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt:71](kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt#L71) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:205](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L205) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L227-L255) (Tag: `maps_android_3d_marker_glyph_color_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L267-L295) (Tag: `maps_android_3d_marker_glyph_text_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L307-L338) (Tag: `maps_android_3d_marker_glyph_circle_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L53-L82) (Tag: `maps_android_3d_marker_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L94-L124) (Tag: `maps_android_3d_marker_options_kt`) -- `getLongitude`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt:72](kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt#L72) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:206](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L206) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L227-L255) (Tag: `maps_android_3d_marker_glyph_color_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L267-L295) (Tag: `maps_android_3d_marker_glyph_text_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L307-L338) (Tag: `maps_android_3d_marker_glyph_circle_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L53-L82) (Tag: `maps_android_3d_marker_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L94-L124) (Tag: `maps_android_3d_marker_options_kt`) -- `getPosition`: ❌ No coverage -- `setAltitude`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt:194](kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt#L194) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L137-L176) (Tag: `maps_android_3d_camera_stop_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L235-L259) (Tag: `maps_android_3d_camera_restriction_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L62-L81) (Tag: `maps_android_3d_camera_fly_to_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L93-L125) (Tag: `maps_android_3d_camera_fly_around_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L42-L83) (Tag: `maps_android_3d_init_basic_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:188](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L188) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:207](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L207) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L136-L166) (Tag: `maps_android_3d_marker_click_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L227-L255) (Tag: `maps_android_3d_marker_glyph_color_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L267-L295) (Tag: `maps_android_3d_marker_glyph_text_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L307-L338) (Tag: `maps_android_3d_marker_glyph_circle_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L53-L82) (Tag: `maps_android_3d_marker_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L94-L124) (Tag: `maps_android_3d_marker_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L52-L79) (Tag: `maps_android_3d_model_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:58](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L58) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:132](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L132) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:188](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L188) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:81](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L81) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L100-L125) (Tag: `maps_android_3d_polygon_extruded_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L151-L184) (Tag: `maps_android_3d_polygon_hole_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L49-L74) (Tag: `maps_android_3d_polygon_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:129](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L129) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:77](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L77) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L48-L70) (Tag: `maps_android_3d_polyline_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L96-L122) (Tag: `maps_android_3d_polyline_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:122](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L122) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:77](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L77) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L48-L73) (Tag: `maps_android_3d_popover_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L95-L118) (Tag: `maps_android_3d_popover_options_kt`) -- `setLatitude`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt:192](kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt#L192) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L137-L176) (Tag: `maps_android_3d_camera_stop_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L235-L259) (Tag: `maps_android_3d_camera_restriction_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L62-L81) (Tag: `maps_android_3d_camera_fly_to_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L93-L125) (Tag: `maps_android_3d_camera_fly_around_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L42-L83) (Tag: `maps_android_3d_init_basic_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:186](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L186) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:205](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L205) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L136-L166) (Tag: `maps_android_3d_marker_click_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L227-L255) (Tag: `maps_android_3d_marker_glyph_color_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L267-L295) (Tag: `maps_android_3d_marker_glyph_text_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L307-L338) (Tag: `maps_android_3d_marker_glyph_circle_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L53-L82) (Tag: `maps_android_3d_marker_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L94-L124) (Tag: `maps_android_3d_marker_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L52-L79) (Tag: `maps_android_3d_model_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:58](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L58) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:130](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L130) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:188](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L188) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:79](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L79) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L100-L125) (Tag: `maps_android_3d_polygon_extruded_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L151-L184) (Tag: `maps_android_3d_polygon_hole_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L49-L74) (Tag: `maps_android_3d_polygon_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:127](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L127) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:75](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L75) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L48-L70) (Tag: `maps_android_3d_polyline_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L96-L122) (Tag: `maps_android_3d_polyline_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:122](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L122) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:77](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L77) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L48-L73) (Tag: `maps_android_3d_popover_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L95-L118) (Tag: `maps_android_3d_popover_options_kt`) -- `setLongitude`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt:193](kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt#L193) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L137-L176) (Tag: `maps_android_3d_camera_stop_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L235-L259) (Tag: `maps_android_3d_camera_restriction_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L62-L81) (Tag: `maps_android_3d_camera_fly_to_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L93-L125) (Tag: `maps_android_3d_camera_fly_around_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L42-L83) (Tag: `maps_android_3d_init_basic_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:187](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L187) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:206](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L206) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L136-L166) (Tag: `maps_android_3d_marker_click_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L227-L255) (Tag: `maps_android_3d_marker_glyph_color_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L267-L295) (Tag: `maps_android_3d_marker_glyph_text_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L307-L338) (Tag: `maps_android_3d_marker_glyph_circle_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L53-L82) (Tag: `maps_android_3d_marker_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L94-L124) (Tag: `maps_android_3d_marker_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L52-L79) (Tag: `maps_android_3d_model_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:58](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L58) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:131](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L131) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:188](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L188) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:80](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L80) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L100-L125) (Tag: `maps_android_3d_polygon_extruded_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L151-L184) (Tag: `maps_android_3d_polygon_hole_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L49-L74) (Tag: `maps_android_3d_polygon_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:128](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L128) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:76](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L76) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L48-L70) (Tag: `maps_android_3d_polyline_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L96-L122) (Tag: `maps_android_3d_polyline_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:122](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L122) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:77](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L77) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L48-L73) (Tag: `maps_android_3d_popover_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L95-L118) (Tag: `maps_android_3d_popover_options_kt`) -- `writeToParcel`: ❌ No coverage - -### `LatLngBounds` -- `getNorthEastLat`: ❌ No coverage -- `getNorthEastLng`: ❌ No coverage -- `getSouthWestLat`: ❌ No coverage -- `getSouthWestLng`: ❌ No coverage -- `setNorthEastLat`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L235-L259) (Tag: `maps_android_3d_camera_restriction_kt`) -- `setNorthEastLng`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L235-L259) (Tag: `maps_android_3d_camera_restriction_kt`) -- `setSouthWestLat`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L235-L259) (Tag: `maps_android_3d_camera_restriction_kt`) -- `setSouthWestLng`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L235-L259) (Tag: `maps_android_3d_camera_restriction_kt`) -- `writeToParcel`: ❌ No coverage - -### `Map3DOptions` -- `attributes`: ❌ No coverage -- `bounds`: ❌ No coverage -- `centerAlt`: ❌ No coverage -- `centerLat`: ❌ No coverage -- `centerLng`: ❌ No coverage -- `defaultUiDisabled`: ❌ No coverage -- `fromAttributeSet`: ❌ No coverage -- `getAttributes`: ❌ No coverage -- `getBounds`: ❌ No coverage -- `getCenterAlt`: ❌ No coverage -- `getCenterLat`: ❌ No coverage -- `getCenterLng`: ❌ No coverage -- `getDefaultUiDisabled`: ❌ No coverage -- `getHeading`: ❌ No coverage -- `getMapId`: ❌ No coverage -- `getMapMode`: ❌ No coverage -- `getMaxAltitude`: ❌ No coverage -- `getMaxHeading`: ❌ No coverage -- `getMaxTilt`: ❌ No coverage -- `getMinAltitude`: ❌ No coverage -- `getMinHeading`: ❌ No coverage -- `getMinTilt`: ❌ No coverage -- `getOptions`: ❌ No coverage -- `getRange`: ❌ No coverage -- `getRoll`: ❌ No coverage -- `getTilt`: ❌ No coverage -- `heading`: ❌ No coverage -- `mapId`: ❌ No coverage -- `mapMode`: ❌ No coverage -- `maxAltitude`: ❌ No coverage -- `maxHeading`: ❌ No coverage -- `maxTilt`: ❌ No coverage -- `minAltitude`: ❌ No coverage -- `minHeading`: ❌ No coverage -- `minTilt`: ❌ No coverage -- `options`: ❌ No coverage -- `range`: ❌ No coverage -- `roll`: ❌ No coverage -- `tilt`: ❌ No coverage - -### `Map3DView` -- `getMap3DViewAsync`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt:122](kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt#L122) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L42-L83) (Tag: `maps_android_3d_init_basic_kt`) -- `getOverlayView`: ❌ No coverage -- `getParams`: ❌ No coverage -- `overlayView`: ❌ No coverage -- `params`: ❌ No coverage -- `setParams`: ❌ No coverage - -### `Marker` -- `getAltitudeMode`: ❌ No coverage -- `getCollisionBehavior`: ❌ No coverage -- `getDrawsWhenOccluded`: ❌ No coverage -- `getId`: ❌ No coverage -- `getLabel`: ❌ No coverage -- `getPosition`: ❌ No coverage -- `getSizePreserved`: ❌ No coverage -- `getUrl`: ❌ No coverage -- `getZIndex`: ❌ No coverage -- `isExtruded`: ❌ No coverage -- `onMarkerClick`: ❌ No coverage -- `remove`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/SnippetRegistry.kt:60](kotlin-app/src/main/java/com/example/snippets/kotlin/SnippetRegistry.kt#L60) (Tag: `No Tag`) -- `setAltitudeMode`: ❌ No coverage -- `setClickListener`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L136-L166) (Tag: `maps_android_3d_marker_click_kt`) -- `setCollisionBehavior`: ❌ No coverage -- `setDrawsWhenOccluded`: ❌ No coverage -- `setExtruded`: ❌ No coverage -- `setLabel`: ❌ No coverage -- `setPosition`: ❌ No coverage -- `setSizePreserved`: ❌ No coverage -- `setUrl`: ❌ No coverage -- `setZIndex`: ❌ No coverage - -### `MarkerOptions` -- `getAltitudeMode`: ❌ No coverage -- `getCollisionBehavior`: ❌ No coverage -- `getId`: ❌ No coverage -- `getLabel`: ❌ No coverage -- `getPosition`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:205](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L205) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:206](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L206) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L227-L255) (Tag: `maps_android_3d_marker_glyph_color_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L267-L295) (Tag: `maps_android_3d_marker_glyph_text_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L307-L338) (Tag: `maps_android_3d_marker_glyph_circle_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L94-L124) (Tag: `maps_android_3d_marker_options_kt`) -- `getZIndex`: ❌ No coverage -- `isDrawnWhenOccluded`: ❌ No coverage -- `isExtruded`: ❌ No coverage -- `isSizePreserved`: ❌ No coverage -- `setAltitudeMode`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L94-L124) (Tag: `maps_android_3d_marker_options_kt`) -- `setCollisionBehavior`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L94-L124) (Tag: `maps_android_3d_marker_options_kt`) -- `setDrawnWhenOccluded`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L94-L124) (Tag: `maps_android_3d_marker_options_kt`) -- `setExtruded`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L94-L124) (Tag: `maps_android_3d_marker_options_kt`) -- `setId`: ❌ No coverage -- `setLabel`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:190](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L190) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L227-L255) (Tag: `maps_android_3d_marker_glyph_color_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L267-L295) (Tag: `maps_android_3d_marker_glyph_text_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L307-L338) (Tag: `maps_android_3d_marker_glyph_circle_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L53-L82) (Tag: `maps_android_3d_marker_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L94-L124) (Tag: `maps_android_3d_marker_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L95-L118) (Tag: `maps_android_3d_popover_options_kt`) -- `setPosition`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:185](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L185) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L136-L166) (Tag: `maps_android_3d_marker_click_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L227-L255) (Tag: `maps_android_3d_marker_glyph_color_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L267-L295) (Tag: `maps_android_3d_marker_glyph_text_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L307-L338) (Tag: `maps_android_3d_marker_glyph_circle_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L53-L82) (Tag: `maps_android_3d_marker_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L94-L124) (Tag: `maps_android_3d_marker_options_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L48-L73) (Tag: `maps_android_3d_popover_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L95-L118) (Tag: `maps_android_3d_popover_options_kt`) -- `setSizePreserved`: ❌ No coverage -- `setZIndex`: ❌ No coverage - -### `MarkerOptions.that` -- `getStyle`: ❌ No coverage -- `setStyle`: ❌ No coverage -- `writeToParcel`: ❌ No coverage - -### `MarkerStyle` -- `equals`: ❌ No coverage -- `getImageView`: ❌ No coverage -- `getPinConfiguration`: ❌ No coverage -- `hashCode`: ❌ No coverage -- `writeToParcel`: ❌ No coverage - -### `Model` -- `getAltitudeMode`: ❌ No coverage -- `getId`: ❌ No coverage -- `getOrientation`: ❌ No coverage -- `getPosition`: ❌ No coverage -- `getScale`: ❌ No coverage -- `getUrl`: ❌ No coverage -- `onModelClick`: ❌ No coverage -- `remove`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/SnippetRegistry.kt:63](kotlin-app/src/main/java/com/example/snippets/kotlin/SnippetRegistry.kt#L63) (Tag: `No Tag`) -- `setAltitudeMode`: ❌ No coverage -- `setClickListener`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L52-L79) (Tag: `maps_android_3d_model_add_kt`) -- `setOrientation`: ❌ No coverage -- `setPosition`: ❌ No coverage -- `setScale`: ❌ No coverage -- `setUrl`: ❌ No coverage - -### `ModelOptions` -- `getAltitudeMode`: ❌ No coverage -- `getId`: ❌ No coverage -- `getOrientation`: ❌ No coverage -- `getPosition`: ❌ No coverage -- `getScale`: ❌ No coverage -- `getUrl`: ❌ No coverage -- `setAltitudeMode`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L52-L79) (Tag: `maps_android_3d_model_add_kt`) -- `setId`: ❌ No coverage -- `setOrientation`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L52-L79) (Tag: `maps_android_3d_model_add_kt`) -- `setPosition`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L52-L79) (Tag: `maps_android_3d_model_add_kt`) -- `setScale`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L52-L79) (Tag: `maps_android_3d_model_add_kt`) -- `setUrl`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L52-L79) (Tag: `maps_android_3d_model_add_kt`) -- `writeToParcel`: ❌ No coverage - -### `Orientation` -- `getHeading`: ❌ No coverage -- `getRoll`: ❌ No coverage -- `getTilt`: ❌ No coverage -- `setHeading`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L52-L79) (Tag: `maps_android_3d_model_add_kt`) -- `setRoll`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L52-L79) (Tag: `maps_android_3d_model_add_kt`) -- `setTilt`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L52-L79) (Tag: `maps_android_3d_model_add_kt`) -- `writeToParcel`: ❌ No coverage - -### `PinConfiguration` -- `builder`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:192](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L192) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L227-L255) (Tag: `maps_android_3d_marker_glyph_color_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L267-L295) (Tag: `maps_android_3d_marker_glyph_text_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L307-L338) (Tag: `maps_android_3d_marker_glyph_circle_kt`) -- `equals`: ❌ No coverage -- `getBackgroundColor`: ❌ No coverage -- `getBorderColor`: ❌ No coverage -- `getGlyph`: ❌ No coverage -- `getScale`: ❌ No coverage -- `hashCode`: ❌ No coverage -- `setBackgroundColor`: ❌ No coverage -- `setBorderColor`: ❌ No coverage -- `setGlyph`: ❌ No coverage -- `setScale`: ❌ No coverage -- `writeToParcel`: ❌ No coverage - -### `PinConfiguration.Builder` -- `build`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:197](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L197) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L227-L255) (Tag: `maps_android_3d_marker_glyph_color_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L267-L295) (Tag: `maps_android_3d_marker_glyph_text_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L307-L338) (Tag: `maps_android_3d_marker_glyph_circle_kt`) -- `setBackgroundColor`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:195](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L195) (Tag: `No Tag`) -- `setBorderColor`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:196](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L196) (Tag: `No Tag`) -- `setGlyph`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:194](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L194) (Tag: `No Tag`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L227-L255) (Tag: `maps_android_3d_marker_glyph_color_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L267-L295) (Tag: `maps_android_3d_marker_glyph_text_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L307-L338) (Tag: `maps_android_3d_marker_glyph_circle_kt`) -- `setScale`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:193](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L193) (Tag: `No Tag`) - -### `Polygon` -- `getAltitudeMode`: ❌ No coverage -- `getDrawsOccludedSegments`: ❌ No coverage -- `getExtruded`: ❌ No coverage -- `getFillColor`: ❌ No coverage -- `getGeodesic`: ❌ No coverage -- `getId`: ❌ No coverage -- `getInnerCoordinates`: ❌ No coverage -- `getInnerPaths`: ❌ No coverage -- `getOuterCoordinates`: ❌ No coverage -- `getPath`: ❌ No coverage -- `getStrokeColor`: ❌ No coverage -- `getStrokeWidth`: ❌ No coverage -- `getZIndex`: ❌ No coverage -- `onPolygonClick`: ❌ No coverage -- `remove`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/SnippetRegistry.kt:62](kotlin-app/src/main/java/com/example/snippets/kotlin/SnippetRegistry.kt#L62) (Tag: `No Tag`) -- `setAltitudeMode`: ❌ No coverage -- `setClickListener`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L100-L125) (Tag: `maps_android_3d_polygon_extruded_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L151-L184) (Tag: `maps_android_3d_polygon_hole_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L49-L74) (Tag: `maps_android_3d_polygon_add_kt`) -- `setDrawsOccludedSegments`: ❌ No coverage -- `setExtruded`: ❌ No coverage -- `setFillColor`: ❌ No coverage -- `setGeodesic`: ❌ No coverage -- `setInnerCoordinates`: ❌ No coverage -- `setInnerPaths`: ❌ No coverage -- `setOuterCoordinates`: ❌ No coverage -- `setPath`: ❌ No coverage -- `setStrokeColor`: ❌ No coverage -- `setStrokeWidth`: ❌ No coverage -- `setZIndex`: ❌ No coverage - -### `PolygonOptions` -- `getAltitudeMode`: ❌ No coverage -- `getDrawsOccludedSegments`: ❌ No coverage -- `getExtruded`: ❌ No coverage -- `getFillColor`: ❌ No coverage -- `getGeodesic`: ❌ No coverage -- `getId`: ❌ No coverage -- `getInnerPaths`: ❌ No coverage -- `getPath`: ❌ No coverage -- `getStrokeColor`: ❌ No coverage -- `getStrokeWidth`: ❌ No coverage -- `getZIndex`: ❌ No coverage -- `setAltitudeMode`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L100-L125) (Tag: `maps_android_3d_polygon_extruded_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L151-L184) (Tag: `maps_android_3d_polygon_hole_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L49-L74) (Tag: `maps_android_3d_polygon_add_kt`) -- `setDrawsOccludedSegments`: ❌ No coverage -- `setExtruded`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L100-L125) (Tag: `maps_android_3d_polygon_extruded_kt`) -- `setFillColor`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L100-L125) (Tag: `maps_android_3d_polygon_extruded_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L151-L184) (Tag: `maps_android_3d_polygon_hole_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L49-L74) (Tag: `maps_android_3d_polygon_add_kt`) -- `setGeodesic`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L100-L125) (Tag: `maps_android_3d_polygon_extruded_kt`) -- `setId`: ❌ No coverage -- `setInnerPaths`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L151-L184) (Tag: `maps_android_3d_polygon_hole_kt`) -- `setPath`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L100-L125) (Tag: `maps_android_3d_polygon_extruded_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L151-L184) (Tag: `maps_android_3d_polygon_hole_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L49-L74) (Tag: `maps_android_3d_polygon_add_kt`) -- `setStrokeColor`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L49-L74) (Tag: `maps_android_3d_polygon_add_kt`) -- `setStrokeWidth`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L49-L74) (Tag: `maps_android_3d_polygon_add_kt`) -- `setZIndex`: ❌ No coverage -- `writeToParcel`: ❌ No coverage - -### `Polyline` -- `getAltitudeMode`: ❌ No coverage -- `getCoordinates`: ❌ No coverage -- `getDrawsOccludedSegments`: ❌ No coverage -- `getGeodesic`: ❌ No coverage -- `getId`: ❌ No coverage -- `getOuterColor`: ❌ No coverage -- `getOuterWidth`: ❌ No coverage -- `getPath`: ❌ No coverage -- `getStrokeColor`: ❌ No coverage -- `getStrokeWidth`: ❌ No coverage -- `getZIndex`: ❌ No coverage -- `onPolylineClick`: ❌ No coverage -- `remove`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/SnippetRegistry.kt:61](kotlin-app/src/main/java/com/example/snippets/kotlin/SnippetRegistry.kt#L61) (Tag: `No Tag`) -- `setAltitudeMode`: ❌ No coverage -- `setClickListener`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L48-L70) (Tag: `maps_android_3d_polyline_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L96-L122) (Tag: `maps_android_3d_polyline_options_kt`) -- `setCoordinates`: ❌ No coverage -- `setDrawsOccludedSegments`: ❌ No coverage -- `setGeodesic`: ❌ No coverage -- `setOuterColor`: ❌ No coverage -- `setOuterWidth`: ❌ No coverage -- `setPath`: ❌ No coverage -- `setStrokeColor`: ❌ No coverage -- `setStrokeWidth`: ❌ No coverage -- `setZIndex`: ❌ No coverage - -### `PolylineOptions` -- `getAltitudeMode`: ❌ No coverage -- `getDrawsOccludedSegments`: ❌ No coverage -- `getExtruded`: ❌ No coverage -- `getGeodesic`: ❌ No coverage -- `getId`: ❌ No coverage -- `getOuterColor`: ❌ No coverage -- `getOuterWidth`: ❌ No coverage -- `getPath`: ❌ No coverage -- `getStrokeColor`: ❌ No coverage -- `getStrokeWidth`: ❌ No coverage -- `getZIndex`: ❌ No coverage -- `setAltitudeMode`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L48-L70) (Tag: `maps_android_3d_polyline_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L96-L122) (Tag: `maps_android_3d_polyline_options_kt`) -- `setDrawsOccludedSegments`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L96-L122) (Tag: `maps_android_3d_polyline_options_kt`) -- `setExtruded`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L96-L122) (Tag: `maps_android_3d_polyline_options_kt`) -- `setGeodesic`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L96-L122) (Tag: `maps_android_3d_polyline_options_kt`) -- `setId`: ❌ No coverage -- `setOuterColor`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L96-L122) (Tag: `maps_android_3d_polyline_options_kt`) -- `setOuterWidth`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L96-L122) (Tag: `maps_android_3d_polyline_options_kt`) -- `setPath`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L48-L70) (Tag: `maps_android_3d_polyline_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L96-L122) (Tag: `maps_android_3d_polyline_options_kt`) -- `setStrokeColor`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L48-L70) (Tag: `maps_android_3d_polyline_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L96-L122) (Tag: `maps_android_3d_polyline_options_kt`) -- `setStrokeWidth`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L48-L70) (Tag: `maps_android_3d_polyline_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L96-L122) (Tag: `maps_android_3d_polyline_options_kt`) -- `setZIndex`: ❌ No coverage -- `writeToParcel`: ❌ No coverage - -### `Popover` -- `altitudeMode`: ❌ No coverage -- `anchorId`: ❌ No coverage -- `anchorOffset`: ❌ No coverage -- `autoCloseEnabled`: ❌ No coverage -- `autoPanEnabled`: ❌ No coverage -- `autoPanFn`: ❌ No coverage -- `content`: ❌ No coverage -- `getAltitudeMode`: ❌ No coverage -- `getAnchorId`: ❌ No coverage -- `getAnchorOffset`: ❌ No coverage -- `getAutoCloseEnabled`: ❌ No coverage -- `getAutoPanEnabled`: ❌ No coverage -- `getAutoPanFn`: ❌ No coverage -- `getContent`: ❌ No coverage -- `getIsVisible`: ❌ No coverage -- `getPositionAnchor`: ❌ No coverage -- `getRemoveFn`: ❌ No coverage -- `hide`: ❌ No coverage -- `isVisible`: ❌ No coverage -- `positionAnchor`: ❌ No coverage -- `remove`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/SnippetRegistry.kt:64](kotlin-app/src/main/java/com/example/snippets/kotlin/SnippetRegistry.kt#L64) (Tag: `No Tag`) -- `removeFn`: ❌ No coverage -- `show`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L48-L73) (Tag: `maps_android_3d_popover_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L95-L118) (Tag: `maps_android_3d_popover_options_kt`) -- `toggle`: ❌ No coverage - -### `PopoverOptions` -- `getAltitudeMode`: ❌ No coverage -- `getAnchorOffset`: ❌ No coverage -- `getAutoCloseEnabled`: ❌ No coverage -- `getAutoPanEnabled`: ❌ No coverage -- `getContent`: ❌ No coverage -- `getPopoverStyle`: ❌ No coverage -- `getPositionAnchor`: ❌ No coverage -- `setAltitudeMode`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L48-L73) (Tag: `maps_android_3d_popover_add_kt`) -- `setAnchorOffset`: ❌ No coverage -- `setAutoCloseEnabled`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L95-L118) (Tag: `maps_android_3d_popover_options_kt`) -- `setAutoPanEnabled`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L95-L118) (Tag: `maps_android_3d_popover_options_kt`) -- `setContent`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L48-L73) (Tag: `maps_android_3d_popover_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L95-L118) (Tag: `maps_android_3d_popover_options_kt`) -- `setPopoverStyle`: ❌ No coverage -- `setPositionAnchor`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L48-L73) (Tag: `maps_android_3d_popover_add_kt`) - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L95-L118) (Tag: `maps_android_3d_popover_options_kt`) - -### `PopoverShadow` -- `getColor`: ❌ No coverage -- `getOffsetX`: ❌ No coverage -- `getOffsetY`: ❌ No coverage -- `getRadius`: ❌ No coverage -- `setColor`: ❌ No coverage -- `setOffsetX`: ❌ No coverage -- `setOffsetY`: ❌ No coverage -- `setRadius`: ❌ No coverage - -### `PopoverStyle` -- `getBackgroundColor`: ❌ No coverage -- `getBorderRadius`: ❌ No coverage -- `getPadding`: ❌ No coverage -- `getShadow`: ❌ No coverage -- `setBackgroundColor`: ❌ No coverage -- `setBorderRadius`: ❌ No coverage -- `setPadding`: ❌ No coverage -- `setShadow`: ❌ No coverage - -### `Validators.for` -- `Anchorable`: ❌ No coverage -- `Camera`: ❌ No coverage -- `CameraRestriction`: ❌ No coverage -- `FlyAroundOptions`: ❌ No coverage -- `FlyToOptions`: ❌ No coverage -- `Hole`: ❌ No coverage -- `LatLngAltitude`: ❌ No coverage -- `LatLngBounds`: ❌ No coverage -- `Map3DOptions`: ❌ No coverage -- `MarkerOptions`: ❌ No coverage -- `ModelOptions`: ❌ No coverage -- `Orientation`: ❌ No coverage -- `PolygonOptions`: ❌ No coverage -- `PolylineOptions`: ❌ No coverage -- `PopoverOptions`: ❌ No coverage -- `Vector3D`: ❌ No coverage -- `requireNonNegative`: ❌ No coverage -- `validateAltitude`: ❌ No coverage -- `validateFinite`: ❌ No coverage -- `validateHeading`: ❌ No coverage -- `validateLatitude`: ❌ No coverage -- `validateLongitude`: ❌ No coverage -- `validateRange`: ❌ No coverage -- `validateRoll`: ❌ No coverage -- `validateTilt`: ❌ No coverage - -### `Vector3D` -- `getX`: ❌ No coverage -- `getY`: ❌ No coverage -- `getZ`: ❌ No coverage -- `setX`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L52-L79) (Tag: `maps_android_3d_model_add_kt`) -- `setY`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L52-L79) (Tag: `maps_android_3d_model_add_kt`) -- `setZ`: - - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L52-L79) (Tag: `maps_android_3d_model_add_kt`) -- `writeToParcel`: ❌ No coverage - -### Missing Extracted API Coverage (Kotlin Snippets) -The following non-getter/setter APIs currently have `0` occurrences within this section: - -- `Camera.writeToParcel` -- `CameraRestriction.writeToParcel` -- `FlyAroundOptions.writeToParcel` -- `FlyToOptions.writeToParcel` -- `Glyph.equals` -- `Glyph.hashCode` -- `Glyph.writeToParcel` -- `Hole.writeToParcel` -- `ImageView.equals` -- `ImageView.hashCode` -- `ImageView.writeToParcel` -- `LatLngAltitude.writeToParcel` -- `LatLngBounds.writeToParcel` -- `Map3DOptions.attributes` -- `Map3DOptions.bounds` -- `Map3DOptions.centerAlt` -- `Map3DOptions.centerLat` -- `Map3DOptions.centerLng` -- `Map3DOptions.defaultUiDisabled` -- `Map3DOptions.fromAttributeSet` -- `Map3DOptions.heading` -- `Map3DOptions.mapId` -- `Map3DOptions.mapMode` -- `Map3DOptions.maxAltitude` -- `Map3DOptions.maxHeading` -- `Map3DOptions.maxTilt` -- `Map3DOptions.minAltitude` -- `Map3DOptions.minHeading` -- `Map3DOptions.minTilt` -- `Map3DOptions.options` -- `Map3DOptions.range` -- `Map3DOptions.roll` -- `Map3DOptions.tilt` -- `Map3DView.overlayView` -- `Map3DView.params` -- `Marker.isExtruded` -- `Marker.onMarkerClick` -- `MarkerOptions.isDrawnWhenOccluded` -- `MarkerOptions.isExtruded` -- `MarkerOptions.isSizePreserved` -- `MarkerOptions.that.writeToParcel` -- `MarkerStyle.equals` -- `MarkerStyle.hashCode` -- `MarkerStyle.writeToParcel` -- `Model.onModelClick` -- `ModelOptions.writeToParcel` -- `Orientation.writeToParcel` -- `PinConfiguration.equals` -- `PinConfiguration.hashCode` -- `PinConfiguration.writeToParcel` -- `Polygon.onPolygonClick` -- `PolygonOptions.writeToParcel` -- `Polyline.onPolylineClick` -- `PolylineOptions.writeToParcel` -- `Popover.altitudeMode` -- `Popover.anchorId` -- `Popover.anchorOffset` -- `Popover.autoCloseEnabled` -- `Popover.autoPanEnabled` -- `Popover.autoPanFn` -- `Popover.content` -- `Popover.hide` -- `Popover.isVisible` -- `Popover.positionAnchor` -- `Popover.removeFn` -- `Popover.toggle` -- `Validators.for.Anchorable` -- `Validators.for.Camera` -- `Validators.for.CameraRestriction` -- `Validators.for.FlyAroundOptions` -- `Validators.for.FlyToOptions` -- `Validators.for.Hole` -- `Validators.for.LatLngAltitude` -- `Validators.for.LatLngBounds` -- `Validators.for.Map3DOptions` -- `Validators.for.MarkerOptions` -- `Validators.for.ModelOptions` -- `Validators.for.Orientation` -- `Validators.for.PolygonOptions` -- `Validators.for.PolylineOptions` -- `Validators.for.PopoverOptions` -- `Validators.for.Vector3D` -- `Validators.for.requireNonNegative` -- `Validators.for.validateAltitude` -- `Validators.for.validateFinite` -- `Validators.for.validateHeading` -- `Validators.for.validateLatitude` -- `Validators.for.validateLongitude` -- `Validators.for.validateRange` -- `Validators.for.validateRoll` -- `Validators.for.validateTilt` -- `Vector3D.writeToParcel` - -## Java Snippets -### `Camera` -- `getCenter`: - - [java-app/src/main/java/com/example/snippets/java/MapActivity.java:55](java-app/src/main/java/com/example/snippets/java/MapActivity.java#L55) (Tag: `No Tag`) - - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L128-L147) (Tag: `maps_android_3d_camera_events_java`) -- `setCenter`: ❌ No coverage -- `setHeading`: ❌ No coverage -- `setRange`: ❌ No coverage -- `setRoll`: ❌ No coverage -- `setTilt`: ❌ No coverage -- `writeToParcel`: ❌ No coverage - -### `CameraRestriction` -- `setBounds`: ❌ No coverage -- `setMaxAltitude`: ❌ No coverage -- `setMaxHeading`: ❌ No coverage -- `setMaxTilt`: ❌ No coverage -- `setMinAltitude`: ❌ No coverage -- `setMinHeading`: ❌ No coverage -- `setMinTilt`: ❌ No coverage -- `writeToParcel`: ❌ No coverage - -### `FlyAroundOptions` -- `getCenter`: ❌ No coverage -- `getDurationInMillis`: ❌ No coverage -- `getRounds`: ❌ No coverage -- `setCenter`: ❌ No coverage -- `setDurationInMillis`: ❌ No coverage -- `setRounds`: ❌ No coverage -- `writeToParcel`: ❌ No coverage - -### `FlyToOptions` -- `getDurationInMillis`: ❌ No coverage -- `getEndCamera`: ❌ No coverage -- `setDurationInMillis`: ❌ No coverage -- `setEndCamera`: ❌ No coverage -- `writeToParcel`: ❌ No coverage - -### `Glyph` -- `equals`: ❌ No coverage -- `fromCircle`: - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L263-L285) (Tag: `maps_android_3d_marker_glyph_circle_java`) -- `fromColor`: - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L159-L189) (Tag: `maps_android_3d_marker_custom_icon_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L201-L220) (Tag: `maps_android_3d_marker_glyph_color_java`) -- `fromText`: - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L232-L251) (Tag: `maps_android_3d_marker_glyph_text_java`) -- `getColor`: ❌ No coverage -- `getImage`: ❌ No coverage -- `getText`: ❌ No coverage -- `hashCode`: ❌ No coverage -- `setColor`: - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L263-L285) (Tag: `maps_android_3d_marker_glyph_circle_java`) -- `setImage`: - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L159-L189) (Tag: `maps_android_3d_marker_custom_icon_java`) -- `setText`: ❌ No coverage -- `writeToParcel`: ❌ No coverage - -### `GoogleMap3D` -- `addMarker`: - - [java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java:54](java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java#L54) (Tag: `No Tag`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L125-L147) (Tag: `maps_android_3d_marker_click_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L159-L189) (Tag: `maps_android_3d_marker_custom_icon_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L201-L220) (Tag: `maps_android_3d_marker_glyph_color_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L232-L251) (Tag: `maps_android_3d_marker_glyph_text_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L263-L285) (Tag: `maps_android_3d_marker_glyph_circle_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L64-L81) (Tag: `maps_android_3d_marker_add_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L93-L113) (Tag: `maps_android_3d_marker_options_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L58-L82) (Tag: `maps_android_3d_popover_add_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L94-L118) (Tag: `maps_android_3d_popover_options_java`) -- `addModel`: - - [java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java:72](java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java#L72) (Tag: `No Tag`) - - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L60-L78) (Tag: `maps_android_3d_model_add_java`) -- `addPolygon`: - - [java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java:66](java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java#L66) (Tag: `No Tag`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L100-L124) (Tag: `maps_android_3d_polygon_extruded_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L140-L174) (Tag: `maps_android_3d_polygon_hole_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L60-L84) (Tag: `maps_android_3d_polygon_add_java`) -- `addPolyline`: - - [java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java:60](java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java#L60) (Tag: `No Tag`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L59-L80) (Tag: `maps_android_3d_polyline_add_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L96-L121) (Tag: `maps_android_3d_polyline_options_java`) -- `addPopover`: - - [java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java:78](java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java#L78) (Tag: `No Tag`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L58-L82) (Tag: `maps_android_3d_popover_add_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L94-L118) (Tag: `maps_android_3d_popover_options_java`) -- `flyCameraAround`: - - [java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java:86](java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java#L86) (Tag: `No Tag`) - - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L106-L115) (Tag: `maps_android_3d_camera_stop_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L75-L94) (Tag: `maps_android_3d_camera_fly_around_java`) -- `flyCameraTo`: - - [java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java:91](java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java#L91) (Tag: `No Tag`) - - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L45-L64) (Tag: `maps_android_3d_camera_fly_to_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L125-L147) (Tag: `maps_android_3d_marker_click_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L159-L189) (Tag: `maps_android_3d_marker_custom_icon_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L201-L220) (Tag: `maps_android_3d_marker_glyph_color_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L232-L251) (Tag: `maps_android_3d_marker_glyph_text_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L263-L285) (Tag: `maps_android_3d_marker_glyph_circle_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L64-L81) (Tag: `maps_android_3d_marker_add_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L93-L113) (Tag: `maps_android_3d_marker_options_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java:83](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L83) (Tag: `No Tag`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PlaceSnippets.java:74](java-app/src/main/java/com/example/snippets/java/snippets/PlaceSnippets.java#L74) (Tag: `No Tag`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:128](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L128) (Tag: `No Tag`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:178](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L178) (Tag: `No Tag`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:88](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L88) (Tag: `No Tag`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:125](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L125) (Tag: `No Tag`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:84](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L84) (Tag: `No Tag`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:123](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L123) (Tag: `No Tag`) -- `getCamera`: - - [java-app/src/main/java/com/example/snippets/java/MapActivity.java:53](java-app/src/main/java/com/example/snippets/java/MapActivity.java#L53) (Tag: `No Tag`) - - [java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java:89](java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java#L89) (Tag: `No Tag`) -- `getCameraRestriction`: - - [java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java:95](java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java#L95) (Tag: `No Tag`) -- `getMapMode`: ❌ No coverage -- `setCamera`: - - [java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java:83](java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java#L83) (Tag: `No Tag`) - - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:182](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L182) (Tag: `No Tag`) - - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L75-L94) (Tag: `maps_android_3d_camera_fly_around_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java#L45-L64) (Tag: `maps_android_3d_init_basic_java`) -- `setCameraAnimationEndListener`: ❌ No coverage -- `setCameraChangedListener`: - - [java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java:84](java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java#L84) (Tag: `No Tag`) - - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L128-L147) (Tag: `maps_android_3d_camera_events_java`) -- `setCameraRestriction`: - - [java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java:94](java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java#L94) (Tag: `No Tag`) - - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L184-L194) (Tag: `maps_android_3d_camera_restriction_java`) -- `setMap3DClickListener`: - - [java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java:85](java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java#L85) (Tag: `No Tag`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PlaceSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PlaceSnippets.java#L56-L68) (Tag: `maps_android_3d_place_click_java`) -- `setMapMode`: ❌ No coverage -- `setOnMapReadyListener`: - - [java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java:92](java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java#L92) (Tag: `No Tag`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java#L73-L97) (Tag: `maps_android_3d_init_listeners_java`) -- `setOnMapSteadyListener`: - - [java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java:93](java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java#L93) (Tag: `No Tag`) - - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L159-L163) (Tag: `maps_android_3d_camera_steady_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L75-L94) (Tag: `maps_android_3d_camera_fly_around_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java#L73-L97) (Tag: `maps_android_3d_init_listeners_java`) -- `stopCameraAnimation`: - - [java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java:90](java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java#L90) (Tag: `No Tag`) - -### `Hole` -- `getVertices`: ❌ No coverage -- `setVertices`: ❌ No coverage -- `writeToParcel`: ❌ No coverage - -### `ImageView` -- `equals`: ❌ No coverage -- `getResourceId`: ❌ No coverage -- `hashCode`: ❌ No coverage -- `setResourceId`: ❌ No coverage -- `writeToParcel`: ❌ No coverage - -### `LatLngAltitude` -- `getAltitude`: - - [java-app/src/main/java/com/example/snippets/java/MapActivity.java:64](java-app/src/main/java/com/example/snippets/java/MapActivity.java#L64) (Tag: `No Tag`) -- `getLatitude`: - - [java-app/src/main/java/com/example/snippets/java/MapActivity.java:64](java-app/src/main/java/com/example/snippets/java/MapActivity.java#L64) (Tag: `No Tag`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L125-L147) (Tag: `maps_android_3d_marker_click_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L159-L189) (Tag: `maps_android_3d_marker_custom_icon_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L201-L220) (Tag: `maps_android_3d_marker_glyph_color_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L232-L251) (Tag: `maps_android_3d_marker_glyph_text_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L263-L285) (Tag: `maps_android_3d_marker_glyph_circle_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L64-L81) (Tag: `maps_android_3d_marker_add_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L93-L113) (Tag: `maps_android_3d_marker_options_java`) -- `getLongitude`: - - [java-app/src/main/java/com/example/snippets/java/MapActivity.java:64](java-app/src/main/java/com/example/snippets/java/MapActivity.java#L64) (Tag: `No Tag`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L125-L147) (Tag: `maps_android_3d_marker_click_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L159-L189) (Tag: `maps_android_3d_marker_custom_icon_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L201-L220) (Tag: `maps_android_3d_marker_glyph_color_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L232-L251) (Tag: `maps_android_3d_marker_glyph_text_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L263-L285) (Tag: `maps_android_3d_marker_glyph_circle_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L64-L81) (Tag: `maps_android_3d_marker_add_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L93-L113) (Tag: `maps_android_3d_marker_options_java`) -- `getPosition`: ❌ No coverage -- `setAltitude`: ❌ No coverage -- `setLatitude`: ❌ No coverage -- `setLongitude`: ❌ No coverage -- `writeToParcel`: ❌ No coverage - -### `LatLngBounds` -- `getNorthEastLat`: ❌ No coverage -- `getNorthEastLng`: ❌ No coverage -- `getSouthWestLat`: ❌ No coverage -- `getSouthWestLng`: ❌ No coverage -- `setNorthEastLat`: ❌ No coverage -- `setNorthEastLng`: ❌ No coverage -- `setSouthWestLat`: ❌ No coverage -- `setSouthWestLng`: ❌ No coverage -- `writeToParcel`: ❌ No coverage - -### `Map3DOptions` -- `attributes`: ❌ No coverage -- `bounds`: ❌ No coverage -- `centerAlt`: ❌ No coverage -- `centerLat`: ❌ No coverage -- `centerLng`: ❌ No coverage -- `defaultUiDisabled`: ❌ No coverage -- `fromAttributeSet`: ❌ No coverage -- `getAttributes`: ❌ No coverage -- `getBounds`: ❌ No coverage -- `getCenterAlt`: ❌ No coverage -- `getCenterLat`: ❌ No coverage -- `getCenterLng`: ❌ No coverage -- `getDefaultUiDisabled`: ❌ No coverage -- `getHeading`: ❌ No coverage -- `getMapId`: ❌ No coverage -- `getMapMode`: ❌ No coverage -- `getMaxAltitude`: ❌ No coverage -- `getMaxHeading`: ❌ No coverage -- `getMaxTilt`: ❌ No coverage -- `getMinAltitude`: ❌ No coverage -- `getMinHeading`: ❌ No coverage -- `getMinTilt`: ❌ No coverage -- `getOptions`: ❌ No coverage -- `getRange`: ❌ No coverage -- `getRoll`: ❌ No coverage -- `getTilt`: ❌ No coverage -- `heading`: ❌ No coverage -- `mapId`: ❌ No coverage -- `mapMode`: ❌ No coverage -- `maxAltitude`: ❌ No coverage -- `maxHeading`: ❌ No coverage -- `maxTilt`: ❌ No coverage -- `minAltitude`: ❌ No coverage -- `minHeading`: ❌ No coverage -- `minTilt`: ❌ No coverage -- `options`: ❌ No coverage -- `range`: ❌ No coverage -- `roll`: ❌ No coverage -- `tilt`: ❌ No coverage - -### `Map3DView` -- `getMap3DViewAsync`: - - [java-app/src/main/java/com/example/snippets/java/MapActivity.java:115](java-app/src/main/java/com/example/snippets/java/MapActivity.java#L115) (Tag: `No Tag`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java#L45-L64) (Tag: `maps_android_3d_init_basic_java`) -- `getOverlayView`: ❌ No coverage -- `getParams`: ❌ No coverage -- `overlayView`: ❌ No coverage -- `params`: ❌ No coverage -- `setParams`: ❌ No coverage - -### `Marker` -- `getAltitudeMode`: ❌ No coverage -- `getCollisionBehavior`: ❌ No coverage -- `getDrawsWhenOccluded`: ❌ No coverage -- `getId`: ❌ No coverage -- `getLabel`: ❌ No coverage -- `getPosition`: ❌ No coverage -- `getSizePreserved`: ❌ No coverage -- `getUrl`: ❌ No coverage -- `getZIndex`: ❌ No coverage -- `isExtruded`: ❌ No coverage -- `onMarkerClick`: ❌ No coverage -- `remove`: - - [java-app/src/main/java/com/example/snippets/java/SnippetRegistry.java:38](java-app/src/main/java/com/example/snippets/java/SnippetRegistry.java#L38) (Tag: `No Tag`) -- `setAltitudeMode`: ❌ No coverage -- `setClickListener`: - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L125-L147) (Tag: `maps_android_3d_marker_click_java`) -- `setCollisionBehavior`: ❌ No coverage -- `setDrawsWhenOccluded`: ❌ No coverage -- `setExtruded`: ❌ No coverage -- `setLabel`: ❌ No coverage -- `setPosition`: ❌ No coverage -- `setSizePreserved`: ❌ No coverage -- `setUrl`: ❌ No coverage -- `setZIndex`: ❌ No coverage - -### `MarkerOptions` -- `getAltitudeMode`: ❌ No coverage -- `getCollisionBehavior`: ❌ No coverage -- `getId`: ❌ No coverage -- `getLabel`: ❌ No coverage -- `getPosition`: - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L125-L147) (Tag: `maps_android_3d_marker_click_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L159-L189) (Tag: `maps_android_3d_marker_custom_icon_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L201-L220) (Tag: `maps_android_3d_marker_glyph_color_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L232-L251) (Tag: `maps_android_3d_marker_glyph_text_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L263-L285) (Tag: `maps_android_3d_marker_glyph_circle_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L64-L81) (Tag: `maps_android_3d_marker_add_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L93-L113) (Tag: `maps_android_3d_marker_options_java`) -- `getZIndex`: ❌ No coverage -- `isDrawnWhenOccluded`: ❌ No coverage -- `isExtruded`: ❌ No coverage -- `isSizePreserved`: ❌ No coverage -- `setAltitudeMode`: - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L93-L113) (Tag: `maps_android_3d_marker_options_java`) -- `setCollisionBehavior`: - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L93-L113) (Tag: `maps_android_3d_marker_options_java`) -- `setDrawnWhenOccluded`: - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L93-L113) (Tag: `maps_android_3d_marker_options_java`) -- `setExtruded`: - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L93-L113) (Tag: `maps_android_3d_marker_options_java`) -- `setId`: ❌ No coverage -- `setLabel`: - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L159-L189) (Tag: `maps_android_3d_marker_custom_icon_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L201-L220) (Tag: `maps_android_3d_marker_glyph_color_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L232-L251) (Tag: `maps_android_3d_marker_glyph_text_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L263-L285) (Tag: `maps_android_3d_marker_glyph_circle_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L64-L81) (Tag: `maps_android_3d_marker_add_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L93-L113) (Tag: `maps_android_3d_marker_options_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L94-L118) (Tag: `maps_android_3d_popover_options_java`) -- `setPosition`: - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L125-L147) (Tag: `maps_android_3d_marker_click_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L159-L189) (Tag: `maps_android_3d_marker_custom_icon_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L201-L220) (Tag: `maps_android_3d_marker_glyph_color_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L232-L251) (Tag: `maps_android_3d_marker_glyph_text_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L263-L285) (Tag: `maps_android_3d_marker_glyph_circle_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L64-L81) (Tag: `maps_android_3d_marker_add_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L93-L113) (Tag: `maps_android_3d_marker_options_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L94-L118) (Tag: `maps_android_3d_popover_options_java`) -- `setSizePreserved`: ❌ No coverage -- `setZIndex`: ❌ No coverage - -### `MarkerOptions.that` -- `getStyle`: ❌ No coverage -- `setStyle`: ❌ No coverage -- `writeToParcel`: ❌ No coverage - -### `MarkerStyle` -- `equals`: ❌ No coverage -- `getImageView`: ❌ No coverage -- `getPinConfiguration`: ❌ No coverage -- `hashCode`: ❌ No coverage -- `writeToParcel`: ❌ No coverage - -### `Model` -- `getAltitudeMode`: ❌ No coverage -- `getId`: ❌ No coverage -- `getOrientation`: ❌ No coverage -- `getPosition`: ❌ No coverage -- `getScale`: ❌ No coverage -- `getUrl`: ❌ No coverage -- `onModelClick`: ❌ No coverage -- `remove`: - - [java-app/src/main/java/com/example/snippets/java/SnippetRegistry.java:41](java-app/src/main/java/com/example/snippets/java/SnippetRegistry.java#L41) (Tag: `No Tag`) -- `setAltitudeMode`: ❌ No coverage -- `setClickListener`: - - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L60-L78) (Tag: `maps_android_3d_model_add_java`) -- `setOrientation`: ❌ No coverage -- `setPosition`: ❌ No coverage -- `setScale`: ❌ No coverage -- `setUrl`: ❌ No coverage - -### `ModelOptions` -- `getAltitudeMode`: ❌ No coverage -- `getId`: ❌ No coverage -- `getOrientation`: ❌ No coverage -- `getPosition`: ❌ No coverage -- `getScale`: ❌ No coverage -- `getUrl`: ❌ No coverage -- `setAltitudeMode`: - - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L60-L78) (Tag: `maps_android_3d_model_add_java`) -- `setId`: ❌ No coverage -- `setOrientation`: - - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L60-L78) (Tag: `maps_android_3d_model_add_java`) -- `setPosition`: - - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L60-L78) (Tag: `maps_android_3d_model_add_java`) -- `setScale`: - - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L60-L78) (Tag: `maps_android_3d_model_add_java`) -- `setUrl`: - - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L60-L78) (Tag: `maps_android_3d_model_add_java`) -- `writeToParcel`: ❌ No coverage - -### `Orientation` -- `getHeading`: ❌ No coverage -- `getRoll`: ❌ No coverage -- `getTilt`: ❌ No coverage -- `setHeading`: ❌ No coverage -- `setRoll`: ❌ No coverage -- `setTilt`: ❌ No coverage -- `writeToParcel`: ❌ No coverage - -### `PinConfiguration` -- `builder`: - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L159-L189) (Tag: `maps_android_3d_marker_custom_icon_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L201-L220) (Tag: `maps_android_3d_marker_glyph_color_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L232-L251) (Tag: `maps_android_3d_marker_glyph_text_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L263-L285) (Tag: `maps_android_3d_marker_glyph_circle_java`) -- `equals`: ❌ No coverage -- `getBackgroundColor`: ❌ No coverage -- `getBorderColor`: ❌ No coverage -- `getGlyph`: ❌ No coverage -- `getScale`: ❌ No coverage -- `hashCode`: ❌ No coverage -- `setBackgroundColor`: ❌ No coverage -- `setBorderColor`: ❌ No coverage -- `setGlyph`: ❌ No coverage -- `setScale`: ❌ No coverage -- `writeToParcel`: ❌ No coverage - -### `PinConfiguration.Builder` -- `build`: - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L159-L189) (Tag: `maps_android_3d_marker_custom_icon_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L201-L220) (Tag: `maps_android_3d_marker_glyph_color_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L232-L251) (Tag: `maps_android_3d_marker_glyph_text_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L263-L285) (Tag: `maps_android_3d_marker_glyph_circle_java`) -- `setBackgroundColor`: - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L159-L189) (Tag: `maps_android_3d_marker_custom_icon_java`) -- `setBorderColor`: - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L159-L189) (Tag: `maps_android_3d_marker_custom_icon_java`) -- `setGlyph`: - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L159-L189) (Tag: `maps_android_3d_marker_custom_icon_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L201-L220) (Tag: `maps_android_3d_marker_glyph_color_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L232-L251) (Tag: `maps_android_3d_marker_glyph_text_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L263-L285) (Tag: `maps_android_3d_marker_glyph_circle_java`) -- `setScale`: - - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L159-L189) (Tag: `maps_android_3d_marker_custom_icon_java`) - -### `Polygon` -- `getAltitudeMode`: ❌ No coverage -- `getDrawsOccludedSegments`: ❌ No coverage -- `getExtruded`: ❌ No coverage -- `getFillColor`: ❌ No coverage -- `getGeodesic`: ❌ No coverage -- `getId`: ❌ No coverage -- `getInnerCoordinates`: ❌ No coverage -- `getInnerPaths`: ❌ No coverage -- `getOuterCoordinates`: ❌ No coverage -- `getPath`: ❌ No coverage -- `getStrokeColor`: ❌ No coverage -- `getStrokeWidth`: ❌ No coverage -- `getZIndex`: ❌ No coverage -- `onPolygonClick`: ❌ No coverage -- `remove`: - - [java-app/src/main/java/com/example/snippets/java/SnippetRegistry.java:40](java-app/src/main/java/com/example/snippets/java/SnippetRegistry.java#L40) (Tag: `No Tag`) -- `setAltitudeMode`: ❌ No coverage -- `setClickListener`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L100-L124) (Tag: `maps_android_3d_polygon_extruded_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L140-L174) (Tag: `maps_android_3d_polygon_hole_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L60-L84) (Tag: `maps_android_3d_polygon_add_java`) -- `setDrawsOccludedSegments`: ❌ No coverage -- `setExtruded`: ❌ No coverage -- `setFillColor`: ❌ No coverage -- `setGeodesic`: ❌ No coverage -- `setInnerCoordinates`: ❌ No coverage -- `setInnerPaths`: ❌ No coverage -- `setOuterCoordinates`: ❌ No coverage -- `setPath`: ❌ No coverage -- `setStrokeColor`: ❌ No coverage -- `setStrokeWidth`: ❌ No coverage -- `setZIndex`: ❌ No coverage - -### `PolygonOptions` -- `getAltitudeMode`: ❌ No coverage -- `getDrawsOccludedSegments`: ❌ No coverage -- `getExtruded`: ❌ No coverage -- `getFillColor`: ❌ No coverage -- `getGeodesic`: ❌ No coverage -- `getId`: ❌ No coverage -- `getInnerPaths`: ❌ No coverage -- `getPath`: ❌ No coverage -- `getStrokeColor`: ❌ No coverage -- `getStrokeWidth`: ❌ No coverage -- `getZIndex`: ❌ No coverage -- `setAltitudeMode`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L100-L124) (Tag: `maps_android_3d_polygon_extruded_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L140-L174) (Tag: `maps_android_3d_polygon_hole_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L60-L84) (Tag: `maps_android_3d_polygon_add_java`) -- `setDrawsOccludedSegments`: ❌ No coverage -- `setExtruded`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L100-L124) (Tag: `maps_android_3d_polygon_extruded_java`) -- `setFillColor`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L100-L124) (Tag: `maps_android_3d_polygon_extruded_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L140-L174) (Tag: `maps_android_3d_polygon_hole_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L60-L84) (Tag: `maps_android_3d_polygon_add_java`) -- `setGeodesic`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L100-L124) (Tag: `maps_android_3d_polygon_extruded_java`) -- `setId`: ❌ No coverage -- `setInnerPaths`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L140-L174) (Tag: `maps_android_3d_polygon_hole_java`) -- `setPath`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L100-L124) (Tag: `maps_android_3d_polygon_extruded_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L140-L174) (Tag: `maps_android_3d_polygon_hole_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L60-L84) (Tag: `maps_android_3d_polygon_add_java`) -- `setStrokeColor`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L60-L84) (Tag: `maps_android_3d_polygon_add_java`) -- `setStrokeWidth`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L60-L84) (Tag: `maps_android_3d_polygon_add_java`) -- `setZIndex`: ❌ No coverage -- `writeToParcel`: ❌ No coverage - -### `Polyline` -- `getAltitudeMode`: ❌ No coverage -- `getCoordinates`: ❌ No coverage -- `getDrawsOccludedSegments`: ❌ No coverage -- `getGeodesic`: ❌ No coverage -- `getId`: ❌ No coverage -- `getOuterColor`: ❌ No coverage -- `getOuterWidth`: ❌ No coverage -- `getPath`: ❌ No coverage -- `getStrokeColor`: ❌ No coverage -- `getStrokeWidth`: ❌ No coverage -- `getZIndex`: ❌ No coverage -- `onPolylineClick`: ❌ No coverage -- `remove`: - - [java-app/src/main/java/com/example/snippets/java/SnippetRegistry.java:39](java-app/src/main/java/com/example/snippets/java/SnippetRegistry.java#L39) (Tag: `No Tag`) -- `setAltitudeMode`: ❌ No coverage -- `setClickListener`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L59-L80) (Tag: `maps_android_3d_polyline_add_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L96-L121) (Tag: `maps_android_3d_polyline_options_java`) -- `setCoordinates`: ❌ No coverage -- `setDrawsOccludedSegments`: ❌ No coverage -- `setGeodesic`: ❌ No coverage -- `setOuterColor`: ❌ No coverage -- `setOuterWidth`: ❌ No coverage -- `setPath`: ❌ No coverage -- `setStrokeColor`: ❌ No coverage -- `setStrokeWidth`: ❌ No coverage -- `setZIndex`: ❌ No coverage - -### `PolylineOptions` -- `getAltitudeMode`: ❌ No coverage -- `getDrawsOccludedSegments`: ❌ No coverage -- `getExtruded`: ❌ No coverage -- `getGeodesic`: ❌ No coverage -- `getId`: ❌ No coverage -- `getOuterColor`: ❌ No coverage -- `getOuterWidth`: ❌ No coverage -- `getPath`: ❌ No coverage -- `getStrokeColor`: ❌ No coverage -- `getStrokeWidth`: ❌ No coverage -- `getZIndex`: ❌ No coverage -- `setAltitudeMode`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L59-L80) (Tag: `maps_android_3d_polyline_add_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L96-L121) (Tag: `maps_android_3d_polyline_options_java`) -- `setDrawsOccludedSegments`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L96-L121) (Tag: `maps_android_3d_polyline_options_java`) -- `setExtruded`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L96-L121) (Tag: `maps_android_3d_polyline_options_java`) -- `setGeodesic`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L96-L121) (Tag: `maps_android_3d_polyline_options_java`) -- `setId`: ❌ No coverage -- `setOuterColor`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L96-L121) (Tag: `maps_android_3d_polyline_options_java`) -- `setOuterWidth`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L96-L121) (Tag: `maps_android_3d_polyline_options_java`) -- `setPath`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L59-L80) (Tag: `maps_android_3d_polyline_add_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L96-L121) (Tag: `maps_android_3d_polyline_options_java`) -- `setStrokeColor`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L59-L80) (Tag: `maps_android_3d_polyline_add_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L96-L121) (Tag: `maps_android_3d_polyline_options_java`) -- `setStrokeWidth`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L59-L80) (Tag: `maps_android_3d_polyline_add_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L96-L121) (Tag: `maps_android_3d_polyline_options_java`) -- `setZIndex`: ❌ No coverage -- `writeToParcel`: ❌ No coverage - -### `Popover` -- `altitudeMode`: ❌ No coverage -- `anchorId`: ❌ No coverage -- `anchorOffset`: ❌ No coverage -- `autoCloseEnabled`: ❌ No coverage -- `autoPanEnabled`: ❌ No coverage -- `autoPanFn`: ❌ No coverage -- `content`: ❌ No coverage -- `getAltitudeMode`: ❌ No coverage -- `getAnchorId`: ❌ No coverage -- `getAnchorOffset`: ❌ No coverage -- `getAutoCloseEnabled`: ❌ No coverage -- `getAutoPanEnabled`: ❌ No coverage -- `getAutoPanFn`: ❌ No coverage -- `getContent`: ❌ No coverage -- `getIsVisible`: ❌ No coverage -- `getPositionAnchor`: ❌ No coverage -- `getRemoveFn`: ❌ No coverage -- `hide`: ❌ No coverage -- `isVisible`: ❌ No coverage -- `positionAnchor`: ❌ No coverage -- `remove`: - - [java-app/src/main/java/com/example/snippets/java/SnippetRegistry.java:42](java-app/src/main/java/com/example/snippets/java/SnippetRegistry.java#L42) (Tag: `No Tag`) -- `removeFn`: ❌ No coverage -- `show`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L58-L82) (Tag: `maps_android_3d_popover_add_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L94-L118) (Tag: `maps_android_3d_popover_options_java`) -- `toggle`: ❌ No coverage - -### `PopoverOptions` -- `getAltitudeMode`: ❌ No coverage -- `getAnchorOffset`: ❌ No coverage -- `getAutoCloseEnabled`: ❌ No coverage -- `getAutoPanEnabled`: ❌ No coverage -- `getContent`: ❌ No coverage -- `getPopoverStyle`: ❌ No coverage -- `getPositionAnchor`: ❌ No coverage -- `setAltitudeMode`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L58-L82) (Tag: `maps_android_3d_popover_add_java`) -- `setAnchorOffset`: ❌ No coverage -- `setAutoCloseEnabled`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L94-L118) (Tag: `maps_android_3d_popover_options_java`) -- `setAutoPanEnabled`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L94-L118) (Tag: `maps_android_3d_popover_options_java`) -- `setContent`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L58-L82) (Tag: `maps_android_3d_popover_add_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L94-L118) (Tag: `maps_android_3d_popover_options_java`) -- `setPopoverStyle`: ❌ No coverage -- `setPositionAnchor`: - - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L58-L82) (Tag: `maps_android_3d_popover_add_java`) - - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L94-L118) (Tag: `maps_android_3d_popover_options_java`) - -### `PopoverShadow` -- `getColor`: ❌ No coverage -- `getOffsetX`: ❌ No coverage -- `getOffsetY`: ❌ No coverage -- `getRadius`: ❌ No coverage -- `setColor`: ❌ No coverage -- `setOffsetX`: ❌ No coverage -- `setOffsetY`: ❌ No coverage -- `setRadius`: ❌ No coverage - -### `PopoverStyle` -- `getBackgroundColor`: ❌ No coverage -- `getBorderRadius`: ❌ No coverage -- `getPadding`: ❌ No coverage -- `getShadow`: ❌ No coverage -- `setBackgroundColor`: ❌ No coverage -- `setBorderRadius`: ❌ No coverage -- `setPadding`: ❌ No coverage -- `setShadow`: ❌ No coverage - -### `Validators.for` -- `Anchorable`: ❌ No coverage -- `Camera`: ❌ No coverage -- `CameraRestriction`: ❌ No coverage -- `FlyAroundOptions`: ❌ No coverage -- `FlyToOptions`: ❌ No coverage -- `Hole`: ❌ No coverage -- `LatLngAltitude`: ❌ No coverage -- `LatLngBounds`: ❌ No coverage -- `Map3DOptions`: ❌ No coverage -- `MarkerOptions`: ❌ No coverage -- `ModelOptions`: ❌ No coverage -- `Orientation`: ❌ No coverage -- `PolygonOptions`: ❌ No coverage -- `PolylineOptions`: ❌ No coverage -- `PopoverOptions`: ❌ No coverage -- `Vector3D`: ❌ No coverage -- `requireNonNegative`: ❌ No coverage -- `validateAltitude`: ❌ No coverage -- `validateFinite`: ❌ No coverage -- `validateHeading`: ❌ No coverage -- `validateLatitude`: ❌ No coverage -- `validateLongitude`: ❌ No coverage -- `validateRange`: ❌ No coverage -- `validateRoll`: ❌ No coverage -- `validateTilt`: ❌ No coverage - -### `Vector3D` -- `getX`: ❌ No coverage -- `getY`: ❌ No coverage -- `getZ`: ❌ No coverage -- `setX`: ❌ No coverage -- `setY`: ❌ No coverage -- `setZ`: ❌ No coverage -- `writeToParcel`: ❌ No coverage - -### Missing Extracted API Coverage (Java Snippets) -The following non-getter/setter APIs currently have `0` occurrences within this section: - -- `Camera.writeToParcel` -- `CameraRestriction.writeToParcel` -- `FlyAroundOptions.writeToParcel` -- `FlyToOptions.writeToParcel` -- `Glyph.equals` -- `Glyph.hashCode` -- `Glyph.writeToParcel` -- `Hole.writeToParcel` -- `ImageView.equals` -- `ImageView.hashCode` -- `ImageView.writeToParcel` -- `LatLngAltitude.writeToParcel` -- `LatLngBounds.writeToParcel` -- `Map3DOptions.attributes` -- `Map3DOptions.bounds` -- `Map3DOptions.centerAlt` -- `Map3DOptions.centerLat` -- `Map3DOptions.centerLng` -- `Map3DOptions.defaultUiDisabled` -- `Map3DOptions.fromAttributeSet` -- `Map3DOptions.heading` -- `Map3DOptions.mapId` -- `Map3DOptions.mapMode` -- `Map3DOptions.maxAltitude` -- `Map3DOptions.maxHeading` -- `Map3DOptions.maxTilt` -- `Map3DOptions.minAltitude` -- `Map3DOptions.minHeading` -- `Map3DOptions.minTilt` -- `Map3DOptions.options` -- `Map3DOptions.range` -- `Map3DOptions.roll` -- `Map3DOptions.tilt` -- `Map3DView.overlayView` -- `Map3DView.params` -- `Marker.isExtruded` -- `Marker.onMarkerClick` -- `MarkerOptions.isDrawnWhenOccluded` -- `MarkerOptions.isExtruded` -- `MarkerOptions.isSizePreserved` -- `MarkerOptions.that.writeToParcel` -- `MarkerStyle.equals` -- `MarkerStyle.hashCode` -- `MarkerStyle.writeToParcel` -- `Model.onModelClick` -- `ModelOptions.writeToParcel` -- `Orientation.writeToParcel` -- `PinConfiguration.equals` -- `PinConfiguration.hashCode` -- `PinConfiguration.writeToParcel` -- `Polygon.onPolygonClick` -- `PolygonOptions.writeToParcel` -- `Polyline.onPolylineClick` -- `PolylineOptions.writeToParcel` -- `Popover.altitudeMode` -- `Popover.anchorId` -- `Popover.anchorOffset` -- `Popover.autoCloseEnabled` -- `Popover.autoPanEnabled` -- `Popover.autoPanFn` -- `Popover.content` -- `Popover.hide` -- `Popover.isVisible` -- `Popover.positionAnchor` -- `Popover.removeFn` -- `Popover.toggle` -- `Validators.for.Anchorable` -- `Validators.for.Camera` -- `Validators.for.CameraRestriction` -- `Validators.for.FlyAroundOptions` -- `Validators.for.FlyToOptions` -- `Validators.for.Hole` -- `Validators.for.LatLngAltitude` -- `Validators.for.LatLngBounds` -- `Validators.for.Map3DOptions` -- `Validators.for.MarkerOptions` -- `Validators.for.ModelOptions` -- `Validators.for.Orientation` -- `Validators.for.PolygonOptions` -- `Validators.for.PolylineOptions` -- `Validators.for.PopoverOptions` -- `Validators.for.Vector3D` -- `Validators.for.requireNonNegative` -- `Validators.for.validateAltitude` -- `Validators.for.validateFinite` -- `Validators.for.validateHeading` -- `Validators.for.validateLatitude` -- `Validators.for.validateLongitude` -- `Validators.for.validateRange` -- `Validators.for.validateRoll` -- `Validators.for.validateTilt` -- `Vector3D.writeToParcel` - diff --git a/snippets/COVERAGE.md b/snippets/COVERAGE.md new file mode 100644 index 00000000..9286fe43 --- /dev/null +++ b/snippets/COVERAGE.md @@ -0,0 +1,1757 @@ +# 📊 Maps3D API Coverage Matrix + +This matrix ensures that every critical feature in the 3D Maps SDK is actively demonstrated inside a snippet boundary (`// [START ...]`). + +## Kotlin Snippets +### `Camera` +- `getCenter`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt:58](kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt#L58) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L188-L202) (Tag: `maps_android_3d_camera_events_kt`) +- `setCenter`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt:191](kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt#L191) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L137-L176) (Tag: `maps_android_3d_camera_stop_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L235-L259) (Tag: `maps_android_3d_camera_restriction_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L62-L81) (Tag: `maps_android_3d_camera_fly_to_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L93-L125) (Tag: `maps_android_3d_camera_fly_around_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L42-L83) (Tag: `maps_android_3d_init_basic_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:204](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L204) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L136-L166) (Tag: `maps_android_3d_marker_click_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L227-L255) (Tag: `maps_android_3d_marker_glyph_color_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L267-L295) (Tag: `maps_android_3d_marker_glyph_text_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L307-L338) (Tag: `maps_android_3d_marker_glyph_circle_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L53-L82) (Tag: `maps_android_3d_marker_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L94-L124) (Tag: `maps_android_3d_marker_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:84](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L84) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:58](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L58) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:129](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L129) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:188](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L188) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:78](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L78) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:126](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L126) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:74](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L74) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:122](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L122) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:77](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L77) (Tag: `No Tag`) +- `setHeading`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt:197](kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt#L197) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L137-L176) (Tag: `maps_android_3d_camera_stop_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L62-L81) (Tag: `maps_android_3d_camera_fly_to_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L93-L125) (Tag: `maps_android_3d_camera_fly_around_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L42-L83) (Tag: `maps_android_3d_init_basic_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:210](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L210) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L136-L166) (Tag: `maps_android_3d_marker_click_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L227-L255) (Tag: `maps_android_3d_marker_glyph_color_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L267-L295) (Tag: `maps_android_3d_marker_glyph_text_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L307-L338) (Tag: `maps_android_3d_marker_glyph_circle_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L53-L82) (Tag: `maps_android_3d_marker_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L94-L124) (Tag: `maps_android_3d_marker_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:86](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L86) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:60](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L60) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:135](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L135) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:189](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L189) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:84](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L84) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:132](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L132) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:80](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L80) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:124](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L124) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:79](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L79) (Tag: `No Tag`) +- `setRange`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt:198](kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt#L198) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L137-L176) (Tag: `maps_android_3d_camera_stop_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L62-L81) (Tag: `maps_android_3d_camera_fly_to_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L93-L125) (Tag: `maps_android_3d_camera_fly_around_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L42-L83) (Tag: `maps_android_3d_init_basic_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:211](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L211) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L136-L166) (Tag: `maps_android_3d_marker_click_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L227-L255) (Tag: `maps_android_3d_marker_glyph_color_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L267-L295) (Tag: `maps_android_3d_marker_glyph_text_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L307-L338) (Tag: `maps_android_3d_marker_glyph_circle_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L53-L82) (Tag: `maps_android_3d_marker_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L94-L124) (Tag: `maps_android_3d_marker_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:87](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L87) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:61](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L61) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:136](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L136) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:189](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L189) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:85](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L85) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:133](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L133) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:81](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L81) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:125](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L125) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:80](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L80) (Tag: `No Tag`) +- `setRoll`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L137-L176) (Tag: `maps_android_3d_camera_stop_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L62-L81) (Tag: `maps_android_3d_camera_fly_to_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L93-L125) (Tag: `maps_android_3d_camera_fly_around_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L42-L83) (Tag: `maps_android_3d_init_basic_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:189](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L189) (Tag: `No Tag`) +- `setTilt`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt:196](kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt#L196) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L137-L176) (Tag: `maps_android_3d_camera_stop_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L62-L81) (Tag: `maps_android_3d_camera_fly_to_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L93-L125) (Tag: `maps_android_3d_camera_fly_around_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L42-L83) (Tag: `maps_android_3d_init_basic_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:209](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L209) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L136-L166) (Tag: `maps_android_3d_marker_click_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L227-L255) (Tag: `maps_android_3d_marker_glyph_color_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L267-L295) (Tag: `maps_android_3d_marker_glyph_text_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L307-L338) (Tag: `maps_android_3d_marker_glyph_circle_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L53-L82) (Tag: `maps_android_3d_marker_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L94-L124) (Tag: `maps_android_3d_marker_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:85](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L85) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:59](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L59) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:134](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L134) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:189](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L189) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:83](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L83) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:131](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L131) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:79](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L79) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:123](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L123) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:78](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L78) (Tag: `No Tag`) +- `writeToParcel`: ❌ No coverage + +### `CameraRestriction` +- `setBounds`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L235-L259) (Tag: `maps_android_3d_camera_restriction_kt`) +- `setMaxAltitude`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L235-L259) (Tag: `maps_android_3d_camera_restriction_kt`) +- `setMaxHeading`: ❌ No coverage +- `setMaxTilt`: ❌ No coverage +- `setMinAltitude`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L235-L259) (Tag: `maps_android_3d_camera_restriction_kt`) +- `setMinHeading`: ❌ No coverage +- `setMinTilt`: ❌ No coverage +- `writeToParcel`: ❌ No coverage + +### `FlyAroundOptions` +- `getCenter`: ❌ No coverage +- `getDurationInMillis`: ❌ No coverage +- `getRounds`: ❌ No coverage +- `setCenter`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L137-L176) (Tag: `maps_android_3d_camera_stop_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L93-L125) (Tag: `maps_android_3d_camera_fly_around_kt`) +- `setDurationInMillis`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L137-L176) (Tag: `maps_android_3d_camera_stop_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L93-L125) (Tag: `maps_android_3d_camera_fly_around_kt`) +- `setRounds`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L137-L176) (Tag: `maps_android_3d_camera_stop_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L93-L125) (Tag: `maps_android_3d_camera_fly_around_kt`) +- `writeToParcel`: ❌ No coverage + +### `FlyToOptions` +- `getDurationInMillis`: ❌ No coverage +- `getEndCamera`: ❌ No coverage +- `setDurationInMillis`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt:202](kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt#L202) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L137-L176) (Tag: `maps_android_3d_camera_stop_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L62-L81) (Tag: `maps_android_3d_camera_fly_to_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:213](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L213) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L136-L166) (Tag: `maps_android_3d_marker_click_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L227-L255) (Tag: `maps_android_3d_marker_glyph_color_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L267-L295) (Tag: `maps_android_3d_marker_glyph_text_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L307-L338) (Tag: `maps_android_3d_marker_glyph_circle_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L53-L82) (Tag: `maps_android_3d_marker_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L94-L124) (Tag: `maps_android_3d_marker_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:89](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L89) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:63](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L63) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:138](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L138) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:191](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L191) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:87](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L87) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:135](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L135) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:83](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L83) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:127](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L127) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:82](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L82) (Tag: `No Tag`) +- `setEndCamera`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt:201](kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt#L201) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L137-L176) (Tag: `maps_android_3d_camera_stop_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L62-L81) (Tag: `maps_android_3d_camera_fly_to_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:203](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L203) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L136-L166) (Tag: `maps_android_3d_marker_click_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L227-L255) (Tag: `maps_android_3d_marker_glyph_color_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L267-L295) (Tag: `maps_android_3d_marker_glyph_text_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L307-L338) (Tag: `maps_android_3d_marker_glyph_circle_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L53-L82) (Tag: `maps_android_3d_marker_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L94-L124) (Tag: `maps_android_3d_marker_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:83](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L83) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:57](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L57) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:128](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L128) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:187](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L187) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:77](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L77) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:125](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L125) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:73](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L73) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:121](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L121) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:76](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L76) (Tag: `No Tag`) +- `writeToParcel`: ❌ No coverage + +### `Glyph` +- `equals`: ❌ No coverage +- `fromCircle`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L307-L338) (Tag: `maps_android_3d_marker_glyph_circle_kt`) +- `fromColor`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:180](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L180) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L227-L255) (Tag: `maps_android_3d_marker_glyph_color_kt`) +- `fromText`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L267-L295) (Tag: `maps_android_3d_marker_glyph_text_kt`) +- `getColor`: ❌ No coverage +- `getImage`: ❌ No coverage +- `getText`: ❌ No coverage +- `hashCode`: ❌ No coverage +- `setColor`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L307-L338) (Tag: `maps_android_3d_marker_glyph_circle_kt`) +- `setImage`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:182](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L182) (Tag: `No Tag`) +- `setText`: ❌ No coverage +- `writeToParcel`: ❌ No coverage + +### `GoogleMap3D` +- `addMarker`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt:31](kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt#L31) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:200](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L200) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L136-L166) (Tag: `maps_android_3d_marker_click_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L227-L255) (Tag: `maps_android_3d_marker_glyph_color_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L267-L295) (Tag: `maps_android_3d_marker_glyph_text_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L307-L338) (Tag: `maps_android_3d_marker_glyph_circle_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L53-L82) (Tag: `maps_android_3d_marker_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L94-L124) (Tag: `maps_android_3d_marker_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L48-L73) (Tag: `maps_android_3d_popover_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L95-L118) (Tag: `maps_android_3d_popover_options_kt`) +- `addModel`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt:49](kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt#L49) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L52-L79) (Tag: `maps_android_3d_model_add_kt`) +- `addPolygon`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt:43](kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt#L43) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L100-L125) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L151-L184) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L49-L74) (Tag: `maps_android_3d_polygon_add_kt`) +- `addPolyline`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt:37](kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt#L37) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L48-L70) (Tag: `maps_android_3d_polyline_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L96-L122) (Tag: `maps_android_3d_polyline_options_kt`) +- `addPopover`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt:55](kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt#L55) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L48-L73) (Tag: `maps_android_3d_popover_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L95-L118) (Tag: `maps_android_3d_popover_options_kt`) +- `flyCameraAround`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt:68](kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt#L68) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L137-L176) (Tag: `maps_android_3d_camera_stop_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L93-L125) (Tag: `maps_android_3d_camera_fly_around_kt`) +- `flyCameraTo`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt:200](kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt#L200) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt:67](kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt#L67) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L137-L176) (Tag: `maps_android_3d_camera_stop_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L62-L81) (Tag: `maps_android_3d_camera_fly_to_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:202](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L202) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L136-L166) (Tag: `maps_android_3d_marker_click_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L227-L255) (Tag: `maps_android_3d_marker_glyph_color_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L267-L295) (Tag: `maps_android_3d_marker_glyph_text_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L307-L338) (Tag: `maps_android_3d_marker_glyph_circle_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L53-L82) (Tag: `maps_android_3d_marker_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L94-L124) (Tag: `maps_android_3d_marker_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt:82](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L82) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:56](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L56) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:127](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L127) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:186](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L186) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:76](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L76) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:124](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L124) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:72](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L72) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:120](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L120) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:75](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L75) (Tag: `No Tag`) +- `getCamera`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt:57](kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt#L57) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt:65](kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt#L65) (Tag: `No Tag`) +- `getCameraRestriction`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt:72](kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt#L72) (Tag: `No Tag`) +- `getMapMode`: ❌ No coverage +- `setCamera`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt:60](kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt#L60) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L235-L259) (Tag: `maps_android_3d_camera_restriction_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L93-L125) (Tag: `maps_android_3d_camera_fly_around_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L42-L83) (Tag: `maps_android_3d_init_basic_kt`) +- `setCameraAnimationEndListener`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/utils/MapExtensions.kt:19](kotlin-app/src/main/java/com/example/snippets/kotlin/utils/MapExtensions.kt#L19) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/utils/MapExtensions.kt:20](kotlin-app/src/main/java/com/example/snippets/kotlin/utils/MapExtensions.kt#L20) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/utils/MapExtensions.kt:27](kotlin-app/src/main/java/com/example/snippets/kotlin/utils/MapExtensions.kt#L27) (Tag: `No Tag`) +- `setCameraChangedListener`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt:61](kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt#L61) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt:206](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L206) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L188-L202) (Tag: `maps_android_3d_camera_events_kt`) +- `setCameraRestriction`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt:71](kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt#L71) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L235-L259) (Tag: `maps_android_3d_camera_restriction_kt`) +- `setMap3DClickListener`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt:62](kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt#L62) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L44-L53) (Tag: `maps_android_3d_place_click_kt`) +- `setMapMode`: ❌ No coverage +- `setOnMapReadyListener`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt:127](kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt#L127) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt:69](kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt#L69) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L94-L114) (Tag: `maps_android_3d_init_listeners_kt`) +- `setOnMapSteadyListener`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt:70](kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt#L70) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L219-L223) (Tag: `maps_android_3d_camera_steady_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L93-L125) (Tag: `maps_android_3d_camera_fly_around_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L94-L114) (Tag: `maps_android_3d_init_listeners_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/utils/MapExtensions.kt:40](kotlin-app/src/main/java/com/example/snippets/kotlin/utils/MapExtensions.kt#L40) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/utils/MapExtensions.kt:42](kotlin-app/src/main/java/com/example/snippets/kotlin/utils/MapExtensions.kt#L42) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/utils/MapExtensions.kt:51](kotlin-app/src/main/java/com/example/snippets/kotlin/utils/MapExtensions.kt#L51) (Tag: `No Tag`) +- `stopCameraAnimation`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt:66](kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt#L66) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L137-L176) (Tag: `maps_android_3d_camera_stop_kt`) + +### `Hole` +- `getVertices`: ❌ No coverage +- `setVertices`: ❌ No coverage +- `writeToParcel`: ❌ No coverage + +### `ImageView` +- `equals`: ❌ No coverage +- `getResourceId`: ❌ No coverage +- `hashCode`: ❌ No coverage +- `setResourceId`: ❌ No coverage +- `writeToParcel`: ❌ No coverage + +### `LatLngAltitude` +- `getAltitude`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt:73](kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt#L73) (Tag: `No Tag`) +- `getLatitude`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt:71](kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt#L71) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:205](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L205) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L227-L255) (Tag: `maps_android_3d_marker_glyph_color_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L267-L295) (Tag: `maps_android_3d_marker_glyph_text_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L307-L338) (Tag: `maps_android_3d_marker_glyph_circle_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L53-L82) (Tag: `maps_android_3d_marker_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L94-L124) (Tag: `maps_android_3d_marker_options_kt`) +- `getLongitude`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt:72](kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt#L72) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:206](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L206) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L227-L255) (Tag: `maps_android_3d_marker_glyph_color_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L267-L295) (Tag: `maps_android_3d_marker_glyph_text_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L307-L338) (Tag: `maps_android_3d_marker_glyph_circle_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L53-L82) (Tag: `maps_android_3d_marker_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L94-L124) (Tag: `maps_android_3d_marker_options_kt`) +- `getPosition`: ❌ No coverage +- `setAltitude`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt:194](kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt#L194) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L137-L176) (Tag: `maps_android_3d_camera_stop_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L235-L259) (Tag: `maps_android_3d_camera_restriction_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L62-L81) (Tag: `maps_android_3d_camera_fly_to_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L93-L125) (Tag: `maps_android_3d_camera_fly_around_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L42-L83) (Tag: `maps_android_3d_init_basic_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:188](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L188) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:207](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L207) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L136-L166) (Tag: `maps_android_3d_marker_click_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L227-L255) (Tag: `maps_android_3d_marker_glyph_color_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L267-L295) (Tag: `maps_android_3d_marker_glyph_text_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L307-L338) (Tag: `maps_android_3d_marker_glyph_circle_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L53-L82) (Tag: `maps_android_3d_marker_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L94-L124) (Tag: `maps_android_3d_marker_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L52-L79) (Tag: `maps_android_3d_model_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:58](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L58) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:132](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L132) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:188](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L188) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:81](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L81) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L100-L125) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L151-L184) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L49-L74) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:129](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L129) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:77](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L77) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L48-L70) (Tag: `maps_android_3d_polyline_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L96-L122) (Tag: `maps_android_3d_polyline_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:122](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L122) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:77](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L77) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L48-L73) (Tag: `maps_android_3d_popover_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L95-L118) (Tag: `maps_android_3d_popover_options_kt`) +- `setLatitude`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt:192](kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt#L192) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L137-L176) (Tag: `maps_android_3d_camera_stop_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L235-L259) (Tag: `maps_android_3d_camera_restriction_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L62-L81) (Tag: `maps_android_3d_camera_fly_to_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L93-L125) (Tag: `maps_android_3d_camera_fly_around_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L42-L83) (Tag: `maps_android_3d_init_basic_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:186](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L186) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:205](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L205) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L136-L166) (Tag: `maps_android_3d_marker_click_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L227-L255) (Tag: `maps_android_3d_marker_glyph_color_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L267-L295) (Tag: `maps_android_3d_marker_glyph_text_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L307-L338) (Tag: `maps_android_3d_marker_glyph_circle_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L53-L82) (Tag: `maps_android_3d_marker_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L94-L124) (Tag: `maps_android_3d_marker_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L52-L79) (Tag: `maps_android_3d_model_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:58](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L58) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:130](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L130) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:188](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L188) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:79](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L79) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L100-L125) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L151-L184) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L49-L74) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:127](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L127) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:75](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L75) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L48-L70) (Tag: `maps_android_3d_polyline_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L96-L122) (Tag: `maps_android_3d_polyline_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:122](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L122) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:77](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L77) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L48-L73) (Tag: `maps_android_3d_popover_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L95-L118) (Tag: `maps_android_3d_popover_options_kt`) +- `setLongitude`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt:193](kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt#L193) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L137-L176) (Tag: `maps_android_3d_camera_stop_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L235-L259) (Tag: `maps_android_3d_camera_restriction_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L62-L81) (Tag: `maps_android_3d_camera_fly_to_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L93-L125) (Tag: `maps_android_3d_camera_fly_around_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L42-L83) (Tag: `maps_android_3d_init_basic_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:187](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L187) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:206](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L206) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L136-L166) (Tag: `maps_android_3d_marker_click_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L227-L255) (Tag: `maps_android_3d_marker_glyph_color_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L267-L295) (Tag: `maps_android_3d_marker_glyph_text_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L307-L338) (Tag: `maps_android_3d_marker_glyph_circle_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L53-L82) (Tag: `maps_android_3d_marker_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L94-L124) (Tag: `maps_android_3d_marker_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L52-L79) (Tag: `maps_android_3d_model_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt:58](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt#L58) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:131](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L131) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:188](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L188) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt:80](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L80) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L100-L125) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L151-L184) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L49-L74) (Tag: `maps_android_3d_polygon_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:128](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L128) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt:76](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L76) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L48-L70) (Tag: `maps_android_3d_polyline_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L96-L122) (Tag: `maps_android_3d_polyline_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:122](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L122) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt:77](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L77) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L48-L73) (Tag: `maps_android_3d_popover_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L95-L118) (Tag: `maps_android_3d_popover_options_kt`) +- `writeToParcel`: ❌ No coverage + +### `LatLngBounds` +- `getNorthEastLat`: ❌ No coverage +- `getNorthEastLng`: ❌ No coverage +- `getSouthWestLat`: ❌ No coverage +- `getSouthWestLng`: ❌ No coverage +- `setNorthEastLat`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L235-L259) (Tag: `maps_android_3d_camera_restriction_kt`) +- `setNorthEastLng`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L235-L259) (Tag: `maps_android_3d_camera_restriction_kt`) +- `setSouthWestLat`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L235-L259) (Tag: `maps_android_3d_camera_restriction_kt`) +- `setSouthWestLng`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt#L235-L259) (Tag: `maps_android_3d_camera_restriction_kt`) +- `writeToParcel`: ❌ No coverage + +### `Map3DOptions` +- `attributes`: ❌ No coverage +- `bounds`: ❌ No coverage +- `centerAlt`: ❌ No coverage +- `centerLat`: ❌ No coverage +- `centerLng`: ❌ No coverage +- `defaultUiDisabled`: ❌ No coverage +- `fromAttributeSet`: ❌ No coverage +- `getAttributes`: ❌ No coverage +- `getBounds`: ❌ No coverage +- `getCenterAlt`: ❌ No coverage +- `getCenterLat`: ❌ No coverage +- `getCenterLng`: ❌ No coverage +- `getDefaultUiDisabled`: ❌ No coverage +- `getHeading`: ❌ No coverage +- `getMapId`: ❌ No coverage +- `getMapMode`: ❌ No coverage +- `getMaxAltitude`: ❌ No coverage +- `getMaxHeading`: ❌ No coverage +- `getMaxTilt`: ❌ No coverage +- `getMinAltitude`: ❌ No coverage +- `getMinHeading`: ❌ No coverage +- `getMinTilt`: ❌ No coverage +- `getOptions`: ❌ No coverage +- `getRange`: ❌ No coverage +- `getRoll`: ❌ No coverage +- `getTilt`: ❌ No coverage +- `heading`: ❌ No coverage +- `mapId`: ❌ No coverage +- `mapMode`: ❌ No coverage +- `maxAltitude`: ❌ No coverage +- `maxHeading`: ❌ No coverage +- `maxTilt`: ❌ No coverage +- `minAltitude`: ❌ No coverage +- `minHeading`: ❌ No coverage +- `minTilt`: ❌ No coverage +- `options`: ❌ No coverage +- `range`: ❌ No coverage +- `roll`: ❌ No coverage +- `tilt`: ❌ No coverage + +### `Map3DView` +- `getMap3DViewAsync`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt:122](kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt#L122) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt#L42-L83) (Tag: `maps_android_3d_init_basic_kt`) +- `getOverlayView`: ❌ No coverage +- `getParams`: ❌ No coverage +- `overlayView`: ❌ No coverage +- `params`: ❌ No coverage +- `setParams`: ❌ No coverage + +### `Marker` +- `getAltitudeMode`: ❌ No coverage +- `getCollisionBehavior`: ❌ No coverage +- `getDrawsWhenOccluded`: ❌ No coverage +- `getId`: ❌ No coverage +- `getLabel`: ❌ No coverage +- `getPosition`: ❌ No coverage +- `getSizePreserved`: ❌ No coverage +- `getUrl`: ❌ No coverage +- `getZIndex`: ❌ No coverage +- `isExtruded`: ❌ No coverage +- `onMarkerClick`: ❌ No coverage +- `remove`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/SnippetRegistry.kt:60](kotlin-app/src/main/java/com/example/snippets/kotlin/SnippetRegistry.kt#L60) (Tag: `No Tag`) +- `setAltitudeMode`: ❌ No coverage +- `setClickListener`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L136-L166) (Tag: `maps_android_3d_marker_click_kt`) +- `setCollisionBehavior`: ❌ No coverage +- `setDrawsWhenOccluded`: ❌ No coverage +- `setExtruded`: ❌ No coverage +- `setLabel`: ❌ No coverage +- `setPosition`: ❌ No coverage +- `setSizePreserved`: ❌ No coverage +- `setUrl`: ❌ No coverage +- `setZIndex`: ❌ No coverage + +### `MarkerOptions` +- `getAltitudeMode`: ❌ No coverage +- `getCollisionBehavior`: ❌ No coverage +- `getId`: ❌ No coverage +- `getLabel`: ❌ No coverage +- `getPosition`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:205](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L205) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:206](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L206) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L227-L255) (Tag: `maps_android_3d_marker_glyph_color_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L267-L295) (Tag: `maps_android_3d_marker_glyph_text_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L307-L338) (Tag: `maps_android_3d_marker_glyph_circle_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L94-L124) (Tag: `maps_android_3d_marker_options_kt`) +- `getZIndex`: ❌ No coverage +- `isDrawnWhenOccluded`: ❌ No coverage +- `isExtruded`: ❌ No coverage +- `isSizePreserved`: ❌ No coverage +- `setAltitudeMode`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L94-L124) (Tag: `maps_android_3d_marker_options_kt`) +- `setCollisionBehavior`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L94-L124) (Tag: `maps_android_3d_marker_options_kt`) +- `setDrawnWhenOccluded`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L94-L124) (Tag: `maps_android_3d_marker_options_kt`) +- `setExtruded`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L94-L124) (Tag: `maps_android_3d_marker_options_kt`) +- `setId`: ❌ No coverage +- `setLabel`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:190](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L190) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L227-L255) (Tag: `maps_android_3d_marker_glyph_color_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L267-L295) (Tag: `maps_android_3d_marker_glyph_text_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L307-L338) (Tag: `maps_android_3d_marker_glyph_circle_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L53-L82) (Tag: `maps_android_3d_marker_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L94-L124) (Tag: `maps_android_3d_marker_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L95-L118) (Tag: `maps_android_3d_popover_options_kt`) +- `setPosition`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:185](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L185) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L136-L166) (Tag: `maps_android_3d_marker_click_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L227-L255) (Tag: `maps_android_3d_marker_glyph_color_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L267-L295) (Tag: `maps_android_3d_marker_glyph_text_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L307-L338) (Tag: `maps_android_3d_marker_glyph_circle_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L53-L82) (Tag: `maps_android_3d_marker_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L94-L124) (Tag: `maps_android_3d_marker_options_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L48-L73) (Tag: `maps_android_3d_popover_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L95-L118) (Tag: `maps_android_3d_popover_options_kt`) +- `setSizePreserved`: ❌ No coverage +- `setZIndex`: ❌ No coverage + +### `MarkerOptions.that` +- `getStyle`: ❌ No coverage +- `setStyle`: ❌ No coverage +- `writeToParcel`: ❌ No coverage + +### `MarkerStyle` +- `equals`: ❌ No coverage +- `getImageView`: ❌ No coverage +- `getPinConfiguration`: ❌ No coverage +- `hashCode`: ❌ No coverage +- `writeToParcel`: ❌ No coverage + +### `Model` +- `getAltitudeMode`: ❌ No coverage +- `getId`: ❌ No coverage +- `getOrientation`: ❌ No coverage +- `getPosition`: ❌ No coverage +- `getScale`: ❌ No coverage +- `getUrl`: ❌ No coverage +- `onModelClick`: ❌ No coverage +- `remove`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/SnippetRegistry.kt:63](kotlin-app/src/main/java/com/example/snippets/kotlin/SnippetRegistry.kt#L63) (Tag: `No Tag`) +- `setAltitudeMode`: ❌ No coverage +- `setClickListener`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L52-L79) (Tag: `maps_android_3d_model_add_kt`) +- `setOrientation`: ❌ No coverage +- `setPosition`: ❌ No coverage +- `setScale`: ❌ No coverage +- `setUrl`: ❌ No coverage + +### `ModelOptions` +- `getAltitudeMode`: ❌ No coverage +- `getId`: ❌ No coverage +- `getOrientation`: ❌ No coverage +- `getPosition`: ❌ No coverage +- `getScale`: ❌ No coverage +- `getUrl`: ❌ No coverage +- `setAltitudeMode`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L52-L79) (Tag: `maps_android_3d_model_add_kt`) +- `setId`: ❌ No coverage +- `setOrientation`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L52-L79) (Tag: `maps_android_3d_model_add_kt`) +- `setPosition`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L52-L79) (Tag: `maps_android_3d_model_add_kt`) +- `setScale`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L52-L79) (Tag: `maps_android_3d_model_add_kt`) +- `setUrl`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L52-L79) (Tag: `maps_android_3d_model_add_kt`) +- `writeToParcel`: ❌ No coverage + +### `Orientation` +- `getHeading`: ❌ No coverage +- `getRoll`: ❌ No coverage +- `getTilt`: ❌ No coverage +- `setHeading`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L52-L79) (Tag: `maps_android_3d_model_add_kt`) +- `setRoll`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L52-L79) (Tag: `maps_android_3d_model_add_kt`) +- `setTilt`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L52-L79) (Tag: `maps_android_3d_model_add_kt`) +- `writeToParcel`: ❌ No coverage + +### `PinConfiguration` +- `builder`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:192](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L192) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L227-L255) (Tag: `maps_android_3d_marker_glyph_color_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L267-L295) (Tag: `maps_android_3d_marker_glyph_text_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L307-L338) (Tag: `maps_android_3d_marker_glyph_circle_kt`) +- `equals`: ❌ No coverage +- `getBackgroundColor`: ❌ No coverage +- `getBorderColor`: ❌ No coverage +- `getGlyph`: ❌ No coverage +- `getScale`: ❌ No coverage +- `hashCode`: ❌ No coverage +- `setBackgroundColor`: ❌ No coverage +- `setBorderColor`: ❌ No coverage +- `setGlyph`: ❌ No coverage +- `setScale`: ❌ No coverage +- `writeToParcel`: ❌ No coverage + +### `PinConfiguration.Builder` +- `build`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:197](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L197) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L227-L255) (Tag: `maps_android_3d_marker_glyph_color_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L267-L295) (Tag: `maps_android_3d_marker_glyph_text_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L307-L338) (Tag: `maps_android_3d_marker_glyph_circle_kt`) +- `setBackgroundColor`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:195](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L195) (Tag: `No Tag`) +- `setBorderColor`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:196](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L196) (Tag: `No Tag`) +- `setGlyph`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:194](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L194) (Tag: `No Tag`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L227-L255) (Tag: `maps_android_3d_marker_glyph_color_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L267-L295) (Tag: `maps_android_3d_marker_glyph_text_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L307-L338) (Tag: `maps_android_3d_marker_glyph_circle_kt`) +- `setScale`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt:193](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt#L193) (Tag: `No Tag`) + +### `Polygon` +- `getAltitudeMode`: ❌ No coverage +- `getDrawsOccludedSegments`: ❌ No coverage +- `getExtruded`: ❌ No coverage +- `getFillColor`: ❌ No coverage +- `getGeodesic`: ❌ No coverage +- `getId`: ❌ No coverage +- `getInnerCoordinates`: ❌ No coverage +- `getInnerPaths`: ❌ No coverage +- `getOuterCoordinates`: ❌ No coverage +- `getPath`: ❌ No coverage +- `getStrokeColor`: ❌ No coverage +- `getStrokeWidth`: ❌ No coverage +- `getZIndex`: ❌ No coverage +- `onPolygonClick`: ❌ No coverage +- `remove`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/SnippetRegistry.kt:62](kotlin-app/src/main/java/com/example/snippets/kotlin/SnippetRegistry.kt#L62) (Tag: `No Tag`) +- `setAltitudeMode`: ❌ No coverage +- `setClickListener`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L100-L125) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L151-L184) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L49-L74) (Tag: `maps_android_3d_polygon_add_kt`) +- `setDrawsOccludedSegments`: ❌ No coverage +- `setExtruded`: ❌ No coverage +- `setFillColor`: ❌ No coverage +- `setGeodesic`: ❌ No coverage +- `setInnerCoordinates`: ❌ No coverage +- `setInnerPaths`: ❌ No coverage +- `setOuterCoordinates`: ❌ No coverage +- `setPath`: ❌ No coverage +- `setStrokeColor`: ❌ No coverage +- `setStrokeWidth`: ❌ No coverage +- `setZIndex`: ❌ No coverage + +### `PolygonOptions` +- `getAltitudeMode`: ❌ No coverage +- `getDrawsOccludedSegments`: ❌ No coverage +- `getExtruded`: ❌ No coverage +- `getFillColor`: ❌ No coverage +- `getGeodesic`: ❌ No coverage +- `getId`: ❌ No coverage +- `getInnerPaths`: ❌ No coverage +- `getPath`: ❌ No coverage +- `getStrokeColor`: ❌ No coverage +- `getStrokeWidth`: ❌ No coverage +- `getZIndex`: ❌ No coverage +- `setAltitudeMode`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L100-L125) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L151-L184) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L49-L74) (Tag: `maps_android_3d_polygon_add_kt`) +- `setDrawsOccludedSegments`: ❌ No coverage +- `setExtruded`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L100-L125) (Tag: `maps_android_3d_polygon_extruded_kt`) +- `setFillColor`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L100-L125) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L151-L184) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L49-L74) (Tag: `maps_android_3d_polygon_add_kt`) +- `setGeodesic`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L100-L125) (Tag: `maps_android_3d_polygon_extruded_kt`) +- `setId`: ❌ No coverage +- `setInnerPaths`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L151-L184) (Tag: `maps_android_3d_polygon_hole_kt`) +- `setPath`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L100-L125) (Tag: `maps_android_3d_polygon_extruded_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L151-L184) (Tag: `maps_android_3d_polygon_hole_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L49-L74) (Tag: `maps_android_3d_polygon_add_kt`) +- `setStrokeColor`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L49-L74) (Tag: `maps_android_3d_polygon_add_kt`) +- `setStrokeWidth`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt#L49-L74) (Tag: `maps_android_3d_polygon_add_kt`) +- `setZIndex`: ❌ No coverage +- `writeToParcel`: ❌ No coverage + +### `Polyline` +- `getAltitudeMode`: ❌ No coverage +- `getCoordinates`: ❌ No coverage +- `getDrawsOccludedSegments`: ❌ No coverage +- `getGeodesic`: ❌ No coverage +- `getId`: ❌ No coverage +- `getOuterColor`: ❌ No coverage +- `getOuterWidth`: ❌ No coverage +- `getPath`: ❌ No coverage +- `getStrokeColor`: ❌ No coverage +- `getStrokeWidth`: ❌ No coverage +- `getZIndex`: ❌ No coverage +- `onPolylineClick`: ❌ No coverage +- `remove`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/SnippetRegistry.kt:61](kotlin-app/src/main/java/com/example/snippets/kotlin/SnippetRegistry.kt#L61) (Tag: `No Tag`) +- `setAltitudeMode`: ❌ No coverage +- `setClickListener`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L48-L70) (Tag: `maps_android_3d_polyline_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L96-L122) (Tag: `maps_android_3d_polyline_options_kt`) +- `setCoordinates`: ❌ No coverage +- `setDrawsOccludedSegments`: ❌ No coverage +- `setGeodesic`: ❌ No coverage +- `setOuterColor`: ❌ No coverage +- `setOuterWidth`: ❌ No coverage +- `setPath`: ❌ No coverage +- `setStrokeColor`: ❌ No coverage +- `setStrokeWidth`: ❌ No coverage +- `setZIndex`: ❌ No coverage + +### `PolylineOptions` +- `getAltitudeMode`: ❌ No coverage +- `getDrawsOccludedSegments`: ❌ No coverage +- `getExtruded`: ❌ No coverage +- `getGeodesic`: ❌ No coverage +- `getId`: ❌ No coverage +- `getOuterColor`: ❌ No coverage +- `getOuterWidth`: ❌ No coverage +- `getPath`: ❌ No coverage +- `getStrokeColor`: ❌ No coverage +- `getStrokeWidth`: ❌ No coverage +- `getZIndex`: ❌ No coverage +- `setAltitudeMode`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L48-L70) (Tag: `maps_android_3d_polyline_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L96-L122) (Tag: `maps_android_3d_polyline_options_kt`) +- `setDrawsOccludedSegments`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L96-L122) (Tag: `maps_android_3d_polyline_options_kt`) +- `setExtruded`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L96-L122) (Tag: `maps_android_3d_polyline_options_kt`) +- `setGeodesic`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L96-L122) (Tag: `maps_android_3d_polyline_options_kt`) +- `setId`: ❌ No coverage +- `setOuterColor`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L96-L122) (Tag: `maps_android_3d_polyline_options_kt`) +- `setOuterWidth`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L96-L122) (Tag: `maps_android_3d_polyline_options_kt`) +- `setPath`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L48-L70) (Tag: `maps_android_3d_polyline_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L96-L122) (Tag: `maps_android_3d_polyline_options_kt`) +- `setStrokeColor`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L48-L70) (Tag: `maps_android_3d_polyline_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L96-L122) (Tag: `maps_android_3d_polyline_options_kt`) +- `setStrokeWidth`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L48-L70) (Tag: `maps_android_3d_polyline_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt#L96-L122) (Tag: `maps_android_3d_polyline_options_kt`) +- `setZIndex`: ❌ No coverage +- `writeToParcel`: ❌ No coverage + +### `Popover` +- `altitudeMode`: ❌ No coverage +- `anchorId`: ❌ No coverage +- `anchorOffset`: ❌ No coverage +- `autoCloseEnabled`: ❌ No coverage +- `autoPanEnabled`: ❌ No coverage +- `autoPanFn`: ❌ No coverage +- `content`: ❌ No coverage +- `getAltitudeMode`: ❌ No coverage +- `getAnchorId`: ❌ No coverage +- `getAnchorOffset`: ❌ No coverage +- `getAutoCloseEnabled`: ❌ No coverage +- `getAutoPanEnabled`: ❌ No coverage +- `getAutoPanFn`: ❌ No coverage +- `getContent`: ❌ No coverage +- `getIsVisible`: ❌ No coverage +- `getPositionAnchor`: ❌ No coverage +- `getRemoveFn`: ❌ No coverage +- `hide`: ❌ No coverage +- `isVisible`: ❌ No coverage +- `positionAnchor`: ❌ No coverage +- `remove`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/SnippetRegistry.kt:64](kotlin-app/src/main/java/com/example/snippets/kotlin/SnippetRegistry.kt#L64) (Tag: `No Tag`) +- `removeFn`: ❌ No coverage +- `show`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L48-L73) (Tag: `maps_android_3d_popover_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L95-L118) (Tag: `maps_android_3d_popover_options_kt`) +- `toggle`: ❌ No coverage + +### `PopoverOptions` +- `getAltitudeMode`: ❌ No coverage +- `getAnchorOffset`: ❌ No coverage +- `getAutoCloseEnabled`: ❌ No coverage +- `getAutoPanEnabled`: ❌ No coverage +- `getContent`: ❌ No coverage +- `getPopoverStyle`: ❌ No coverage +- `getPositionAnchor`: ❌ No coverage +- `setAltitudeMode`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L48-L73) (Tag: `maps_android_3d_popover_add_kt`) +- `setAnchorOffset`: ❌ No coverage +- `setAutoCloseEnabled`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L95-L118) (Tag: `maps_android_3d_popover_options_kt`) +- `setAutoPanEnabled`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L95-L118) (Tag: `maps_android_3d_popover_options_kt`) +- `setContent`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L48-L73) (Tag: `maps_android_3d_popover_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L95-L118) (Tag: `maps_android_3d_popover_options_kt`) +- `setPopoverStyle`: ❌ No coverage +- `setPositionAnchor`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L48-L73) (Tag: `maps_android_3d_popover_add_kt`) + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt#L95-L118) (Tag: `maps_android_3d_popover_options_kt`) + +### `PopoverShadow` +- `getColor`: ❌ No coverage +- `getOffsetX`: ❌ No coverage +- `getOffsetY`: ❌ No coverage +- `getRadius`: ❌ No coverage +- `setColor`: ❌ No coverage +- `setOffsetX`: ❌ No coverage +- `setOffsetY`: ❌ No coverage +- `setRadius`: ❌ No coverage + +### `PopoverStyle` +- `getBackgroundColor`: ❌ No coverage +- `getBorderRadius`: ❌ No coverage +- `getPadding`: ❌ No coverage +- `getShadow`: ❌ No coverage +- `setBackgroundColor`: ❌ No coverage +- `setBorderRadius`: ❌ No coverage +- `setPadding`: ❌ No coverage +- `setShadow`: ❌ No coverage + +### `Validators.for` +- `Anchorable`: ❌ No coverage +- `Camera`: ❌ No coverage +- `CameraRestriction`: ❌ No coverage +- `FlyAroundOptions`: ❌ No coverage +- `FlyToOptions`: ❌ No coverage +- `Hole`: ❌ No coverage +- `LatLngAltitude`: ❌ No coverage +- `LatLngBounds`: ❌ No coverage +- `Map3DOptions`: ❌ No coverage +- `MarkerOptions`: ❌ No coverage +- `ModelOptions`: ❌ No coverage +- `Orientation`: ❌ No coverage +- `PolygonOptions`: ❌ No coverage +- `PolylineOptions`: ❌ No coverage +- `PopoverOptions`: ❌ No coverage +- `Vector3D`: ❌ No coverage +- `requireNonNegative`: ❌ No coverage +- `validateAltitude`: ❌ No coverage +- `validateFinite`: ❌ No coverage +- `validateHeading`: ❌ No coverage +- `validateLatitude`: ❌ No coverage +- `validateLongitude`: ❌ No coverage +- `validateRange`: ❌ No coverage +- `validateRoll`: ❌ No coverage +- `validateTilt`: ❌ No coverage + +### `Vector3D` +- `getX`: ❌ No coverage +- `getY`: ❌ No coverage +- `getZ`: ❌ No coverage +- `setX`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L52-L79) (Tag: `maps_android_3d_model_add_kt`) +- `setY`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L52-L79) (Tag: `maps_android_3d_model_add_kt`) +- `setZ`: + - [kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt](kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt#L52-L79) (Tag: `maps_android_3d_model_add_kt`) +- `writeToParcel`: ❌ No coverage + +### Missing Extracted API Coverage (Kotlin Snippets) +The following non-getter/setter APIs currently have `0` occurrences within this section: + +- `Camera.writeToParcel` +- `CameraRestriction.writeToParcel` +- `FlyAroundOptions.writeToParcel` +- `FlyToOptions.writeToParcel` +- `Glyph.equals` +- `Glyph.hashCode` +- `Glyph.writeToParcel` +- `Hole.writeToParcel` +- `ImageView.equals` +- `ImageView.hashCode` +- `ImageView.writeToParcel` +- `LatLngAltitude.writeToParcel` +- `LatLngBounds.writeToParcel` +- `Map3DOptions.attributes` +- `Map3DOptions.bounds` +- `Map3DOptions.centerAlt` +- `Map3DOptions.centerLat` +- `Map3DOptions.centerLng` +- `Map3DOptions.defaultUiDisabled` +- `Map3DOptions.fromAttributeSet` +- `Map3DOptions.heading` +- `Map3DOptions.mapId` +- `Map3DOptions.mapMode` +- `Map3DOptions.maxAltitude` +- `Map3DOptions.maxHeading` +- `Map3DOptions.maxTilt` +- `Map3DOptions.minAltitude` +- `Map3DOptions.minHeading` +- `Map3DOptions.minTilt` +- `Map3DOptions.options` +- `Map3DOptions.range` +- `Map3DOptions.roll` +- `Map3DOptions.tilt` +- `Map3DView.overlayView` +- `Map3DView.params` +- `Marker.isExtruded` +- `Marker.onMarkerClick` +- `MarkerOptions.isDrawnWhenOccluded` +- `MarkerOptions.isExtruded` +- `MarkerOptions.isSizePreserved` +- `MarkerOptions.that.writeToParcel` +- `MarkerStyle.equals` +- `MarkerStyle.hashCode` +- `MarkerStyle.writeToParcel` +- `Model.onModelClick` +- `ModelOptions.writeToParcel` +- `Orientation.writeToParcel` +- `PinConfiguration.equals` +- `PinConfiguration.hashCode` +- `PinConfiguration.writeToParcel` +- `Polygon.onPolygonClick` +- `PolygonOptions.writeToParcel` +- `Polyline.onPolylineClick` +- `PolylineOptions.writeToParcel` +- `Popover.altitudeMode` +- `Popover.anchorId` +- `Popover.anchorOffset` +- `Popover.autoCloseEnabled` +- `Popover.autoPanEnabled` +- `Popover.autoPanFn` +- `Popover.content` +- `Popover.hide` +- `Popover.isVisible` +- `Popover.positionAnchor` +- `Popover.removeFn` +- `Popover.toggle` +- `Validators.for.Anchorable` +- `Validators.for.Camera` +- `Validators.for.CameraRestriction` +- `Validators.for.FlyAroundOptions` +- `Validators.for.FlyToOptions` +- `Validators.for.Hole` +- `Validators.for.LatLngAltitude` +- `Validators.for.LatLngBounds` +- `Validators.for.Map3DOptions` +- `Validators.for.MarkerOptions` +- `Validators.for.ModelOptions` +- `Validators.for.Orientation` +- `Validators.for.PolygonOptions` +- `Validators.for.PolylineOptions` +- `Validators.for.PopoverOptions` +- `Validators.for.Vector3D` +- `Validators.for.requireNonNegative` +- `Validators.for.validateAltitude` +- `Validators.for.validateFinite` +- `Validators.for.validateHeading` +- `Validators.for.validateLatitude` +- `Validators.for.validateLongitude` +- `Validators.for.validateRange` +- `Validators.for.validateRoll` +- `Validators.for.validateTilt` +- `Vector3D.writeToParcel` + +## Java Snippets +### `Camera` +- `getCenter`: + - [java-app/src/main/java/com/example/snippets/java/MapActivity.java:55](java-app/src/main/java/com/example/snippets/java/MapActivity.java#L55) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L128-L147) (Tag: `maps_android_3d_camera_events_java`) +- `setCenter`: ❌ No coverage +- `setHeading`: ❌ No coverage +- `setRange`: ❌ No coverage +- `setRoll`: ❌ No coverage +- `setTilt`: ❌ No coverage +- `writeToParcel`: ❌ No coverage + +### `CameraRestriction` +- `setBounds`: ❌ No coverage +- `setMaxAltitude`: ❌ No coverage +- `setMaxHeading`: ❌ No coverage +- `setMaxTilt`: ❌ No coverage +- `setMinAltitude`: ❌ No coverage +- `setMinHeading`: ❌ No coverage +- `setMinTilt`: ❌ No coverage +- `writeToParcel`: ❌ No coverage + +### `FlyAroundOptions` +- `getCenter`: ❌ No coverage +- `getDurationInMillis`: ❌ No coverage +- `getRounds`: ❌ No coverage +- `setCenter`: ❌ No coverage +- `setDurationInMillis`: ❌ No coverage +- `setRounds`: ❌ No coverage +- `writeToParcel`: ❌ No coverage + +### `FlyToOptions` +- `getDurationInMillis`: ❌ No coverage +- `getEndCamera`: ❌ No coverage +- `setDurationInMillis`: ❌ No coverage +- `setEndCamera`: ❌ No coverage +- `writeToParcel`: ❌ No coverage + +### `Glyph` +- `equals`: ❌ No coverage +- `fromCircle`: + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L263-L285) (Tag: `maps_android_3d_marker_glyph_circle_java`) +- `fromColor`: + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L159-L189) (Tag: `maps_android_3d_marker_custom_icon_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L201-L220) (Tag: `maps_android_3d_marker_glyph_color_java`) +- `fromText`: + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L232-L251) (Tag: `maps_android_3d_marker_glyph_text_java`) +- `getColor`: ❌ No coverage +- `getImage`: ❌ No coverage +- `getText`: ❌ No coverage +- `hashCode`: ❌ No coverage +- `setColor`: + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L263-L285) (Tag: `maps_android_3d_marker_glyph_circle_java`) +- `setImage`: + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L159-L189) (Tag: `maps_android_3d_marker_custom_icon_java`) +- `setText`: ❌ No coverage +- `writeToParcel`: ❌ No coverage + +### `GoogleMap3D` +- `addMarker`: + - [java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java:54](java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java#L54) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L125-L147) (Tag: `maps_android_3d_marker_click_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L159-L189) (Tag: `maps_android_3d_marker_custom_icon_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L201-L220) (Tag: `maps_android_3d_marker_glyph_color_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L232-L251) (Tag: `maps_android_3d_marker_glyph_text_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L263-L285) (Tag: `maps_android_3d_marker_glyph_circle_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L64-L81) (Tag: `maps_android_3d_marker_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L93-L113) (Tag: `maps_android_3d_marker_options_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L58-L82) (Tag: `maps_android_3d_popover_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L94-L118) (Tag: `maps_android_3d_popover_options_java`) +- `addModel`: + - [java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java:72](java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java#L72) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L60-L78) (Tag: `maps_android_3d_model_add_java`) +- `addPolygon`: + - [java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java:66](java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java#L66) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L100-L124) (Tag: `maps_android_3d_polygon_extruded_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L140-L174) (Tag: `maps_android_3d_polygon_hole_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L60-L84) (Tag: `maps_android_3d_polygon_add_java`) +- `addPolyline`: + - [java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java:60](java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java#L60) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L59-L80) (Tag: `maps_android_3d_polyline_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L96-L121) (Tag: `maps_android_3d_polyline_options_java`) +- `addPopover`: + - [java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java:78](java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java#L78) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L58-L82) (Tag: `maps_android_3d_popover_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L94-L118) (Tag: `maps_android_3d_popover_options_java`) +- `flyCameraAround`: + - [java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java:86](java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java#L86) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L106-L115) (Tag: `maps_android_3d_camera_stop_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L75-L94) (Tag: `maps_android_3d_camera_fly_around_java`) +- `flyCameraTo`: + - [java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java:91](java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java#L91) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L45-L64) (Tag: `maps_android_3d_camera_fly_to_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L125-L147) (Tag: `maps_android_3d_marker_click_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L159-L189) (Tag: `maps_android_3d_marker_custom_icon_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L201-L220) (Tag: `maps_android_3d_marker_glyph_color_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L232-L251) (Tag: `maps_android_3d_marker_glyph_text_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L263-L285) (Tag: `maps_android_3d_marker_glyph_circle_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L64-L81) (Tag: `maps_android_3d_marker_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L93-L113) (Tag: `maps_android_3d_marker_options_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java:83](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L83) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PlaceSnippets.java:74](java-app/src/main/java/com/example/snippets/java/snippets/PlaceSnippets.java#L74) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:128](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L128) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:178](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L178) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java:88](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L88) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:125](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L125) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java:84](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L84) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java:123](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L123) (Tag: `No Tag`) +- `getCamera`: + - [java-app/src/main/java/com/example/snippets/java/MapActivity.java:53](java-app/src/main/java/com/example/snippets/java/MapActivity.java#L53) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java:89](java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java#L89) (Tag: `No Tag`) +- `getCameraRestriction`: + - [java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java:95](java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java#L95) (Tag: `No Tag`) +- `getMapMode`: ❌ No coverage +- `setCamera`: + - [java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java:83](java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java#L83) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java:182](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L182) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L75-L94) (Tag: `maps_android_3d_camera_fly_around_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java#L45-L64) (Tag: `maps_android_3d_init_basic_java`) +- `setCameraAnimationEndListener`: ❌ No coverage +- `setCameraChangedListener`: + - [java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java:84](java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java#L84) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L128-L147) (Tag: `maps_android_3d_camera_events_java`) +- `setCameraRestriction`: + - [java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java:94](java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java#L94) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L184-L194) (Tag: `maps_android_3d_camera_restriction_java`) +- `setMap3DClickListener`: + - [java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java:85](java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java#L85) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PlaceSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PlaceSnippets.java#L56-L68) (Tag: `maps_android_3d_place_click_java`) +- `setMapMode`: ❌ No coverage +- `setOnMapReadyListener`: + - [java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java:92](java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java#L92) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java#L73-L97) (Tag: `maps_android_3d_init_listeners_java`) +- `setOnMapSteadyListener`: + - [java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java:93](java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java#L93) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L159-L163) (Tag: `maps_android_3d_camera_steady_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java#L75-L94) (Tag: `maps_android_3d_camera_fly_around_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java#L73-L97) (Tag: `maps_android_3d_init_listeners_java`) +- `stopCameraAnimation`: + - [java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java:90](java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java#L90) (Tag: `No Tag`) + +### `Hole` +- `getVertices`: ❌ No coverage +- `setVertices`: ❌ No coverage +- `writeToParcel`: ❌ No coverage + +### `ImageView` +- `equals`: ❌ No coverage +- `getResourceId`: ❌ No coverage +- `hashCode`: ❌ No coverage +- `setResourceId`: ❌ No coverage +- `writeToParcel`: ❌ No coverage + +### `LatLngAltitude` +- `getAltitude`: + - [java-app/src/main/java/com/example/snippets/java/MapActivity.java:64](java-app/src/main/java/com/example/snippets/java/MapActivity.java#L64) (Tag: `No Tag`) +- `getLatitude`: + - [java-app/src/main/java/com/example/snippets/java/MapActivity.java:64](java-app/src/main/java/com/example/snippets/java/MapActivity.java#L64) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L125-L147) (Tag: `maps_android_3d_marker_click_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L159-L189) (Tag: `maps_android_3d_marker_custom_icon_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L201-L220) (Tag: `maps_android_3d_marker_glyph_color_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L232-L251) (Tag: `maps_android_3d_marker_glyph_text_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L263-L285) (Tag: `maps_android_3d_marker_glyph_circle_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L64-L81) (Tag: `maps_android_3d_marker_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L93-L113) (Tag: `maps_android_3d_marker_options_java`) +- `getLongitude`: + - [java-app/src/main/java/com/example/snippets/java/MapActivity.java:64](java-app/src/main/java/com/example/snippets/java/MapActivity.java#L64) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L125-L147) (Tag: `maps_android_3d_marker_click_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L159-L189) (Tag: `maps_android_3d_marker_custom_icon_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L201-L220) (Tag: `maps_android_3d_marker_glyph_color_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L232-L251) (Tag: `maps_android_3d_marker_glyph_text_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L263-L285) (Tag: `maps_android_3d_marker_glyph_circle_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L64-L81) (Tag: `maps_android_3d_marker_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L93-L113) (Tag: `maps_android_3d_marker_options_java`) +- `getPosition`: ❌ No coverage +- `setAltitude`: ❌ No coverage +- `setLatitude`: ❌ No coverage +- `setLongitude`: ❌ No coverage +- `writeToParcel`: ❌ No coverage + +### `LatLngBounds` +- `getNorthEastLat`: ❌ No coverage +- `getNorthEastLng`: ❌ No coverage +- `getSouthWestLat`: ❌ No coverage +- `getSouthWestLng`: ❌ No coverage +- `setNorthEastLat`: ❌ No coverage +- `setNorthEastLng`: ❌ No coverage +- `setSouthWestLat`: ❌ No coverage +- `setSouthWestLng`: ❌ No coverage +- `writeToParcel`: ❌ No coverage + +### `Map3DOptions` +- `attributes`: ❌ No coverage +- `bounds`: ❌ No coverage +- `centerAlt`: ❌ No coverage +- `centerLat`: ❌ No coverage +- `centerLng`: ❌ No coverage +- `defaultUiDisabled`: ❌ No coverage +- `fromAttributeSet`: ❌ No coverage +- `getAttributes`: ❌ No coverage +- `getBounds`: ❌ No coverage +- `getCenterAlt`: ❌ No coverage +- `getCenterLat`: ❌ No coverage +- `getCenterLng`: ❌ No coverage +- `getDefaultUiDisabled`: ❌ No coverage +- `getHeading`: ❌ No coverage +- `getMapId`: ❌ No coverage +- `getMapMode`: ❌ No coverage +- `getMaxAltitude`: ❌ No coverage +- `getMaxHeading`: ❌ No coverage +- `getMaxTilt`: ❌ No coverage +- `getMinAltitude`: ❌ No coverage +- `getMinHeading`: ❌ No coverage +- `getMinTilt`: ❌ No coverage +- `getOptions`: ❌ No coverage +- `getRange`: ❌ No coverage +- `getRoll`: ❌ No coverage +- `getTilt`: ❌ No coverage +- `heading`: ❌ No coverage +- `mapId`: ❌ No coverage +- `mapMode`: ❌ No coverage +- `maxAltitude`: ❌ No coverage +- `maxHeading`: ❌ No coverage +- `maxTilt`: ❌ No coverage +- `minAltitude`: ❌ No coverage +- `minHeading`: ❌ No coverage +- `minTilt`: ❌ No coverage +- `options`: ❌ No coverage +- `range`: ❌ No coverage +- `roll`: ❌ No coverage +- `tilt`: ❌ No coverage + +### `Map3DView` +- `getMap3DViewAsync`: + - [java-app/src/main/java/com/example/snippets/java/MapActivity.java:115](java-app/src/main/java/com/example/snippets/java/MapActivity.java#L115) (Tag: `No Tag`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java#L45-L64) (Tag: `maps_android_3d_init_basic_java`) +- `getOverlayView`: ❌ No coverage +- `getParams`: ❌ No coverage +- `overlayView`: ❌ No coverage +- `params`: ❌ No coverage +- `setParams`: ❌ No coverage + +### `Marker` +- `getAltitudeMode`: ❌ No coverage +- `getCollisionBehavior`: ❌ No coverage +- `getDrawsWhenOccluded`: ❌ No coverage +- `getId`: ❌ No coverage +- `getLabel`: ❌ No coverage +- `getPosition`: ❌ No coverage +- `getSizePreserved`: ❌ No coverage +- `getUrl`: ❌ No coverage +- `getZIndex`: ❌ No coverage +- `isExtruded`: ❌ No coverage +- `onMarkerClick`: ❌ No coverage +- `remove`: + - [java-app/src/main/java/com/example/snippets/java/SnippetRegistry.java:38](java-app/src/main/java/com/example/snippets/java/SnippetRegistry.java#L38) (Tag: `No Tag`) +- `setAltitudeMode`: ❌ No coverage +- `setClickListener`: + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L125-L147) (Tag: `maps_android_3d_marker_click_java`) +- `setCollisionBehavior`: ❌ No coverage +- `setDrawsWhenOccluded`: ❌ No coverage +- `setExtruded`: ❌ No coverage +- `setLabel`: ❌ No coverage +- `setPosition`: ❌ No coverage +- `setSizePreserved`: ❌ No coverage +- `setUrl`: ❌ No coverage +- `setZIndex`: ❌ No coverage + +### `MarkerOptions` +- `getAltitudeMode`: ❌ No coverage +- `getCollisionBehavior`: ❌ No coverage +- `getId`: ❌ No coverage +- `getLabel`: ❌ No coverage +- `getPosition`: + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L125-L147) (Tag: `maps_android_3d_marker_click_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L159-L189) (Tag: `maps_android_3d_marker_custom_icon_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L201-L220) (Tag: `maps_android_3d_marker_glyph_color_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L232-L251) (Tag: `maps_android_3d_marker_glyph_text_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L263-L285) (Tag: `maps_android_3d_marker_glyph_circle_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L64-L81) (Tag: `maps_android_3d_marker_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L93-L113) (Tag: `maps_android_3d_marker_options_java`) +- `getZIndex`: ❌ No coverage +- `isDrawnWhenOccluded`: ❌ No coverage +- `isExtruded`: ❌ No coverage +- `isSizePreserved`: ❌ No coverage +- `setAltitudeMode`: + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L93-L113) (Tag: `maps_android_3d_marker_options_java`) +- `setCollisionBehavior`: + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L93-L113) (Tag: `maps_android_3d_marker_options_java`) +- `setDrawnWhenOccluded`: + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L93-L113) (Tag: `maps_android_3d_marker_options_java`) +- `setExtruded`: + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L93-L113) (Tag: `maps_android_3d_marker_options_java`) +- `setId`: ❌ No coverage +- `setLabel`: + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L159-L189) (Tag: `maps_android_3d_marker_custom_icon_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L201-L220) (Tag: `maps_android_3d_marker_glyph_color_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L232-L251) (Tag: `maps_android_3d_marker_glyph_text_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L263-L285) (Tag: `maps_android_3d_marker_glyph_circle_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L64-L81) (Tag: `maps_android_3d_marker_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L93-L113) (Tag: `maps_android_3d_marker_options_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L94-L118) (Tag: `maps_android_3d_popover_options_java`) +- `setPosition`: + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L125-L147) (Tag: `maps_android_3d_marker_click_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L159-L189) (Tag: `maps_android_3d_marker_custom_icon_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L201-L220) (Tag: `maps_android_3d_marker_glyph_color_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L232-L251) (Tag: `maps_android_3d_marker_glyph_text_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L263-L285) (Tag: `maps_android_3d_marker_glyph_circle_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L64-L81) (Tag: `maps_android_3d_marker_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L93-L113) (Tag: `maps_android_3d_marker_options_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L94-L118) (Tag: `maps_android_3d_popover_options_java`) +- `setSizePreserved`: ❌ No coverage +- `setZIndex`: ❌ No coverage + +### `MarkerOptions.that` +- `getStyle`: ❌ No coverage +- `setStyle`: ❌ No coverage +- `writeToParcel`: ❌ No coverage + +### `MarkerStyle` +- `equals`: ❌ No coverage +- `getImageView`: ❌ No coverage +- `getPinConfiguration`: ❌ No coverage +- `hashCode`: ❌ No coverage +- `writeToParcel`: ❌ No coverage + +### `Model` +- `getAltitudeMode`: ❌ No coverage +- `getId`: ❌ No coverage +- `getOrientation`: ❌ No coverage +- `getPosition`: ❌ No coverage +- `getScale`: ❌ No coverage +- `getUrl`: ❌ No coverage +- `onModelClick`: ❌ No coverage +- `remove`: + - [java-app/src/main/java/com/example/snippets/java/SnippetRegistry.java:41](java-app/src/main/java/com/example/snippets/java/SnippetRegistry.java#L41) (Tag: `No Tag`) +- `setAltitudeMode`: ❌ No coverage +- `setClickListener`: + - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L60-L78) (Tag: `maps_android_3d_model_add_java`) +- `setOrientation`: ❌ No coverage +- `setPosition`: ❌ No coverage +- `setScale`: ❌ No coverage +- `setUrl`: ❌ No coverage + +### `ModelOptions` +- `getAltitudeMode`: ❌ No coverage +- `getId`: ❌ No coverage +- `getOrientation`: ❌ No coverage +- `getPosition`: ❌ No coverage +- `getScale`: ❌ No coverage +- `getUrl`: ❌ No coverage +- `setAltitudeMode`: + - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L60-L78) (Tag: `maps_android_3d_model_add_java`) +- `setId`: ❌ No coverage +- `setOrientation`: + - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L60-L78) (Tag: `maps_android_3d_model_add_java`) +- `setPosition`: + - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L60-L78) (Tag: `maps_android_3d_model_add_java`) +- `setScale`: + - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L60-L78) (Tag: `maps_android_3d_model_add_java`) +- `setUrl`: + - [java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java#L60-L78) (Tag: `maps_android_3d_model_add_java`) +- `writeToParcel`: ❌ No coverage + +### `Orientation` +- `getHeading`: ❌ No coverage +- `getRoll`: ❌ No coverage +- `getTilt`: ❌ No coverage +- `setHeading`: ❌ No coverage +- `setRoll`: ❌ No coverage +- `setTilt`: ❌ No coverage +- `writeToParcel`: ❌ No coverage + +### `PinConfiguration` +- `builder`: + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L159-L189) (Tag: `maps_android_3d_marker_custom_icon_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L201-L220) (Tag: `maps_android_3d_marker_glyph_color_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L232-L251) (Tag: `maps_android_3d_marker_glyph_text_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L263-L285) (Tag: `maps_android_3d_marker_glyph_circle_java`) +- `equals`: ❌ No coverage +- `getBackgroundColor`: ❌ No coverage +- `getBorderColor`: ❌ No coverage +- `getGlyph`: ❌ No coverage +- `getScale`: ❌ No coverage +- `hashCode`: ❌ No coverage +- `setBackgroundColor`: ❌ No coverage +- `setBorderColor`: ❌ No coverage +- `setGlyph`: ❌ No coverage +- `setScale`: ❌ No coverage +- `writeToParcel`: ❌ No coverage + +### `PinConfiguration.Builder` +- `build`: + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L159-L189) (Tag: `maps_android_3d_marker_custom_icon_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L201-L220) (Tag: `maps_android_3d_marker_glyph_color_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L232-L251) (Tag: `maps_android_3d_marker_glyph_text_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L263-L285) (Tag: `maps_android_3d_marker_glyph_circle_java`) +- `setBackgroundColor`: + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L159-L189) (Tag: `maps_android_3d_marker_custom_icon_java`) +- `setBorderColor`: + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L159-L189) (Tag: `maps_android_3d_marker_custom_icon_java`) +- `setGlyph`: + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L159-L189) (Tag: `maps_android_3d_marker_custom_icon_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L201-L220) (Tag: `maps_android_3d_marker_glyph_color_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L232-L251) (Tag: `maps_android_3d_marker_glyph_text_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L263-L285) (Tag: `maps_android_3d_marker_glyph_circle_java`) +- `setScale`: + - [java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java#L159-L189) (Tag: `maps_android_3d_marker_custom_icon_java`) + +### `Polygon` +- `getAltitudeMode`: ❌ No coverage +- `getDrawsOccludedSegments`: ❌ No coverage +- `getExtruded`: ❌ No coverage +- `getFillColor`: ❌ No coverage +- `getGeodesic`: ❌ No coverage +- `getId`: ❌ No coverage +- `getInnerCoordinates`: ❌ No coverage +- `getInnerPaths`: ❌ No coverage +- `getOuterCoordinates`: ❌ No coverage +- `getPath`: ❌ No coverage +- `getStrokeColor`: ❌ No coverage +- `getStrokeWidth`: ❌ No coverage +- `getZIndex`: ❌ No coverage +- `onPolygonClick`: ❌ No coverage +- `remove`: + - [java-app/src/main/java/com/example/snippets/java/SnippetRegistry.java:40](java-app/src/main/java/com/example/snippets/java/SnippetRegistry.java#L40) (Tag: `No Tag`) +- `setAltitudeMode`: ❌ No coverage +- `setClickListener`: + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L100-L124) (Tag: `maps_android_3d_polygon_extruded_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L140-L174) (Tag: `maps_android_3d_polygon_hole_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L60-L84) (Tag: `maps_android_3d_polygon_add_java`) +- `setDrawsOccludedSegments`: ❌ No coverage +- `setExtruded`: ❌ No coverage +- `setFillColor`: ❌ No coverage +- `setGeodesic`: ❌ No coverage +- `setInnerCoordinates`: ❌ No coverage +- `setInnerPaths`: ❌ No coverage +- `setOuterCoordinates`: ❌ No coverage +- `setPath`: ❌ No coverage +- `setStrokeColor`: ❌ No coverage +- `setStrokeWidth`: ❌ No coverage +- `setZIndex`: ❌ No coverage + +### `PolygonOptions` +- `getAltitudeMode`: ❌ No coverage +- `getDrawsOccludedSegments`: ❌ No coverage +- `getExtruded`: ❌ No coverage +- `getFillColor`: ❌ No coverage +- `getGeodesic`: ❌ No coverage +- `getId`: ❌ No coverage +- `getInnerPaths`: ❌ No coverage +- `getPath`: ❌ No coverage +- `getStrokeColor`: ❌ No coverage +- `getStrokeWidth`: ❌ No coverage +- `getZIndex`: ❌ No coverage +- `setAltitudeMode`: + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L100-L124) (Tag: `maps_android_3d_polygon_extruded_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L140-L174) (Tag: `maps_android_3d_polygon_hole_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L60-L84) (Tag: `maps_android_3d_polygon_add_java`) +- `setDrawsOccludedSegments`: ❌ No coverage +- `setExtruded`: + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L100-L124) (Tag: `maps_android_3d_polygon_extruded_java`) +- `setFillColor`: + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L100-L124) (Tag: `maps_android_3d_polygon_extruded_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L140-L174) (Tag: `maps_android_3d_polygon_hole_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L60-L84) (Tag: `maps_android_3d_polygon_add_java`) +- `setGeodesic`: + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L100-L124) (Tag: `maps_android_3d_polygon_extruded_java`) +- `setId`: ❌ No coverage +- `setInnerPaths`: + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L140-L174) (Tag: `maps_android_3d_polygon_hole_java`) +- `setPath`: + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L100-L124) (Tag: `maps_android_3d_polygon_extruded_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L140-L174) (Tag: `maps_android_3d_polygon_hole_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L60-L84) (Tag: `maps_android_3d_polygon_add_java`) +- `setStrokeColor`: + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L60-L84) (Tag: `maps_android_3d_polygon_add_java`) +- `setStrokeWidth`: + - [java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java#L60-L84) (Tag: `maps_android_3d_polygon_add_java`) +- `setZIndex`: ❌ No coverage +- `writeToParcel`: ❌ No coverage + +### `Polyline` +- `getAltitudeMode`: ❌ No coverage +- `getCoordinates`: ❌ No coverage +- `getDrawsOccludedSegments`: ❌ No coverage +- `getGeodesic`: ❌ No coverage +- `getId`: ❌ No coverage +- `getOuterColor`: ❌ No coverage +- `getOuterWidth`: ❌ No coverage +- `getPath`: ❌ No coverage +- `getStrokeColor`: ❌ No coverage +- `getStrokeWidth`: ❌ No coverage +- `getZIndex`: ❌ No coverage +- `onPolylineClick`: ❌ No coverage +- `remove`: + - [java-app/src/main/java/com/example/snippets/java/SnippetRegistry.java:39](java-app/src/main/java/com/example/snippets/java/SnippetRegistry.java#L39) (Tag: `No Tag`) +- `setAltitudeMode`: ❌ No coverage +- `setClickListener`: + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L59-L80) (Tag: `maps_android_3d_polyline_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L96-L121) (Tag: `maps_android_3d_polyline_options_java`) +- `setCoordinates`: ❌ No coverage +- `setDrawsOccludedSegments`: ❌ No coverage +- `setGeodesic`: ❌ No coverage +- `setOuterColor`: ❌ No coverage +- `setOuterWidth`: ❌ No coverage +- `setPath`: ❌ No coverage +- `setStrokeColor`: ❌ No coverage +- `setStrokeWidth`: ❌ No coverage +- `setZIndex`: ❌ No coverage + +### `PolylineOptions` +- `getAltitudeMode`: ❌ No coverage +- `getDrawsOccludedSegments`: ❌ No coverage +- `getExtruded`: ❌ No coverage +- `getGeodesic`: ❌ No coverage +- `getId`: ❌ No coverage +- `getOuterColor`: ❌ No coverage +- `getOuterWidth`: ❌ No coverage +- `getPath`: ❌ No coverage +- `getStrokeColor`: ❌ No coverage +- `getStrokeWidth`: ❌ No coverage +- `getZIndex`: ❌ No coverage +- `setAltitudeMode`: + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L59-L80) (Tag: `maps_android_3d_polyline_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L96-L121) (Tag: `maps_android_3d_polyline_options_java`) +- `setDrawsOccludedSegments`: + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L96-L121) (Tag: `maps_android_3d_polyline_options_java`) +- `setExtruded`: + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L96-L121) (Tag: `maps_android_3d_polyline_options_java`) +- `setGeodesic`: + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L96-L121) (Tag: `maps_android_3d_polyline_options_java`) +- `setId`: ❌ No coverage +- `setOuterColor`: + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L96-L121) (Tag: `maps_android_3d_polyline_options_java`) +- `setOuterWidth`: + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L96-L121) (Tag: `maps_android_3d_polyline_options_java`) +- `setPath`: + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L59-L80) (Tag: `maps_android_3d_polyline_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L96-L121) (Tag: `maps_android_3d_polyline_options_java`) +- `setStrokeColor`: + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L59-L80) (Tag: `maps_android_3d_polyline_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L96-L121) (Tag: `maps_android_3d_polyline_options_java`) +- `setStrokeWidth`: + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L59-L80) (Tag: `maps_android_3d_polyline_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java#L96-L121) (Tag: `maps_android_3d_polyline_options_java`) +- `setZIndex`: ❌ No coverage +- `writeToParcel`: ❌ No coverage + +### `Popover` +- `altitudeMode`: ❌ No coverage +- `anchorId`: ❌ No coverage +- `anchorOffset`: ❌ No coverage +- `autoCloseEnabled`: ❌ No coverage +- `autoPanEnabled`: ❌ No coverage +- `autoPanFn`: ❌ No coverage +- `content`: ❌ No coverage +- `getAltitudeMode`: ❌ No coverage +- `getAnchorId`: ❌ No coverage +- `getAnchorOffset`: ❌ No coverage +- `getAutoCloseEnabled`: ❌ No coverage +- `getAutoPanEnabled`: ❌ No coverage +- `getAutoPanFn`: ❌ No coverage +- `getContent`: ❌ No coverage +- `getIsVisible`: ❌ No coverage +- `getPositionAnchor`: ❌ No coverage +- `getRemoveFn`: ❌ No coverage +- `hide`: ❌ No coverage +- `isVisible`: ❌ No coverage +- `positionAnchor`: ❌ No coverage +- `remove`: + - [java-app/src/main/java/com/example/snippets/java/SnippetRegistry.java:42](java-app/src/main/java/com/example/snippets/java/SnippetRegistry.java#L42) (Tag: `No Tag`) +- `removeFn`: ❌ No coverage +- `show`: + - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L58-L82) (Tag: `maps_android_3d_popover_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L94-L118) (Tag: `maps_android_3d_popover_options_java`) +- `toggle`: ❌ No coverage + +### `PopoverOptions` +- `getAltitudeMode`: ❌ No coverage +- `getAnchorOffset`: ❌ No coverage +- `getAutoCloseEnabled`: ❌ No coverage +- `getAutoPanEnabled`: ❌ No coverage +- `getContent`: ❌ No coverage +- `getPopoverStyle`: ❌ No coverage +- `getPositionAnchor`: ❌ No coverage +- `setAltitudeMode`: + - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L58-L82) (Tag: `maps_android_3d_popover_add_java`) +- `setAnchorOffset`: ❌ No coverage +- `setAutoCloseEnabled`: + - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L94-L118) (Tag: `maps_android_3d_popover_options_java`) +- `setAutoPanEnabled`: + - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L94-L118) (Tag: `maps_android_3d_popover_options_java`) +- `setContent`: + - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L58-L82) (Tag: `maps_android_3d_popover_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L94-L118) (Tag: `maps_android_3d_popover_options_java`) +- `setPopoverStyle`: ❌ No coverage +- `setPositionAnchor`: + - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L58-L82) (Tag: `maps_android_3d_popover_add_java`) + - [java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java](java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java#L94-L118) (Tag: `maps_android_3d_popover_options_java`) + +### `PopoverShadow` +- `getColor`: ❌ No coverage +- `getOffsetX`: ❌ No coverage +- `getOffsetY`: ❌ No coverage +- `getRadius`: ❌ No coverage +- `setColor`: ❌ No coverage +- `setOffsetX`: ❌ No coverage +- `setOffsetY`: ❌ No coverage +- `setRadius`: ❌ No coverage + +### `PopoverStyle` +- `getBackgroundColor`: ❌ No coverage +- `getBorderRadius`: ❌ No coverage +- `getPadding`: ❌ No coverage +- `getShadow`: ❌ No coverage +- `setBackgroundColor`: ❌ No coverage +- `setBorderRadius`: ❌ No coverage +- `setPadding`: ❌ No coverage +- `setShadow`: ❌ No coverage + +### `Validators.for` +- `Anchorable`: ❌ No coverage +- `Camera`: ❌ No coverage +- `CameraRestriction`: ❌ No coverage +- `FlyAroundOptions`: ❌ No coverage +- `FlyToOptions`: ❌ No coverage +- `Hole`: ❌ No coverage +- `LatLngAltitude`: ❌ No coverage +- `LatLngBounds`: ❌ No coverage +- `Map3DOptions`: ❌ No coverage +- `MarkerOptions`: ❌ No coverage +- `ModelOptions`: ❌ No coverage +- `Orientation`: ❌ No coverage +- `PolygonOptions`: ❌ No coverage +- `PolylineOptions`: ❌ No coverage +- `PopoverOptions`: ❌ No coverage +- `Vector3D`: ❌ No coverage +- `requireNonNegative`: ❌ No coverage +- `validateAltitude`: ❌ No coverage +- `validateFinite`: ❌ No coverage +- `validateHeading`: ❌ No coverage +- `validateLatitude`: ❌ No coverage +- `validateLongitude`: ❌ No coverage +- `validateRange`: ❌ No coverage +- `validateRoll`: ❌ No coverage +- `validateTilt`: ❌ No coverage + +### `Vector3D` +- `getX`: ❌ No coverage +- `getY`: ❌ No coverage +- `getZ`: ❌ No coverage +- `setX`: ❌ No coverage +- `setY`: ❌ No coverage +- `setZ`: ❌ No coverage +- `writeToParcel`: ❌ No coverage + +### Missing Extracted API Coverage (Java Snippets) +The following non-getter/setter APIs currently have `0` occurrences within this section: + +- `Camera.writeToParcel` +- `CameraRestriction.writeToParcel` +- `FlyAroundOptions.writeToParcel` +- `FlyToOptions.writeToParcel` +- `Glyph.equals` +- `Glyph.hashCode` +- `Glyph.writeToParcel` +- `Hole.writeToParcel` +- `ImageView.equals` +- `ImageView.hashCode` +- `ImageView.writeToParcel` +- `LatLngAltitude.writeToParcel` +- `LatLngBounds.writeToParcel` +- `Map3DOptions.attributes` +- `Map3DOptions.bounds` +- `Map3DOptions.centerAlt` +- `Map3DOptions.centerLat` +- `Map3DOptions.centerLng` +- `Map3DOptions.defaultUiDisabled` +- `Map3DOptions.fromAttributeSet` +- `Map3DOptions.heading` +- `Map3DOptions.mapId` +- `Map3DOptions.mapMode` +- `Map3DOptions.maxAltitude` +- `Map3DOptions.maxHeading` +- `Map3DOptions.maxTilt` +- `Map3DOptions.minAltitude` +- `Map3DOptions.minHeading` +- `Map3DOptions.minTilt` +- `Map3DOptions.options` +- `Map3DOptions.range` +- `Map3DOptions.roll` +- `Map3DOptions.tilt` +- `Map3DView.overlayView` +- `Map3DView.params` +- `Marker.isExtruded` +- `Marker.onMarkerClick` +- `MarkerOptions.isDrawnWhenOccluded` +- `MarkerOptions.isExtruded` +- `MarkerOptions.isSizePreserved` +- `MarkerOptions.that.writeToParcel` +- `MarkerStyle.equals` +- `MarkerStyle.hashCode` +- `MarkerStyle.writeToParcel` +- `Model.onModelClick` +- `ModelOptions.writeToParcel` +- `Orientation.writeToParcel` +- `PinConfiguration.equals` +- `PinConfiguration.hashCode` +- `PinConfiguration.writeToParcel` +- `Polygon.onPolygonClick` +- `PolygonOptions.writeToParcel` +- `Polyline.onPolylineClick` +- `PolylineOptions.writeToParcel` +- `Popover.altitudeMode` +- `Popover.anchorId` +- `Popover.anchorOffset` +- `Popover.autoCloseEnabled` +- `Popover.autoPanEnabled` +- `Popover.autoPanFn` +- `Popover.content` +- `Popover.hide` +- `Popover.isVisible` +- `Popover.positionAnchor` +- `Popover.removeFn` +- `Popover.toggle` +- `Validators.for.Anchorable` +- `Validators.for.Camera` +- `Validators.for.CameraRestriction` +- `Validators.for.FlyAroundOptions` +- `Validators.for.FlyToOptions` +- `Validators.for.Hole` +- `Validators.for.LatLngAltitude` +- `Validators.for.LatLngBounds` +- `Validators.for.Map3DOptions` +- `Validators.for.MarkerOptions` +- `Validators.for.ModelOptions` +- `Validators.for.Orientation` +- `Validators.for.PolygonOptions` +- `Validators.for.PolylineOptions` +- `Validators.for.PopoverOptions` +- `Validators.for.Vector3D` +- `Validators.for.requireNonNegative` +- `Validators.for.validateAltitude` +- `Validators.for.validateFinite` +- `Validators.for.validateHeading` +- `Validators.for.validateLatitude` +- `Validators.for.validateLongitude` +- `Validators.for.validateRange` +- `Validators.for.validateRoll` +- `Validators.for.validateTilt` +- `Vector3D.writeToParcel` + diff --git a/snippets/README.md b/snippets/README.md index 10d4bdaa..1fb8ac96 100644 --- a/snippets/README.md +++ b/snippets/README.md @@ -35,7 +35,9 @@ When the layout detail launcher switches between snippets to preview live inside --- -## 📜 Complete API Index Catalog -For a detailed breakdown of EXACTLY which native class functions or parameters are covered inside these extracted instruction extracts, refer to the fully indexed checklist summary: +## 📜 Full API Checklist Index +For absolute breakdowns of exact class function parameters, refer to the fully indexed checklist and matrix: + +👉 **[`CATALOG.md`](CATALOG.md)**: Standard Sample Concept Index +👉 **[`COVERAGE.md`](COVERAGE.md)**: API Coverage Matrix and missing deficits checklist -👉 **[`CATALOG.md`](CATALOG.md)** diff --git a/snippets/docs/process_guide.md b/snippets/docs/process_guide.md index 73a22875..7ec1fee3 100644 --- a/snippets/docs/process_guide.md +++ b/snippets/docs/process_guide.md @@ -26,9 +26,9 @@ Establish the runner harness structures to decouple snippet extracts from launch --- ### **Phase 3: Setup Automated Metrics (`catalog_api.py`)** -Before authoring boilerplate coordinates directly, configure the accounting audit tracker script. +Before authoring focuses boilerplate directly, configure the accounting audit tracker script. 1. **Build Parser**: Write a Python script scanning `.java` and `.kt` source nodes finding sign matches. -2. **Incremental checklist setups**: Generate **`CATALOG.md`** representing absolute counts vs deficit gaps below section checklists. +2. **Separate output lists**: Generate **`CATALOG.md`** (Concept Feature indexes) and **`COVERAGE.md`** (API Coverage Matrix grids) separately down below details. 3. 👉 *Refer to:* [**`tooling_blueprint.md`**](tooling_blueprint.md) --- diff --git a/snippets/docs/tooling_blueprint.md b/snippets/docs/tooling_blueprint.md index 8f936112..b43a8587 100644 --- a/snippets/docs/tooling_blueprint.md +++ b/snippets/docs/tooling_blueprint.md @@ -48,21 +48,21 @@ The python parser processes `.java` and `.kt` source files iteratively index ext 2. **Signature Parsing**: * Read snippet files looking for calls (e.g., `model.setClickListener`). * Increment an **Occurrence Dictionary map** (`{"Model.setClickListener": 1}`). -3. **Generate `CATALOG.md`**: - * Create Markdown Tables listing absolute counts. - * If a method has **`0` counts**, listed securely below inside the "Missing API Coverage" deficits layout index to highlight gaps. +3. **Generate Output Index & Matrix**: + * Create **`CATALOG.md`**: Lists standalone concept items with their direct code range links. + * Create **`COVERAGE.md`**: Counts exact API occurrences by class method mappings. + * If any method is left at **`0`**, listed inside "Missing API Coverage" deficits down below. -### **Example Layout** -| API Endpoint | Occurrences | Snippets Locations | +### **Example `CATALOG.md` Layout** +| Snippets Feature | Kotlin Location | Java Location | | :--- | :--- | :--- | -| `Model.setClickListener` | 1 | `ModelSnippets.kt:74` | -| `Polyline.setClickListener` | 2 | `PolylineSnippets.kt:50`, `PolylineSnippets.java:45` | +| **1. Fly To** | `CameraControlSnippets.kt#L62-L81` | `CameraControlSnippets.java#L44-L64` | --- ## 🏃 3. Continuous Updates -To maintain documentation accuracy, bind the parser execution to a convenient script that compiles the snippets before generating accurate Bytecode indexing: +To maintain documentation accuracy, bind execution of the Python parser to a convenient script setup that compiles building layout: ```bash #!/bin/bash diff --git a/snippets/scripts/catalog_api.py b/snippets/scripts/catalog_api.py index 89f25086..67e89c9d 100644 --- a/snippets/scripts/catalog_api.py +++ b/snippets/scripts/catalog_api.py @@ -335,28 +335,33 @@ def main(): file_map[name] = rel_path catalog_lines = ["# 🗺️ Maps3D API Snippets Catalog\n\n"] - catalog_lines.append("This document serves as a comprehensive developer reference and mapping matrix for the 3D Maps SDK features.\n\n") + catalog_lines.append("This document serves as a comprehensive developer reference mapping high-level concepts directly index extracts.\n\n") # Generate Snippet Index (Concepts to Code) snippet_index_lines = generate_snippet_index(SNIPPETS_DIR, file_map, region_tags) catalog_lines.extend(snippet_index_lines) - catalog_lines.append("\n---\n\n") - catalog_lines.append("## 📊 Maps3D API Coverage Matrix\n\n") - catalog_lines.append("This matrix ensures that every critical feature in the 3D Maps SDK is actively demonstrated inside a snippet boundary (`// [START ...]`).\n\n") + + coverage_lines = ["# 📊 Maps3D API Coverage Matrix\n\n"] + coverage_lines.append("This matrix ensures that every critical feature in the 3D Maps SDK is actively demonstrated inside a snippet boundary (`// [START ...]`).\n\n") # Generate Kotlin Section kt_lines, kt_missing = format_catalog_section("Kotlin Snippets", api_surface, usages, file_map, region_tags, ".kt") - catalog_lines.extend(kt_lines) + coverage_lines.extend(kt_lines) # Generate Java Section java_lines, java_missing = format_catalog_section("Java Snippets", api_surface, usages, file_map, region_tags, ".java") - catalog_lines.extend(java_lines) + coverage_lines.extend(java_lines) catalog_path = os.path.join(SNIPPETS_DIR, "CATALOG.md") with open(catalog_path, 'w', encoding='utf-8') as f: f.writelines(catalog_lines) - print(f"Catalog successfully generated at {catalog_path}.") + coverage_path = os.path.join(SNIPPETS_DIR, "COVERAGE.md") + with open(coverage_path, 'w', encoding='utf-8') as f: + f.writelines(coverage_lines) + + print(f"Index successfully generated at {catalog_path}.") + print(f"Matrix successfully generated at {coverage_path}.") print(f"Identified {len(kt_missing)} missing APIs in Kotlin, and {len(java_missing)} in Java.") if __name__ == '__main__': From bc314bc6611c534523007531d3ae21fa06db561d Mon Sep 17 00:00:00 2001 From: dkhawk <107309+dkhawk@users.noreply.github.com> Date: Fri, 20 Mar 2026 12:59:13 -0600 Subject: [PATCH 33/36] docs(snippets): Detail bytecode analyzer algorithms - Updated with accurate descriptions of Usage: javap where possible options include: --help -help -h -? Print this help message -version Version information -v -verbose Print additional information -l Print line number and local variable tables, works in combination with -c -public Show only public classes and members -protected Show protected/public classes and members -package Show package/protected/public classes and members (default) -p -private Show all classes and members -c Disassemble the code -s Print internal type signatures -sysinfo Show system info (path, size, date, SHA-256 hash) of class being processed -verify Print additional class verification info -constants Show final constants --module -m Specify module containing classes to be disassembled -J Specify a VM option --module-path Specify where to find application modules --system Specify where to find system modules --class-path Specify where to find user class files -classpath Specify where to find user class files -cp Specify where to find user class files -bootclasspath Override location of bootstrap class files --multi-release Specify the version to use in multi-release JAR files GNU-style options may use = instead of whitespace to separate the name of an option from its value. Each class to be shown may be specified by a filename, a URL, or by its fully qualified class name. Examples: path/to/MyClass.class jar:file:///path/to/MyJar.jar!/mypkg/MyClass.class java.lang.Object disassembly and offset correlations. --- snippets/docs/process_guide.md | 2 +- snippets/docs/tooling_blueprint.md | 31 +++++++++++++++++++----------- 2 files changed, 21 insertions(+), 12 deletions(-) diff --git a/snippets/docs/process_guide.md b/snippets/docs/process_guide.md index 7ec1fee3..86df35cb 100644 --- a/snippets/docs/process_guide.md +++ b/snippets/docs/process_guide.md @@ -29,7 +29,7 @@ Establish the runner harness structures to decouple snippet extracts from launch Before authoring focuses boilerplate directly, configure the accounting audit tracker script. 1. **Build Parser**: Write a Python script scanning `.java` and `.kt` source nodes finding sign matches. 2. **Separate output lists**: Generate **`CATALOG.md`** (Concept Feature indexes) and **`COVERAGE.md`** (API Coverage Matrix grids) separately down below details. -3. 👉 *Refer to:* [**`tooling_blueprint.md`**](tooling_blueprint.md) +3. 👉 *Refer to:* [**`tooling_blueprint.md`**](tooling_blueprint.md) for detailed descriptions of the **`javap` bytecode decompilation** and `LineNumberTable` offset mapping algorithms that drive this robustness. --- diff --git a/snippets/docs/tooling_blueprint.md b/snippets/docs/tooling_blueprint.md index b43a8587..224b8bb9 100644 --- a/snippets/docs/tooling_blueprint.md +++ b/snippets/docs/tooling_blueprint.md @@ -41,17 +41,26 @@ The static analyzer reads a list of objects describing continuous function point The python parser processes `.java` and `.kt` source files iteratively index extracts. -### **Algorithm Blueprint** -1. **Extract Tag Buffers**: - * Find full comments containing `[START maps_...]` and `[END maps_...]`. - * Isolate the raw text coordinate segments accurately. -2. **Signature Parsing**: - * Read snippet files looking for calls (e.g., `model.setClickListener`). - * Increment an **Occurrence Dictionary map** (`{"Model.setClickListener": 1}`). -3. **Generate Output Index & Matrix**: - * Create **`CATALOG.md`**: Lists standalone concept items with their direct code range links. - * Create **`COVERAGE.md`**: Counts exact API occurrences by class method mappings. - * If any method is left at **`0`**, listed inside "Missing API Coverage" deficits down below. +### **Algorithm Blueprint: How `catalog_api.py` Works** + +To guarantee accuracy without building fragile regex engines for syntax analyzers, the parser works directly with **compiled bytecode** and source Line Tables: + +1. **Extract Region Boundaries (`extract_region_tags`)**: + * Scans `.java` and `.kt` source nodes to find `// [START maps_...]` and `// [END maps_...]`. + * Caches the 1-based start line and end line coordinate bounds for every `Tag`. + +2. **Decompile and Analyze Bytecode (`parse_javap_output`)**: + * The script runs **`javap -c -l`** over de-compiled snippets classfiles. + * `-c` spits out the disassembled instruction stream (e.g. `invokevirtual Method setPosition`). + * `-l` extracts the **`LineNumberTable`**: mapping bytecode instruction offsets back to absolute source lines. + +3. **Map Executed Instruction Offsets**: + * When an `invokevirtual` matches an endpoint listed in `api_manifest.json`, the script records the instruction **offset pointer**. + * It falls back backwards through the `LineNumberTable` sorted offsets to find the closest source line row that correlates with that offset accurately. + +4. **Correlate Tag Range Overlays & Generate Outputs**: + * If the exact execution line falls inside a previously cached `[START]`/`[END]` Region Tag bound, it binds that tag’s row frame to the coordinate. + * Dumps separately into **`CATALOG.md`** (Index) and **`COVERAGE.md`** (Matrix matrices). ### **Example `CATALOG.md` Layout** | Snippets Feature | Kotlin Location | Java Location | From 382fb5998af5a7448e8e775d10199ef6598f8670 Mon Sep 17 00:00:00 2001 From: dkhawk <107309+dkhawk@users.noreply.github.com> Date: Fri, 20 Mar 2026 13:01:01 -0600 Subject: [PATCH 34/36] tooling(snippets): Remove meta-documentation folder from codebase - Removed directory following standard cleanliness guidelines. --- snippets/docs/framework_overview.md | 65 ----------------------- snippets/docs/process_guide.md | 47 ----------------- snippets/docs/prompt_pipeline.md | 75 -------------------------- snippets/docs/tooling_blueprint.md | 82 ----------------------------- 4 files changed, 269 deletions(-) delete mode 100644 snippets/docs/framework_overview.md delete mode 100644 snippets/docs/process_guide.md delete mode 100644 snippets/docs/prompt_pipeline.md delete mode 100644 snippets/docs/tooling_blueprint.md diff --git a/snippets/docs/framework_overview.md b/snippets/docs/framework_overview.md deleted file mode 100644 index 776dd7e7..00000000 --- a/snippets/docs/framework_overview.md +++ /dev/null @@ -1,65 +0,0 @@ -# 📖 Framework Overview: Snippet Architecture - -This guide details the **Decoupled Architecture** used to maintain lightweight, standalone code snippets that can be dynamically loaded into a runner application without manual manifest linking boilerplates. - ---- - -## 🧩 1. Dynamic Loading via Annotations - -To avoid hardcoded lists inside launching activities (e.g. `when (snippet) { ... }`), the framework uses simple **Runtime Annotations**. - -### **The Anatomy** -1. **`@SnippetGroup`**: Applied at the class level to categorize a series of snippets (e.g. "Polygons", "Camera"). -2. **`@SnippetItem`**: Applied at the function level to denote an individual runnable code extract. - -### **Example (Kotlin)** -```kotlin -@SnippetGroup( - title = "Models", - description = "Snippets demonstrating 3D Model integration." -) -class ModelSnippets(private val context: Context, private val map: TrackedMap3D) { - - @SnippetItem( - title = "1. Basic Model", - description = "Places a GlTF model onto coordinates." - ) - fun addBasicModel() { ... } -} -``` - -### **Why use Annotations?** -- **Reflection Loading**: The runner application uses reflection to crawl the package index for classes carrying coordinate loads. -- **No UI Boilerplate**: Adding a new snippet function immediately populates the UI checklist dynamically without modifying an adapter. - ---- - -## 🛡️ 2. Optional: The Session State Cleaner (Decorator) - -For **Visual Map SDKs** or Canvas overlay rendering engines, added elements (Markers, Shapes) may persist in-memory until explicitly `.remove()` is executed. - -Whenever snippets add nodes that pollute standard coordinate viewframes iteratively, it is helpful to wrap the handler in an optional **Decorator Delegate**: - -### **Visual Case Study Design** -```java -public class TrackedMap3D { - private final GoogleMap3D delegate; - private final List sessionItems = new ArrayList<>(); - - public TrackedMap3D(GoogleMap3D delegate) { this.delegate = delegate; } - - public Marker addMarker(MarkerOptions options) { - Marker marker = delegate.addMarker(options); - if (marker != null) sessionItems.add(marker); // Track reference - return marker; - } - - // Runner App cleans up easily: - public void clear() { for (Object item : sessionItems) { ... } } -} -``` - -### **Applicability** -* **Visual APIs (Maps, 3D Renderers)**: Highly useful for keeping snippets lightweight and free from `.remove()` boilerplates. -* **Pure Data APIs (Places, Geocoding)**: Usually unnecessary since responses are simple asynchronous models directly fetched layout buffers. - diff --git a/snippets/docs/process_guide.md b/snippets/docs/process_guide.md deleted file mode 100644 index 86df35cb..00000000 --- a/snippets/docs/process_guide.md +++ /dev/null @@ -1,47 +0,0 @@ -# 🗺️ Adoption Guide: Replicating Snippets for New SDKs - -This guide provides a step-by-step **Implementation Playbook** for porting this Standalone Snippet & Catalog architecture to a **New SDK module** (e.g., standard Maps Android, Places SDK). - ---- - -## ⏱️ The Workflow Timeline - -Building a scalable snippet index requires executing the following 4 distinct phases in order: - -### **Phase 1: API Indexing & Audit Prep** -The foundation forces AI and analysts to know the absolute checklist index. -1. **Decompile/Index Symbols**: Run `javap` or inspect online Markdown docs to list all Class methods. -2. **Generate `api_manifest.json`**: Feed findings to an AI to create a continuous dictionary checklist. -3. 👉 *Refer to:* [**`tooling_blueprint.md`**](tooling_blueprint.md) - ---- - -### **Phase 2: Architectural Setup (Annotations & Wrappers)** -Establish the runner harness structures to decouple snippet extracts from launcher maintenance. -1. **Create Annotations**: Define `@SnippetGroup` and `@SnippetItem` for dynamic loaders. -2. **Optional Decorators**: If managing persistent states (like Visual Maps), create a `TrackedMap3D` decorator style structure accumulate added items. -3. **Create Runner detail**: Design a layout launcher activity using reflection to dynamic load `@SnippetGroup` loads list adapters list. -4. 👉 *Refer to:* [**`framework_overview.md`**](framework_overview.md) - ---- - -### **Phase 3: Setup Automated Metrics (`catalog_api.py`)** -Before authoring focuses boilerplate directly, configure the accounting audit tracker script. -1. **Build Parser**: Write a Python script scanning `.java` and `.kt` source nodes finding sign matches. -2. **Separate output lists**: Generate **`CATALOG.md`** (Concept Feature indexes) and **`COVERAGE.md`** (API Coverage Matrix grids) separately down below details. -3. 👉 *Refer to:* [**`tooling_blueprint.md`**](tooling_blueprint.md) for detailed descriptions of the **`javap` bytecode decompilation** and `LineNumberTable` offset mapping algorithms that drive this robustness. - ---- - -### **Phase 4: Iterative snippet generation & authors** -Use consecutive prompt triggers sequential iterations AUTHORING coordinate loops matching checklist index deficits iteratively. -1. Verify exact Java/kotlin parity matches. -2. Guarantee UI-threaded state callback alerts inside lambda macros setup structures. -3. 👉 *Refer to:* [**`prompt_pipeline.md`**](prompt_pipeline.md) - ---- - -## 💡 Top 3 Success Checklist -- **Always run bytecode before parser flushes**: Force compiled triggers flawless before counting occurrences accurately. -- **Maintain clean excerpt segments**: Guarantee extract blocks use absolute wrapper indices so juniors copy-paste extracts directly without crashing frameworks. -- **Parity matching sets**: Keep variable nodes matching exactly back bounding coordinate triggers. diff --git a/snippets/docs/prompt_pipeline.md b/snippets/docs/prompt_pipeline.md deleted file mode 100644 index 66f19420..00000000 --- a/snippets/docs/prompt_pipeline.md +++ /dev/null @@ -1,75 +0,0 @@ -# 💬 The Prompt Pipeline: Building a Snippet Framework - -Use this **4-Stage Prompt Pipeline** to instruct an AI Coding Assistant to build a standalone snippet and cataloging module for a **New SDK**. - -Copy and paste these prompts **one at a time**, waiting for the Assistant to complete and verify each stage before proceeding. - ---- - -### 🟢 **Stage 1: API Audit & Indexing** -> **Goal**: Feed the SDK specification list and generate the Ground Truth JSON dictionary representing all classes/methods. - -```text -You are an expert Tooling Developer. We need to create an API Index map for a new SDK module. - -I will provide you with a list of the public classes and methods (either compiled symbols or documentation). - -Your Task: -1. Create an `api_manifest.json` dictionary. -2. The keys must be the Class names (e.g., "Model", "Polyline"). -3. The values must be a list of non-getter/setter methods (e.g., "setClickListener", "setExtruded"). - -[INSERT SDK REFERENCE OR COMPILED SYMBOLS HERE] -``` - ---- - -### 🔵 **Stage 2: Interface & Decorator Scaffolding** -> **Goal**: Design the Annotations and the Clean-Slate Wrapper (`TrackedMap3D`) to decouple creating snippets from manual session cleanup. - -```text -You are an expert Android Architect. We have an index of SDK methods. Now we need to build the snippet execution harness. - -Your Task: -1. Create two Annotations (`@SnippetGroup`, `@SnippetItem`) to allow reflection crawling of categorized snippet classes dynamically. -2. Create a Decorator Wrapper/Delegate (e.g., `TrackedMap3D` or `TrackedPlacesClient`) wrapping the native SDK handle. -3. This wrapper MUST track added items (Markers, Models, Anchors) in an internal list so the Runner Application can execute `wrapper.clear()` automatically between view switches. - -Output the code for the Annotations and the Decorator Delegate in both Kotlin and Java. -``` - ---- - -### 🟡 **Stage 3: Catalog Script Generation** -> **Goal**: Create the Python script (`catalog_api.py`) that reads `.java`/`.kt` and maps occurrences against `api_manifest.json`. - -```text -You are a Static Analyzer Engineer. We need a script to track which SDK APIs are covered by our documentation. - -Your Task: -1. Create a Python script `catalog_api.py`. -2. It must read `api_manifest.json` as the ground truth checklist list. -3. It must scan `.java` and `.kt` source files inside the snippets module directories, looking for Class.Method calls or extracted tags. -4. Output a `CATALOG.md` file listing a table of API occurrences and accurate line locations. -5. Create a bottom section "Missing API Coverage" for methods with 0 occurrences. - -Write the core parser algorithm robustly dealing with lambda variables extensions and safe-calls. -``` - ---- - -### 🔴 **Stage 4: Code Generation & Parity Loops** -> **Goal**: Iteratively write the actual snippet extracts using the approved catalog and decorator. - -```text -You are a Principal DevRel Developer. We have the Annotations, target Manifest, and Cataloging script setup. - -Your Task: -1. Scan the `CATALOG.md` Missing APIs list. -2. Pick a category topic (e.g., "Camera Controls", "Shapes"). -3. Generate Snippet classes (e.g., `CameraSnippets.kt` and `CameraSnippets.java`) filling this missing deficit gap. -4. Ensure exact step-by-step logic parity between Kotlin and Java. -5. Use the Decorator wrapper created earlier to add elements, and wrap async layout callbacks to dispatch Toast alerts on the UI thread securely. - -Let's start by generating the snippets for [INSERT CATEGORY]. -``` diff --git a/snippets/docs/tooling_blueprint.md b/snippets/docs/tooling_blueprint.md deleted file mode 100644 index 224b8bb9..00000000 --- a/snippets/docs/tooling_blueprint.md +++ /dev/null @@ -1,82 +0,0 @@ -# 🛠️ Tooling Blueprint: API Indexing & Cataloging - -To prevent manual checklists from going stale, the framework automates snippet coverage tracking. This is accomplished using a **static code analyzer** mapping compiled SDK endpoints against extracted code blocks. - ---- - -## 📋 1. The API Manifest (`api_manifest.json`) - -Before cataloging snippets, the analyzer needs a "Ground Truth" dictionary of all class methods inside the SDK module suite. - -### **How to generate it:** -If source code is NOT available, run `javap` or `nm` over the compiled `.jar` or `.aar` extracts: - -```bash -# Decompile classes into method lists: -for class in $(find . -name "*.class"); do - javap -p $class >> raw_symbols.txt -done -``` - -### **The Dictionary Structure** -The static analyzer reads a list of objects describing continuous function pointers mapping safely: - -```json -{ - "Model": [ - "setClickListener", - "getScale", - "getPosition" - ], - "Polyline": [ - "setClickListener", - "getWidth" - ] -} -``` - ---- - -## 🐍 2. The Catalog Script (`catalog_api.py`) - -The python parser processes `.java` and `.kt` source files iteratively index extracts. - -### **Algorithm Blueprint: How `catalog_api.py` Works** - -To guarantee accuracy without building fragile regex engines for syntax analyzers, the parser works directly with **compiled bytecode** and source Line Tables: - -1. **Extract Region Boundaries (`extract_region_tags`)**: - * Scans `.java` and `.kt` source nodes to find `// [START maps_...]` and `// [END maps_...]`. - * Caches the 1-based start line and end line coordinate bounds for every `Tag`. - -2. **Decompile and Analyze Bytecode (`parse_javap_output`)**: - * The script runs **`javap -c -l`** over de-compiled snippets classfiles. - * `-c` spits out the disassembled instruction stream (e.g. `invokevirtual Method setPosition`). - * `-l` extracts the **`LineNumberTable`**: mapping bytecode instruction offsets back to absolute source lines. - -3. **Map Executed Instruction Offsets**: - * When an `invokevirtual` matches an endpoint listed in `api_manifest.json`, the script records the instruction **offset pointer**. - * It falls back backwards through the `LineNumberTable` sorted offsets to find the closest source line row that correlates with that offset accurately. - -4. **Correlate Tag Range Overlays & Generate Outputs**: - * If the exact execution line falls inside a previously cached `[START]`/`[END]` Region Tag bound, it binds that tag’s row frame to the coordinate. - * Dumps separately into **`CATALOG.md`** (Index) and **`COVERAGE.md`** (Matrix matrices). - -### **Example `CATALOG.md` Layout** -| Snippets Feature | Kotlin Location | Java Location | -| :--- | :--- | :--- | -| **1. Fly To** | `CameraControlSnippets.kt#L62-L81` | `CameraControlSnippets.java#L44-L64` | - ---- - -## 🏃 3. Continuous Updates - -To maintain documentation accuracy, bind execution of the Python parser to a convenient script setup that compiles building layout: - -```bash -#!/bin/bash -# run_catalog.sh -./gradlew :snippets:compileDebugKotlin -python3 scripts/catalog_api.py -``` -This forces developers to keep methods building flawlessly before sync layouts are flushed backwards. From aca7a816380b00a36292a37b73b21034bdcb79ff Mon Sep 17 00:00:00 2001 From: dkhawk <107309+dkhawk@users.noreply.github.com> Date: Fri, 20 Mar 2026 13:02:03 -0600 Subject: [PATCH 35/36] tooling(snippets): Untrack docs folder but preserve on disk --- .gitignore | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitignore b/.gitignore index 50a8fc02..62c6c003 100644 --- a/.gitignore +++ b/.gitignore @@ -38,3 +38,4 @@ google-services.json # VS Code .vscode/ +snippets/docs/ From b2f20fd513b20d35ca16ecfa9488e9ee47b0a053 Mon Sep 17 00:00:00 2001 From: dkhawk <107309+dkhawk@users.noreply.github.com> Date: Mon, 23 Mar 2026 14:07:29 -0600 Subject: [PATCH 36/36] chore(snippets): Reformat code and clean up imports --- snippets/build.gradle.kts | 21 +- .../snippets/java/SnippetDiscoveryTest.java | 17 +- .../example/snippets/java/SnippetRunTest.java | 28 +- .../snippets/java/JavaSnippetsActivity.java | 36 +- .../example/snippets/java/MapActivity.java | 401 ++++++++++-------- .../snippets/java/SnippetGroupAdapter.java | 43 +- .../snippets/java/SnippetGroupInfo.java | 4 +- .../snippets/java/SnippetItemInfo.java | 7 +- .../snippets/java/SnippetRegistry.java | 110 ++--- .../example/snippets/java/TrackedMap3D.java | 69 ++- .../java/annotations/SnippetGroup.java | 4 +- .../java/annotations/SnippetItem.java | 4 +- .../java/snippets/CameraControlSnippets.java | 158 ++++--- .../java/snippets/MapInitSnippets.java | 114 ++--- .../java/snippets/MarkerSnippets.java | 151 +++---- .../snippets/java/snippets/ModelSnippets.java | 42 +- .../snippets/java/snippets/PlaceSnippets.java | 55 +-- .../java/snippets/PolygonSnippets.java | 168 ++++---- .../java/snippets/PolylineSnippets.java | 94 ++-- .../java/snippets/PopoverSnippets.java | 43 +- .../snippets/kotlin/SnippetDiscoveryTest.kt | 23 +- .../snippets/kotlin/KotlinSnippetsActivity.kt | 44 +- .../example/snippets/kotlin/MapActivity.kt | 50 ++- .../snippets/kotlin/SnippetRegistry.kt | 82 ++-- .../example/snippets/kotlin/TrackedMap3D.kt | 21 +- .../kotlin/annotations/SnippetGroup.kt | 2 +- .../kotlin/annotations/SnippetItem.kt | 2 +- .../kotlin/snippets/CameraControlSnippets.kt | 65 +-- .../kotlin/snippets/MapInitSnippets.kt | 20 +- .../kotlin/snippets/MarkerSnippets.kt | 255 ++++++----- .../snippets/kotlin/snippets/ModelSnippets.kt | 30 +- .../snippets/kotlin/snippets/PlaceSnippets.kt | 28 +- .../kotlin/snippets/PolygonSnippets.kt | 209 ++++++--- .../kotlin/snippets/PolylineSnippets.kt | 92 ++-- .../kotlin/snippets/PopoverSnippets.kt | 74 ++-- .../example/snippets/kotlin/ui/theme/Theme.kt | 20 +- .../snippets/kotlin/utils/MapExtensions.kt | 4 +- 37 files changed, 1458 insertions(+), 1132 deletions(-) diff --git a/snippets/build.gradle.kts b/snippets/build.gradle.kts index ec9b12b7..950cdc10 100644 --- a/snippets/build.gradle.kts +++ b/snippets/build.gradle.kts @@ -14,11 +14,30 @@ * limitations under the License. */ -// Top-level build file where you can add configuration options common to all sub-projects/modules. plugins { alias(libs.plugins.android.application) apply false alias(libs.plugins.kotlin.android) apply false alias(libs.plugins.android.library) apply false alias(libs.plugins.kotlin.compose) apply false alias(libs.plugins.secrets.gradle.plugin) apply false + id("com.diffplug.spotless") version "6.25.0" +} + +subprojects { + apply(plugin = "com.diffplug.spotless") + configure { + java { + target("**/*.java") + googleJavaFormat().aosp() + removeUnusedImports() + trimTrailingWhitespace() + endWithNewline() + } + kotlin { + target("**/*.kt") + ktlint().editorConfigOverride(mapOf("indent_size" to "4", "ktlint_function_naming_ignore_when_annotated_with" to "Composable")) + trimTrailingWhitespace() + endWithNewline() + } + } } diff --git a/snippets/java-app/src/androidTest/java/com/example/snippets/java/SnippetDiscoveryTest.java b/snippets/java-app/src/androidTest/java/com/example/snippets/java/SnippetDiscoveryTest.java index bdc574ab..c7686488 100644 --- a/snippets/java-app/src/androidTest/java/com/example/snippets/java/SnippetDiscoveryTest.java +++ b/snippets/java-app/src/androidTest/java/com/example/snippets/java/SnippetDiscoveryTest.java @@ -16,22 +16,22 @@ package com.example.snippets.java; -import android.content.Context; -import androidx.test.core.app.ApplicationProvider; +import static org.junit.Assert.assertFalse; +import static org.junit.Assert.assertNotNull; + import androidx.test.ext.junit.runners.AndroidJUnit4; +import java.util.List; import org.junit.Test; import org.junit.runner.RunWith; -import java.util.List; - -import static org.junit.Assert.assertFalse; -import static org.junit.Assert.assertNotNull; @RunWith(AndroidJUnit4.class) public class SnippetDiscoveryTest { @Test public void verifySnippetGroupsLoaded() { - // Use the application context for scanning if needed, although scanning currently triggers from local setup + // Use the application context for scanning if needed, although scanning currently triggers + // from + // local setup List groups = SnippetRegistry.getSnippetGroups(); assertNotNull("Snippet groups list should not be null", groups); @@ -40,7 +40,8 @@ public void verifySnippetGroupsLoaded() { for (SnippetGroupInfo group : groups) { assertNotNull("Group title should not be null", group.getTitle()); assertFalse("Group title should not be empty", group.getTitle().isEmpty()); - assertFalse("Group '" + group.getTitle() + "' must have items", group.getItems().isEmpty()); + assertFalse( + "Group '" + group.getTitle() + "' must have items", group.getItems().isEmpty()); for (SnippetItemInfo item : group.getItems()) { assertNotNull("Snippet title should not be null", item.getTitle()); diff --git a/snippets/java-app/src/androidTest/java/com/example/snippets/java/SnippetRunTest.java b/snippets/java-app/src/androidTest/java/com/example/snippets/java/SnippetRunTest.java index bb86eeac..665b63bf 100644 --- a/snippets/java-app/src/androidTest/java/com/example/snippets/java/SnippetRunTest.java +++ b/snippets/java-app/src/androidTest/java/com/example/snippets/java/SnippetRunTest.java @@ -16,21 +16,20 @@ package com.example.snippets.java; +import static org.junit.Assert.fail; + import android.content.Context; import android.content.Intent; import androidx.test.core.app.ActivityScenario; import androidx.test.core.app.ApplicationProvider; import androidx.test.ext.junit.runners.AndroidJUnit4; -import androidx.test.platform.app.InstrumentationRegistry; +import com.example.snippets.common.R; import com.google.android.gms.maps3d.Map3DView; -import org.junit.Test; -import org.junit.runner.RunWith; +import java.util.Set; import java.util.concurrent.CountDownLatch; import java.util.concurrent.TimeUnit; -import java.util.Set; - -import static org.junit.Assert.fail; -import static org.junit.Assert.assertNotNull; +import org.junit.Test; +import org.junit.runner.RunWith; @RunWith(AndroidJUnit4.class) public class SnippetRunTest { @@ -47,13 +46,14 @@ public void verifyAllSnippetsLaunchWithoutCrash() { try (ActivityScenario scenario = ActivityScenario.launch(intent)) { CountDownLatch latch = new CountDownLatch(1); - scenario.onActivity(activity -> { - // Verify map view exists - Map3DView map = activity.findViewById(com.example.snippets.common.R.id.map); - if (map != null) { - latch.countDown(); - } - }); + scenario.onActivity( + activity -> { + // Verify map view exists + Map3DView map = activity.findViewById(R.id.map); + if (map != null) { + latch.countDown(); + } + }); if (!latch.await(5, TimeUnit.SECONDS)) { fail("Map3DView not found or activity timeout for snippet: " + snippetTitle); } diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/JavaSnippetsActivity.java b/snippets/java-app/src/main/java/com/example/snippets/java/JavaSnippetsActivity.java index f6eef84e..85389227 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/JavaSnippetsActivity.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/JavaSnippetsActivity.java @@ -18,15 +18,14 @@ import android.content.Intent; import android.os.Bundle; -import androidx.appcompat.app.AppCompatActivity; -import androidx.recyclerview.widget.LinearLayoutManager; -import androidx.recyclerview.widget.RecyclerView; -import java.util.List; - import androidx.activity.EdgeToEdge; +import androidx.appcompat.app.AppCompatActivity; import androidx.core.graphics.Insets; import androidx.core.view.ViewCompat; import androidx.core.view.WindowInsetsCompat; +import androidx.recyclerview.widget.LinearLayoutManager; +import androidx.recyclerview.widget.RecyclerView; +import java.util.List; public class JavaSnippetsActivity extends AppCompatActivity { @@ -39,20 +38,25 @@ protected void onCreate(Bundle savedInstanceState) { RecyclerView recyclerView = findViewById(R.id.recyclerView); recyclerView.setLayoutManager(new LinearLayoutManager(this)); - ViewCompat.setOnApplyWindowInsetsListener(recyclerView, (v, windowInsets) -> { - Insets insets = windowInsets.getInsets(WindowInsetsCompat.Type.systemBars()); - v.setPadding(insets.left, insets.top, insets.right, insets.bottom); - return WindowInsetsCompat.CONSUMED; - }); + ViewCompat.setOnApplyWindowInsetsListener( + recyclerView, + (v, windowInsets) -> { + Insets insets = windowInsets.getInsets(WindowInsetsCompat.Type.systemBars()); + v.setPadding(insets.left, insets.top, insets.right, insets.bottom); + return WindowInsetsCompat.CONSUMED; + }); List groups = SnippetRegistry.getSnippetGroups(); - SnippetGroupAdapter adapter = new SnippetGroupAdapter(groups, item -> { - Intent intent = new Intent(this, MapActivity.class); - intent.putExtra("group_title", item.getGroupTitle()); - intent.putExtra(MapActivity.EXTRA_SNIPPET_TITLE, item.getTitle()); - startActivity(intent); - }); + SnippetGroupAdapter adapter = + new SnippetGroupAdapter( + groups, + item -> { + Intent intent = new Intent(this, MapActivity.class); + intent.putExtra("group_title", item.getGroupTitle()); + intent.putExtra(MapActivity.EXTRA_SNIPPET_TITLE, item.getTitle()); + startActivity(intent); + }); recyclerView.setAdapter(adapter); } } diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/MapActivity.java b/snippets/java-app/src/main/java/com/example/snippets/java/MapActivity.java index b89f4937..56c330a6 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/MapActivity.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/MapActivity.java @@ -17,202 +17,243 @@ package com.example.snippets.java; import android.os.Bundle; -import androidx.activity.EdgeToEdge; - +import android.os.Handler; +import android.os.Looper; import android.util.Log; import android.widget.Toast; +import androidx.activity.EdgeToEdge; import androidx.annotation.NonNull; import androidx.appcompat.app.AppCompatActivity; +import com.example.snippets.common.R; import com.google.android.gms.maps3d.GoogleMap3D; - +import com.google.android.gms.maps3d.Map3DView; import com.google.android.gms.maps3d.OnMap3DViewReadyCallback; - -import com.example.snippets.common.R; +import com.google.android.gms.maps3d.model.Camera; +import com.google.android.gms.maps3d.model.LatLngAltitude; +import java.util.ArrayList; +import java.util.List; public class MapActivity extends AppCompatActivity { - public static final String EXTRA_SNIPPET_TITLE = "snippet_title"; - - private com.google.android.gms.maps3d.Map3DView map3DView; - - private String snippetTitle; - private String groupTitle; - private GoogleMap3D map; - private int currentIndex = -1; - - @Override - protected void onCreate(Bundle savedInstanceState) { - super.onCreate(savedInstanceState); - EdgeToEdge.enable(this); - setContentView(R.layout.activity_map); - map3DView = findViewById(R.id.map); - map3DView.onCreate(savedInstanceState); - - findViewById(R.id.snapshot_button).setOnClickListener(v -> { - if (map != null) { - com.google.android.gms.maps3d.model.Camera cam = map.getCamera(); - if (cam != null) { - com.google.android.gms.maps3d.model.LatLngAltitude center = cam.getCenter(); - double rawHeading = cam.getHeading() != null ? cam.getHeading() : 0.0; - double heading = (rawHeading % 360.0 + 360.0) % 360.0; - - double rawRoll = cam.getRoll() != null ? cam.getRoll() : 0.0; - double roll = rawRoll == -0.0 ? 0.0 : rawRoll; - - Log.d("MapActivity", String.format( - "Camera Pose:\ncenter = latLngAltitude {\n latitude = %.6f\n longitude = %.6f\n altitude = %.2f\n}\ntilt = %.2f\nheading = %.2f\nrange = %.2f\nroll = %.2f", - center.getLatitude(), center.getLongitude(), center.getAltitude(), - cam.getTilt() != null ? cam.getTilt() : 0.0, heading, cam.getRange() != null ? cam.getRange() : 0.0, roll - )); + public static final String EXTRA_SNIPPET_TITLE = "snippet_title"; + + private Map3DView map3DView; + + private String snippetTitle; + private String groupTitle; + private GoogleMap3D map; + private int currentIndex = -1; + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + EdgeToEdge.enable(this); + setContentView(R.layout.activity_map); + map3DView = findViewById(R.id.map); + map3DView.onCreate(savedInstanceState); + + findViewById(R.id.snapshot_button) + .setOnClickListener( + v -> { + if (map != null) { + Camera cam = map.getCamera(); + if (cam != null) { + LatLngAltitude center = cam.getCenter(); + double rawHeading = + cam.getHeading() != null ? cam.getHeading() : 0.0; + double heading = (rawHeading % 360.0 + 360.0) % 360.0; + + double rawRoll = cam.getRoll() != null ? cam.getRoll() : 0.0; + double roll = rawRoll == -0.0 ? 0.0 : rawRoll; + + Log.d( + "MapActivity", + String.format( + "Camera Pose:\ncenter = latLngAltitude {\n latitude = %.6f\n longitude = %.6f\n altitude = %.2f\n}\ntilt = %.2f\nheading = %.2f\nrange = %.2f\nroll = %.2f", + center.getLatitude(), + center.getLongitude(), + center.getAltitude(), + cam.getTilt() != null ? cam.getTilt() : 0.0, + heading, + cam.getRange() != null ? cam.getRange() : 0.0, + roll)); + } + } else { + Log.d("MapActivity", "Map NOT initialized yet"); + } + }); + + findViewById(R.id.reset_view_button).setOnClickListener(v -> runSnippet()); + + groupTitle = getIntent().getStringExtra("group_title"); + snippetTitle = getIntent().getStringExtra(EXTRA_SNIPPET_TITLE); + final List snippetList = new ArrayList<>(); + for (SnippetGroupInfo group : SnippetRegistry.getSnippetGroups()) { + snippetList.addAll(group.getItems()); + } + for (int i = 0; i < snippetList.size(); i++) { + SnippetItemInfo item = snippetList.get(i); + if (item.getTitle().equals(snippetTitle) + && (groupTitle == null || item.getGroupTitle().equals(groupTitle))) { + currentIndex = i; + break; } - } else { - Log.d("MapActivity", "Map NOT initialized yet"); } - }); - findViewById(R.id.reset_view_button).setOnClickListener(v -> runSnippet()); + findViewById(R.id.previous_button) + .setOnClickListener( + v -> { + if (snippetList.isEmpty()) return; + if (currentIndex > 0) { + currentIndex--; + } else { + currentIndex = snippetList.size() - 1; + } + SnippetItemInfo item = snippetList.get(currentIndex); + groupTitle = item.getGroupTitle(); + snippetTitle = item.getTitle(); + runSnippet(); + }); + + findViewById(R.id.next_button) + .setOnClickListener( + v -> { + if (snippetList.isEmpty()) return; + if (currentIndex < snippetList.size() - 1) { + currentIndex++; + } else { + currentIndex = 0; + } + SnippetItemInfo item = snippetList.get(currentIndex); + groupTitle = item.getGroupTitle(); + snippetTitle = item.getTitle(); + runSnippet(); + }); + + map3DView.getMap3DViewAsync( + new OnMap3DViewReadyCallback() { + @Override + public void onMap3DViewReady(@NonNull GoogleMap3D map) { + MapActivity.this.map = map; + Log.w("MapActivity", "onMap3DViewReady " + map); + + // Simple 3-second delay to bypass readiness bugs as requested + runSnippet(); + } - groupTitle = getIntent().getStringExtra("group_title"); - snippetTitle = getIntent().getStringExtra(EXTRA_SNIPPET_TITLE); - final java.util.List snippetList = new java.util.ArrayList<>(); - for (SnippetGroupInfo group : SnippetRegistry.getSnippetGroups()) { - snippetList.addAll(group.getItems()); + @Override + public void onError(@NonNull Exception error) { + runOnUiThread( + () -> + Toast.makeText( + MapActivity.this, + "Map Error: " + error.getMessage(), + Toast.LENGTH_LONG) + .show()); + } + }); } - for (int i = 0; i < snippetList.size(); i++) { - SnippetItemInfo item = snippetList.get(i); - if (item.getTitle().equals(snippetTitle) && (groupTitle == null || item.getGroupTitle().equals(groupTitle))) { - currentIndex = i; - break; + + protected void runSnippet() { + if (snippetTitle != null) { + String key = groupTitle != null ? groupTitle + " - " + snippetTitle : snippetTitle; + SnippetItemInfo snippet = SnippetRegistry.snippets.get(key); + if (snippet == null) { + // Fallback linear scan + for (SnippetGroupInfo g : SnippetRegistry.getSnippetGroups()) { + for (SnippetItemInfo item : g.getItems()) { + if (item.getTitle().equals(snippetTitle)) { + snippet = item; + break; + } + } + } + } + final SnippetItemInfo finalSnippet = snippet; + if (finalSnippet != null) { + SnippetRegistry.clearTrackedItems(); + // 3 second delay + new Handler(Looper.getMainLooper()) + .postDelayed( + () -> { + try { + finalSnippet.getAction().execute(MapActivity.this, map); + runOnUiThread( + () -> + Toast.makeText( + MapActivity.this, + finalSnippet.getGroupTitle() + + ": " + + finalSnippet + .getTitle() + + ".\n" + + finalSnippet + .getDescription(), + Toast.LENGTH_LONG) + .show()); + } catch (Exception e) { + runOnUiThread( + () -> + Toast.makeText( + MapActivity.this, + "Error: " + e.getMessage(), + Toast.LENGTH_LONG) + .show()); + e.printStackTrace(); + } + }, + 3000); + } else { + runOnUiThread( + () -> + Toast.makeText( + MapActivity.this, + "Snippet not found: " + snippetTitle, + Toast.LENGTH_LONG) + .show()); + } } } - findViewById(R.id.previous_button).setOnClickListener(v -> { - if (snippetList.isEmpty()) return; - if (currentIndex > 0) { - currentIndex--; - } else { - currentIndex = snippetList.size() - 1; - } - SnippetItemInfo item = snippetList.get(currentIndex); - groupTitle = item.getGroupTitle(); - snippetTitle = item.getTitle(); - runSnippet(); - }); - - findViewById(R.id.next_button).setOnClickListener(v -> { - if (snippetList.isEmpty()) return; - if (currentIndex < snippetList.size() - 1) { - currentIndex++; - } else { - currentIndex = 0; - } - SnippetItemInfo item = snippetList.get(currentIndex); - groupTitle = item.getGroupTitle(); - snippetTitle = item.getTitle(); - runSnippet(); - }); - - map3DView.getMap3DViewAsync(new OnMap3DViewReadyCallback() { - @Override - public void onMap3DViewReady(@NonNull GoogleMap3D map) { - MapActivity.this.map = map; - Log.w("MapActivity", "onMap3DViewReady " + map); - - // Simple 3-second delay to bypass readiness bugs as requested - runSnippet(); - } - - @Override - public void onError(@NonNull Exception error) { - runOnUiThread(() -> Toast.makeText(MapActivity.this, "Map Error: " + error.getMessage(), Toast.LENGTH_LONG).show()); - } - }); - } - - protected void runSnippet() { - if (snippetTitle != null) { - String key = groupTitle != null ? groupTitle + " - " + snippetTitle : snippetTitle; - SnippetItemInfo snippet = SnippetRegistry.snippets.get(key); - if (snippet == null) { - // Fallback linear scan - for (SnippetGroupInfo g : SnippetRegistry.getSnippetGroups()) { - for (SnippetItemInfo item : g.getItems()) { - if (item.getTitle().equals(snippetTitle)) { - snippet = item; - break; - } - } - } - } - final SnippetItemInfo finalSnippet = snippet; - if (finalSnippet != null) { - SnippetRegistry.clearTrackedItems(); - // 3 second delay - new android.os.Handler(android.os.Looper.getMainLooper()).postDelayed(() -> { - try { - finalSnippet.getAction().execute(MapActivity.this, map); - runOnUiThread(() -> Toast.makeText( - MapActivity.this, - finalSnippet.getGroupTitle() + ": " + finalSnippet.getTitle() + ".\n" + finalSnippet.getDescription(), - Toast.LENGTH_LONG - ).show()); - } catch (Exception e) { - runOnUiThread(() -> Toast.makeText(MapActivity.this, "Error: " + e.getMessage(), Toast.LENGTH_LONG).show()); - e.printStackTrace(); - } - }, 3000); - } else { - runOnUiThread(() -> Toast.makeText(MapActivity.this, "Snippet not found: " + snippetTitle, Toast.LENGTH_LONG).show()); - } + @Override + protected void onStart() { + super.onStart(); + if (map3DView != null) map3DView.onStart(); + } + + @Override + protected void onResume() { + super.onResume(); + if (map3DView != null) map3DView.onResume(); + } + + @Override + protected void onPause() { + if (map3DView != null) map3DView.onPause(); + super.onPause(); + } + + @Override + protected void onStop() { + if (map3DView != null) map3DView.onStop(); + super.onStop(); + } + + @Override + protected void onDestroy() { + if (map3DView != null) map3DView.onDestroy(); + super.onDestroy(); + } + + @Override + public void onLowMemory() { + super.onLowMemory(); + if (map3DView != null) map3DView.onLowMemory(); + } + + @Override + protected void onSaveInstanceState(@NonNull Bundle outState) { + super.onSaveInstanceState(outState); + if (map3DView != null) map3DView.onSaveInstanceState(outState); } - } - - @Override - protected void onStart() { - super.onStart(); - if (map3DView != null) - map3DView.onStart(); - } - - @Override - protected void onResume() { - super.onResume(); - if (map3DView != null) - map3DView.onResume(); - } - - @Override - protected void onPause() { - if (map3DView != null) - map3DView.onPause(); - super.onPause(); - } - - @Override - protected void onStop() { - if (map3DView != null) - map3DView.onStop(); - super.onStop(); - } - - @Override - protected void onDestroy() { - if (map3DView != null) - map3DView.onDestroy(); - super.onDestroy(); - } - - @Override - public void onLowMemory() { - super.onLowMemory(); - if (map3DView != null) - map3DView.onLowMemory(); - } - - @Override - protected void onSaveInstanceState(@NonNull Bundle outState) { - super.onSaveInstanceState(outState); - if (map3DView != null) - map3DView.onSaveInstanceState(outState); - } } diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/SnippetGroupAdapter.java b/snippets/java-app/src/main/java/com/example/snippets/java/SnippetGroupAdapter.java index 91358567..13ef2005 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/SnippetGroupAdapter.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/SnippetGroupAdapter.java @@ -23,11 +23,11 @@ import androidx.annotation.NonNull; import androidx.recyclerview.widget.RecyclerView; import java.util.ArrayList; +import java.util.HashSet; import java.util.List; +import java.util.Set; -/** - * Adapter supporting grouped category headers and snippet items representing the hierarchy. - */ +/** Adapter supporting grouped category headers and snippet items representing the hierarchy. */ public class SnippetGroupAdapter extends RecyclerView.Adapter { private static final int TYPE_HEADER = 0; @@ -35,7 +35,7 @@ public class SnippetGroupAdapter extends RecyclerView.Adapter items = new ArrayList<>(); private final List groups; - private final java.util.Set expandedGroups = new java.util.HashSet<>(); + private final Set expandedGroups = new HashSet<>(); private final OnItemClickListener listener; public interface OnItemClickListener { @@ -75,12 +75,14 @@ public int getItemViewType(int position) { @Override public RecyclerView.ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) { if (viewType == TYPE_HEADER) { - View view = LayoutInflater.from(parent.getContext()) - .inflate(R.layout.list_item_group_header, parent, false); + View view = + LayoutInflater.from(parent.getContext()) + .inflate(R.layout.list_item_group_header, parent, false); return new HeaderViewHolder(view); } else { - View view = LayoutInflater.from(parent.getContext()) - .inflate(R.layout.list_item_snippet, parent, false); + View view = + LayoutInflater.from(parent.getContext()) + .inflate(R.layout.list_item_snippet, parent, false); return new ItemViewHolder(view); } } @@ -90,15 +92,19 @@ public void onBindViewHolder(@NonNull RecyclerView.ViewHolder holder, int positi if (getItemViewType(position) == TYPE_HEADER) { SnippetGroupInfo group = (SnippetGroupInfo) items.get(position); boolean isExpanded = expandedGroups.contains(group.getTitle()); - ((HeaderViewHolder) holder).bind(group, isExpanded, v -> { - if (isExpanded) { - expandedGroups.remove(group.getTitle()); - } else { - expandedGroups.add(group.getTitle()); - } - rebuildItems(); - notifyDataSetChanged(); - }); + ((HeaderViewHolder) holder) + .bind( + group, + isExpanded, + v -> { + if (isExpanded) { + expandedGroups.remove(group.getTitle()); + } else { + expandedGroups.add(group.getTitle()); + } + rebuildItems(); + notifyDataSetChanged(); + }); } else { ((ItemViewHolder) holder).bind((SnippetItemInfo) items.get(position), listener); } @@ -117,7 +123,8 @@ public HeaderViewHolder(@NonNull View itemView) { headerTitle = itemView.findViewById(R.id.headerTitle); } - public void bind(SnippetGroupInfo group, boolean isExpanded, View.OnClickListener clickListener) { + public void bind( + SnippetGroupInfo group, boolean isExpanded, View.OnClickListener clickListener) { headerTitle.setText((isExpanded ? "▼ " : "▶ ") + group.getTitle()); itemView.setOnClickListener(clickListener); } diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/SnippetGroupInfo.java b/snippets/java-app/src/main/java/com/example/snippets/java/SnippetGroupInfo.java index ed0d1424..551af34a 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/SnippetGroupInfo.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/SnippetGroupInfo.java @@ -18,9 +18,7 @@ import java.util.List; -/** - * Model class containing metadata and items for a grouped category of snippets. - */ +/** Model class containing metadata and items for a grouped category of snippets. */ public class SnippetGroupInfo { private final String title; private final String description; diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/SnippetItemInfo.java b/snippets/java-app/src/main/java/com/example/snippets/java/SnippetItemInfo.java index 7a807252..a0c2011a 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/SnippetItemInfo.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/SnippetItemInfo.java @@ -16,16 +16,15 @@ package com.example.snippets.java; -/** - * Model class containing metadata and execution logic for an individual snippet item. - */ +/** Model class containing metadata and execution logic for an individual snippet item. */ public class SnippetItemInfo { private final String title; private final String description; private final String groupTitle; private final SnippetAction action; - public SnippetItemInfo(String title, String description, String groupTitle, SnippetAction action) { + public SnippetItemInfo( + String title, String description, String groupTitle, SnippetAction action) { this.title = title; this.description = description; this.groupTitle = groupTitle; diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/SnippetRegistry.java b/snippets/java-app/src/main/java/com/example/snippets/java/SnippetRegistry.java index e5cf91c9..ef38592e 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/SnippetRegistry.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/SnippetRegistry.java @@ -16,49 +16,54 @@ package com.example.snippets.java; +import android.content.Context; +import com.example.snippets.java.annotations.SnippetGroup; +import com.example.snippets.java.annotations.SnippetItem; import com.example.snippets.java.snippets.*; - +import com.google.android.gms.maps3d.Popover; +import com.google.android.gms.maps3d.model.Marker; +import com.google.android.gms.maps3d.model.Model; +import com.google.android.gms.maps3d.model.Polygon; +import com.google.android.gms.maps3d.model.Polyline; import java.lang.reflect.Method; import java.util.ArrayList; import java.util.Arrays; +import java.util.Comparator; import java.util.LinkedHashMap; import java.util.List; import java.util.Map; -import com.example.snippets.java.annotations.SnippetGroup; -import com.example.snippets.java.annotations.SnippetItem; -import android.content.Context; public class SnippetRegistry { - private static final java.util.List addedElements = new java.util.ArrayList<>(); + private static final List addedElements = new ArrayList<>(); public static void clearTrackedItems() { for (Object item : addedElements) { try { - if (item instanceof com.google.android.gms.maps3d.model.Marker) ((com.google.android.gms.maps3d.model.Marker) item).remove(); - else if (item instanceof com.google.android.gms.maps3d.model.Polyline) ((com.google.android.gms.maps3d.model.Polyline) item).remove(); - else if (item instanceof com.google.android.gms.maps3d.model.Polygon) ((com.google.android.gms.maps3d.model.Polygon) item).remove(); - else if (item instanceof com.google.android.gms.maps3d.model.Model) ((com.google.android.gms.maps3d.model.Model) item).remove(); - else if (item instanceof com.google.android.gms.maps3d.Popover) ((com.google.android.gms.maps3d.Popover) item).remove(); - } catch (Exception e) { /* ignore */ } + if (item instanceof Marker) ((Marker) item).remove(); + else if (item instanceof Polyline) ((Polyline) item).remove(); + else if (item instanceof Polygon) ((Polygon) item).remove(); + else if (item instanceof Model) ((Model) item).remove(); + else if (item instanceof Popover) ((Popover) item).remove(); + } catch (Exception e) { + /* ignore */ + } } addedElements.clear(); } - private static final List> snippetClasses = Arrays.asList( - MapInitSnippets.class, - CameraControlSnippets.class, - MarkerSnippets.class, - PolygonSnippets.class, - PolylineSnippets.class, - ModelSnippets.class, - PopoverSnippets.class, - PlaceSnippets.class - ); - - /** - * Scans annotated classes to build the hierarchical snippet model. - */ + private static final List> snippetClasses = + Arrays.asList( + MapInitSnippets.class, + CameraControlSnippets.class, + MarkerSnippets.class, + PolygonSnippets.class, + PolylineSnippets.class, + ModelSnippets.class, + PopoverSnippets.class, + PlaceSnippets.class); + + /** Scans annotated classes to build the hierarchical snippet model. */ public static List getSnippetGroups() { List groups = new ArrayList<>(); @@ -72,41 +77,44 @@ public static List getSnippetGroups() { SnippetItem itemAnnotation = method.getAnnotation(SnippetItem.class); if (itemAnnotation == null) continue; - items.add(new SnippetItemInfo( - itemAnnotation.title(), - itemAnnotation.description(), - groupAnnotation.title(), - (context, map) -> { - try { - TrackedMap3D trackedMap = new TrackedMap3D(map, addedElements); - Object instance = createInstance(clazz, context, trackedMap); - if (method.getParameterCount() == 0) { - method.invoke(instance); - } else if (method.getParameterCount() == 1 && method.getParameterTypes()[0] == Context.class) { - method.invoke(instance, context); - } - } catch (Exception e) { - e.printStackTrace(); - } - } - )); + items.add( + new SnippetItemInfo( + itemAnnotation.title(), + itemAnnotation.description(), + groupAnnotation.title(), + (context, map) -> { + try { + TrackedMap3D trackedMap = + new TrackedMap3D(map, addedElements); + Object instance = + createInstance(clazz, context, trackedMap); + if (method.getParameterCount() == 0) { + method.invoke(instance); + } else if (method.getParameterCount() == 1 + && method.getParameterTypes()[0] == Context.class) { + method.invoke(instance, context); + } + } catch (Exception e) { + e.printStackTrace(); + } + })); } if (!items.isEmpty()) { - items.sort((a, b) -> a.getTitle().compareTo(b.getTitle())); - groups.add(new SnippetGroupInfo( - groupAnnotation.title(), - groupAnnotation.description(), - items - )); + items.sort(Comparator.comparing(SnippetItemInfo::getTitle)); + groups.add( + new SnippetGroupInfo( + groupAnnotation.title(), groupAnnotation.description(), items)); } } return groups; } - private static Object createInstance(Class clazz, Context context, TrackedMap3D map) throws Exception { + private static Object createInstance(Class clazz, Context context, TrackedMap3D map) + throws Exception { try { - return clazz.getConstructor(Context.class, TrackedMap3D.class).newInstance(context, map); + return clazz.getConstructor(Context.class, TrackedMap3D.class) + .newInstance(context, map); } catch (NoSuchMethodException e1) { try { return clazz.getConstructor(TrackedMap3D.class).newInstance(map); diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java b/snippets/java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java index 31eaea39..3a685dd3 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/TrackedMap3D.java @@ -23,23 +23,21 @@ import com.google.android.gms.maps3d.OnMapSteadyListener; import com.google.android.gms.maps3d.Popover; import com.google.android.gms.maps3d.model.Camera; +import com.google.android.gms.maps3d.model.CameraRestriction; +import com.google.android.gms.maps3d.model.FlyAroundOptions; import com.google.android.gms.maps3d.model.FlyToOptions; import com.google.android.gms.maps3d.model.Marker; import com.google.android.gms.maps3d.model.MarkerOptions; -import com.google.android.gms.maps3d.model.Polyline; -import com.google.android.gms.maps3d.model.PolylineOptions; -import com.google.android.gms.maps3d.model.Polygon; -import com.google.android.gms.maps3d.model.PolygonOptions; import com.google.android.gms.maps3d.model.Model; import com.google.android.gms.maps3d.model.ModelOptions; +import com.google.android.gms.maps3d.model.Polygon; +import com.google.android.gms.maps3d.model.PolygonOptions; +import com.google.android.gms.maps3d.model.Polyline; +import com.google.android.gms.maps3d.model.PolylineOptions; import com.google.android.gms.maps3d.model.PopoverOptions; -import com.google.android.gms.maps3d.model.CameraRestriction; - import java.util.List; -/** - * Decorator wrapper around GoogleMap3D to track elements added during a snippet session. - */ +/** Decorator wrapper around GoogleMap3D to track elements added during a snippet session. */ public class TrackedMap3D { private final GoogleMap3D delegate; @@ -80,17 +78,48 @@ public Popover addPopover(PopoverOptions options) { return popover; } - public void setCamera(Camera camera) { delegate.setCamera(camera); } - public void setCameraChangedListener(OnCameraChangedListener listener) { delegate.setCameraChangedListener(listener); } - public void setMap3DClickListener(OnMap3DClickListener listener) { delegate.setMap3DClickListener(listener); } - public void flyCameraAround(com.google.android.gms.maps3d.model.FlyAroundOptions options) { delegate.flyCameraAround(options); } + public void setCamera(Camera camera) { + delegate.setCamera(camera); + } + + public void setCameraChangedListener(OnCameraChangedListener listener) { + delegate.setCameraChangedListener(listener); + } + + public void setMap3DClickListener(OnMap3DClickListener listener) { + delegate.setMap3DClickListener(listener); + } + + public void flyCameraAround(FlyAroundOptions options) { + delegate.flyCameraAround(options); + } // Pass-through standard map calls if any are invoked inside snippets - public Camera getCamera() { return delegate.getCamera(); } - public void stopCameraAnimation() { delegate.stopCameraAnimation(); } - public void flyCameraTo(FlyToOptions options) { delegate.flyCameraTo(options); } - public void setOnMapReadyListener(OnMapReadyListener listener) { delegate.setOnMapReadyListener(listener); } - public void setOnMapSteadyListener(OnMapSteadyListener listener) { delegate.setOnMapSteadyListener(listener); } - public void setCameraRestriction(CameraRestriction restriction) { delegate.setCameraRestriction(restriction); } - public CameraRestriction getCameraRestriction() { return delegate.getCameraRestriction(); } + public Camera getCamera() { + return delegate.getCamera(); + } + + public void stopCameraAnimation() { + delegate.stopCameraAnimation(); + } + + public void flyCameraTo(FlyToOptions options) { + delegate.flyCameraTo(options); + } + + public void setOnMapReadyListener(OnMapReadyListener listener) { + delegate.setOnMapReadyListener(listener); + } + + public void setOnMapSteadyListener(OnMapSteadyListener listener) { + delegate.setOnMapSteadyListener(listener); + } + + public void setCameraRestriction(CameraRestriction restriction) { + delegate.setCameraRestriction(restriction); + } + + public CameraRestriction getCameraRestriction() { + return delegate.getCameraRestriction(); + } } diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/annotations/SnippetGroup.java b/snippets/java-app/src/main/java/com/example/snippets/java/annotations/SnippetGroup.java index d733fd17..129ed2c1 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/annotations/SnippetGroup.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/annotations/SnippetGroup.java @@ -21,9 +21,7 @@ import java.lang.annotation.RetentionPolicy; import java.lang.annotation.Target; -/** - * Marks a class containing multiple snippet methods with category metadata. - */ +/** Marks a class containing multiple snippet methods with category metadata. */ @Target(ElementType.TYPE) @Retention(RetentionPolicy.RUNTIME) public @interface SnippetGroup { diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/annotations/SnippetItem.java b/snippets/java-app/src/main/java/com/example/snippets/java/annotations/SnippetItem.java index d3020ba9..f6e96dbf 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/annotations/SnippetItem.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/annotations/SnippetItem.java @@ -21,9 +21,7 @@ import java.lang.annotation.RetentionPolicy; import java.lang.annotation.Target; -/** - * Marks a method inside a [SnippetGroup] with execution metadata. - */ +/** Marks a method inside a [SnippetGroup] with execution metadata. */ @Target(ElementType.METHOD) @Retention(RetentionPolicy.RUNTIME) public @interface SnippetItem { diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java index 75e8cc18..6b730f9c 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/CameraControlSnippets.java @@ -16,24 +16,22 @@ package com.example.snippets.java.snippets; -import com.example.snippets.java.TrackedMap3D; import android.os.Handler; import android.os.Looper; import android.util.Log; - +import com.example.snippets.java.TrackedMap3D; +import com.example.snippets.java.annotations.SnippetGroup; +import com.example.snippets.java.annotations.SnippetItem; import com.google.android.gms.maps3d.model.Camera; +import com.google.android.gms.maps3d.model.CameraRestriction; import com.google.android.gms.maps3d.model.FlyAroundOptions; import com.google.android.gms.maps3d.model.FlyToOptions; import com.google.android.gms.maps3d.model.LatLngAltitude; -import com.google.android.gms.maps3d.model.CameraRestriction; import com.google.android.gms.maps3d.model.LatLngBounds; -import com.example.snippets.java.annotations.SnippetGroup; -import com.example.snippets.java.annotations.SnippetItem; @SnippetGroup( - title = "Camera", - description = "Snippets demonstrating dynamic camera orchestration and animations." -) + title = "Camera", + description = "Snippets demonstrating dynamic camera orchestration and animations.") public class CameraControlSnippets { private final TrackedMap3D map; @@ -43,14 +41,11 @@ public CameraControlSnippets(TrackedMap3D map) { } // [START maps_android_3d_camera_fly_to_java] - /** - * Animates the camera to a specific position (coordinates, heading, tilt) over - * a duration. - */ + /** Animates the camera to a specific position (coordinates, heading, tilt) over a duration. */ @SnippetItem( - title = "1. Fly To", - description = "Animates the camera to a specific position with a tilt and heading over 5 seconds." - ) + title = "1. Fly To", + description = + "Animates the camera to a specific position with a tilt and heading over 5 seconds.") public void flyCameraToPosition() { LatLngAltitude center = new LatLngAltitude(38.743829, -109.499512, 1460.37); // Create a target camera: @@ -61,16 +56,15 @@ public void flyCameraToPosition() { map.flyCameraTo(options); } + // [END maps_android_3d_camera_fly_to_java] - /** - * Orbits the camera around a specific location. - */ + /** Orbits the camera around a specific location. */ @SuppressWarnings("unused") @SnippetItem( - title = "2. Fly Around", - description = "Rotates the camera 360 degrees around a specific location over 10 seconds." - ) + title = "2. Fly Around", + description = + "Rotates the camera 360 degrees around a specific location over 10 seconds.") public void flyCameraAroundLocation() { // [START maps_android_3d_camera_fly_around_java] LatLngAltitude center = new LatLngAltitude(38.743502, -109.499374, 1467.0); @@ -85,23 +79,21 @@ public void flyCameraAroundLocation() { // waiting for the camera to steady before starting the flyCameraAround map.setCamera(targetCamera); - map.setOnMapSteadyListener(isSteady -> { - if (isSteady) { - map.setOnMapSteadyListener(null); // Cleanup - map.flyCameraAround(options); - } - }); + map.setOnMapSteadyListener( + isSteady -> { + if (isSteady) { + map.setOnMapSteadyListener(null); // Cleanup + map.flyCameraAround(options); + } + }); // [END maps_android_3d_camera_fly_around_java] } - /** - * Stops the current camera animation. - */ + /** Stops the current camera animation. */ @SuppressWarnings("unused") @SnippetItem( - title = "3. Stop Animation", - description = "Stops any currently running camera animation immediately." - ) + title = "3. Stop Animation", + description = "Stops any currently running camera animation immediately.") public void stopAnimation() { // [START maps_android_3d_camera_stop_java] LatLngAltitude center = new LatLngAltitude(38.743502, -109.499374, 1467.0); @@ -116,79 +108,81 @@ public void stopAnimation() { } // [START maps_android_3d_camera_events_java] - /** - * Listens to camera change events and logs the visible region. - */ + /** Listens to camera change events and logs the visible region. */ @SuppressWarnings("unused") @SnippetItem( - title = "4. Listen Camera Events", - description = "Demonstrates camera change listening" - ) + title = "4. Listen Camera Events", + description = "Demonstrates camera change listening") public void listenToCameraEvents() { // [START maps_android_3d_camera_events_java] final long[] lastLogTime = {0L}; - map.setCameraChangedListener(camera -> { - long currentTime = System.currentTimeMillis(); - if (currentTime - lastLogTime[0] > 500) { // Limit to 1 log per 500ms - lastLogTime[0] = currentTime; - Log.d("Maps3D", "Camera State: " + - "Center: " + camera.getCenter() + - ", Heading: " + camera.getHeading() + - ", Tilt: " + camera.getTilt() + - ", Roll: " + camera.getRoll() + - ", Range: " + camera.getRange()); - } - }); + map.setCameraChangedListener( + camera -> { + long currentTime = System.currentTimeMillis(); + if (currentTime - lastLogTime[0] > 500) { // Limit to 1 log per 500ms + lastLogTime[0] = currentTime; + Log.d( + "Maps3D", + "Camera State: " + + "Center: " + + camera.getCenter() + + ", Heading: " + + camera.getHeading() + + ", Tilt: " + + camera.getTilt() + + ", Roll: " + + camera.getRoll() + + ", Range: " + + camera.getRange()); + } + }); // Detach after 5 seconds to prevent log spam - new android.os.Handler(android.os.Looper.getMainLooper()).postDelayed(() -> { - map.setCameraChangedListener(null); - }, 5000); + new Handler(Looper.getMainLooper()) + .postDelayed( + () -> { + map.setCameraChangedListener(null); + }, + 5000); // [END maps_android_3d_camera_events_java] } - /** - * Listens to map steady state events. - */ + /** Listens to map steady state events. */ @SuppressWarnings("unused") @SnippetItem( - title = "5. Listen Steady State", - description = "Logs to the console when the map finishes rendering or enters a steady state." - ) + title = "5. Listen Steady State", + description = + "Logs to the console when the map finishes rendering or enters a steady state.") public void listenToMapSteadyState() { // [START maps_android_3d_camera_steady_java] - map.setOnMapSteadyListener(isSceneSteady -> { - Log.d("Maps3D", "Map Is Steady: " + isSceneSteady); - }); + map.setOnMapSteadyListener( + isSceneSteady -> { + Log.d("Maps3D", "Map Is Steady: " + isSceneSteady); + }); // [END maps_android_3d_camera_steady_java] } - /** - * Restricts the camera to a specific altitude range and geographic bounds. - */ + /** Restricts the camera to a specific altitude range and geographic bounds. */ @SuppressWarnings("unused") @SnippetItem( - title = "6. Camera Restriction", - description = "Restricts the camera to a specific altitude range and bounding box." - ) + title = "6. Camera Restriction", + description = "Restricts the camera to a specific altitude range and bounding box.") public void setCameraRestrictions() { - com.google.android.gms.maps3d.model.Camera camera = new com.google.android.gms.maps3d.model.Camera( - new com.google.android.gms.maps3d.model.LatLngAltitude(40.748233, -73.985663, 1500.0), // center - 0.0, // heading - 45.0, // tilt - 0.0, // roll - 1000.0 // range - ); + Camera camera = + new Camera( + new LatLngAltitude(40.748233, -73.985663, 1500.0), // center + 0.0, // heading + 45.0, // tilt + 0.0, // roll + 1000.0 // range + ); map.setCamera(camera); // [START maps_android_3d_camera_restriction_java] - LatLngBounds nycBounds = new LatLngBounds( - 40.856492, -73.802409, 40.685630, -74.050304 - ); + LatLngBounds nycBounds = new LatLngBounds(40.856492, -73.802409, 40.685630, -74.050304); - CameraRestriction restriction = new CameraRestriction( - 500.0, 10000.0, 0.0, 360.0, 0.0, 90.0, nycBounds - ); + CameraRestriction restriction = + new CameraRestriction(500.0, 10000.0, 0.0, 360.0, 0.0, 90.0, nycBounds); map.setCameraRestriction(restriction); // [END maps_android_3d_camera_restriction_java] diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java index bf90d5c5..475ee942 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/MapInitSnippets.java @@ -16,84 +16,100 @@ package com.example.snippets.java.snippets; -import android.util.Log; import android.content.Context; +import android.os.Handler; +import android.os.Looper; +import android.util.Log; +import android.widget.Toast; import androidx.annotation.NonNull; +import com.example.snippets.java.annotations.SnippetGroup; +import com.example.snippets.java.annotations.SnippetItem; import com.google.android.gms.maps3d.GoogleMap3D; - import com.google.android.gms.maps3d.Map3DView; import com.google.android.gms.maps3d.OnMap3DViewReadyCallback; import com.google.android.gms.maps3d.OnMapReadyListener; import com.google.android.gms.maps3d.OnMapSteadyListener; import com.google.android.gms.maps3d.model.Camera; import com.google.android.gms.maps3d.model.LatLngAltitude; -import android.os.Handler; -import android.os.Looper; -import android.widget.Toast; -import com.example.snippets.java.annotations.SnippetGroup; -import com.example.snippets.java.annotations.SnippetItem; -@SnippetGroup(title = "Map Initialization", description = "Snippets demonstrating map lifecycle, listeners and readiness states.") +@SnippetGroup( + title = "Map Initialization", + description = "Snippets demonstrating map lifecycle, listeners and readiness states.") public class MapInitSnippets { @SnippetItem( - title = "1. Basic Map3D Initialization", - description = "Initializes a standard 3D Map View and sets an initial camera angle." - ) + title = "1. Basic Map3D Initialization", + description = "Initializes a standard 3D Map View and sets an initial camera angle.") @SuppressWarnings("unused") public void basicMap3D(Context context) { // [START maps_android_3d_init_basic_java] Map3DView map3DView = new Map3DView(context); // Get the map asynchronously - map3DView.getMap3DViewAsync(new OnMap3DViewReadyCallback() { - @Override - public void onMap3DViewReady(@NonNull GoogleMap3D googleMap3D) { - // Map is ready to be used - LatLngAltitude center = new LatLngAltitude(40.0150, -105.2705, 5000.0); - Camera camera = new Camera(center, 0.0, 45.0, 0.0, 10000.0); - googleMap3D.setCamera(camera); - } + map3DView.getMap3DViewAsync( + new OnMap3DViewReadyCallback() { + @Override + public void onMap3DViewReady(@NonNull GoogleMap3D googleMap3D) { + // Map is ready to be used + LatLngAltitude center = new LatLngAltitude(40.0150, -105.2705, 5000.0); + Camera camera = new Camera(center, 0.0, 45.0, 0.0, 10000.0); + googleMap3D.setCamera(camera); + } - @Override - public void onError(@NonNull Exception e) { - // Log the exception to guide developers debugging layout mismatches - Log.e("MapInitSnippets", "Failed to initialize 3D Map: " + e.getMessage(), e); - } - }); + @Override + public void onError(@NonNull Exception e) { + // Log the exception to guide developers debugging layout mismatches + Log.e( + "MapInitSnippets", + "Failed to initialize 3D Map: " + e.getMessage(), + e); + } + }); // [END maps_android_3d_init_basic_java] } - /** - * Sets up listeners for map readiness and steady state. - */ + /** Sets up listeners for map readiness and steady state. */ @SuppressWarnings("unused") - @SnippetItem(title = "2. Listen Map Events", description = "Logs map events to the console, such as clicks or idle status.") + @SnippetItem( + title = "2. Listen Map Events", + description = "Logs map events to the console, such as clicks or idle status.") public void setupMapListeners(Context context, GoogleMap3D map) { // [START maps_android_3d_init_listeners_java] Handler mainHandler = new Handler(Looper.getMainLooper()); - map.setOnMapReadyListener(new OnMapReadyListener() { - @Override - public void onMapReady(double sceneReadiness) { - if (sceneReadiness == 1.0) { - // Scene is fully loaded - mainHandler.post(() -> Toast - .makeText(context, "Map Scene Ready (100%)", Toast.LENGTH_SHORT).show()); - } - } - }); + map.setOnMapReadyListener( + new OnMapReadyListener() { + @Override + public void onMapReady(double sceneReadiness) { + if (sceneReadiness == 1.0) { + // Scene is fully loaded + mainHandler.post( + () -> + Toast.makeText( + context, + "Map Scene Ready (100%)", + Toast.LENGTH_SHORT) + .show()); + } + } + }); - map.setOnMapSteadyListener(new OnMapSteadyListener() { - @Override - public void onMapSteadyChange(boolean isSceneSteady) { - if (isSceneSteady) { - // Camera is not moving and data is loaded - mainHandler.post(() -> Toast - .makeText(context, "Map Scene Steady", Toast.LENGTH_SHORT).show()); - } - } - }); + map.setOnMapSteadyListener( + new OnMapSteadyListener() { + @Override + public void onMapSteadyChange(boolean isSceneSteady) { + if (isSceneSteady) { + // Camera is not moving and data is loaded + mainHandler.post( + () -> + Toast.makeText( + context, + "Map Scene Steady", + Toast.LENGTH_SHORT) + .show()); + } + } + }); // [END maps_android_3d_init_listeners_java] } } diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java index f7a9b2f5..5fdd8faf 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/MarkerSnippets.java @@ -16,32 +16,29 @@ package com.example.snippets.java.snippets; +import android.content.Context; +import android.graphics.Color; import android.os.Handler; import android.os.Looper; import android.widget.Toast; - +import com.example.snippets.java.R; import com.example.snippets.java.TrackedMap3D; +import com.example.snippets.java.annotations.SnippetGroup; +import com.example.snippets.java.annotations.SnippetItem; import com.google.android.gms.maps3d.model.AltitudeMode; +import com.google.android.gms.maps3d.model.Camera; import com.google.android.gms.maps3d.model.CollisionBehavior; +import com.google.android.gms.maps3d.model.FlyToOptions; +import com.google.android.gms.maps3d.model.Glyph; +import com.google.android.gms.maps3d.model.ImageView; import com.google.android.gms.maps3d.model.LatLngAltitude; import com.google.android.gms.maps3d.model.Marker; import com.google.android.gms.maps3d.model.MarkerOptions; import com.google.android.gms.maps3d.model.PinConfiguration; -import com.google.android.gms.maps3d.model.Camera; -import com.google.android.gms.maps3d.model.FlyToOptions; -import com.google.android.gms.maps3d.model.Glyph; -import com.google.android.gms.maps3d.model.ImageView; -import com.example.snippets.java.R; -import android.content.Context; -import android.graphics.Color; -import com.google.android.gms.maps3d.OnMarkerClickListener; -import com.example.snippets.java.annotations.SnippetGroup; -import com.example.snippets.java.annotations.SnippetItem; @SnippetGroup( - title = "Markers", - description = "Snippets demonstrating standard, extruded, and custom styled markers." -) + title = "Markers", + description = "Snippets demonstrating standard, extruded, and custom styled markers.") public class MarkerSnippets { private final Context context; @@ -52,14 +49,9 @@ public MarkerSnippets(Context context, TrackedMap3D map) { this.map = map; } - /** - * Adds a basic marker to the map. - */ + /** Adds a basic marker to the map. */ @SuppressWarnings("unused") - @SnippetItem( - title = "1. Basic", - description = "Adds a standard marker." - ) + @SnippetItem(title = "1. Basic", description = "Adds a standard marker.") public void addBasicMarker() { // [START maps_android_3d_marker_add_java] LatLngAltitude position = new LatLngAltitude(37.4220, -122.0841, 10.0); @@ -73,7 +65,8 @@ public void addBasicMarker() { // [START_EXCLUDE] LatLngAltitude markerPos = options.getPosition(); if (markerPos != null) { - LatLngAltitude camCenter = new LatLngAltitude(markerPos.getLatitude(), markerPos.getLongitude(), 0.0); + LatLngAltitude camCenter = + new LatLngAltitude(markerPos.getLatitude(), markerPos.getLongitude(), 0.0); Camera targetCamera = new Camera(camCenter, 0.0, 45.0, 0.0, 500.0); map.flyCameraTo(new FlyToOptions(targetCamera, 3000L)); } @@ -81,14 +74,12 @@ public void addBasicMarker() { // [END maps_android_3d_marker_add_java] } - /** - * Adds an advanced marker with detailed configuration options. - */ + /** Adds an advanced marker with detailed configuration options. */ @SuppressWarnings("unused") @SnippetItem( - title = "2. Advanced", - description = "Adds a 'Priority Marker' that is extruded and collides with other markers." - ) + title = "2. Advanced", + description = + "Adds a 'Priority Marker' that is extruded and collides with other markers.") public void addAdvancedMarker() { // [START maps_android_3d_marker_options_java] LatLngAltitude position = new LatLngAltitude(37.4220, -122.0841, 10.0); @@ -105,7 +96,8 @@ public void addAdvancedMarker() { // [START_EXCLUDE] LatLngAltitude markerPos = options.getPosition(); if (markerPos != null) { - LatLngAltitude camCenter = new LatLngAltitude(markerPos.getLatitude(), markerPos.getLongitude(), 0.0); + LatLngAltitude camCenter = + new LatLngAltitude(markerPos.getLatitude(), markerPos.getLongitude(), 0.0); Camera targetCamera = new Camera(camCenter, 0.0, 45.0, 0.0, 500.0); map.flyCameraTo(new FlyToOptions(targetCamera, 3000L)); } @@ -113,14 +105,11 @@ public void addAdvancedMarker() { // [END maps_android_3d_marker_options_java] } - /** - * Adds a marker with a click listener. - */ + /** Adds a marker with a click listener. */ @SuppressWarnings("unused") @SnippetItem( - title = "3. Click", - description = "Adds a marker that logs a message when clicked." - ) + title = "3. Click", + description = "Adds a marker that logs a message when clicked.") public void handleMarkerClick() { // [START maps_android_3d_marker_click_java] LatLngAltitude position = new LatLngAltitude(37.42, -122.08, 0.0); @@ -131,7 +120,8 @@ public void handleMarkerClick() { // [START_EXCLUDE] LatLngAltitude markerPos = options.getPosition(); if (markerPos != null) { - LatLngAltitude camCenter = new LatLngAltitude(markerPos.getLatitude(), markerPos.getLongitude(), 0.0); + LatLngAltitude camCenter = + new LatLngAltitude(markerPos.getLatitude(), markerPos.getLongitude(), 0.0); Camera targetCamera = new Camera(camCenter, 0.0, 45.0, 0.0, 500.0); map.flyCameraTo(new FlyToOptions(targetCamera, 3000L)); } @@ -139,22 +129,27 @@ public void handleMarkerClick() { // [START_EXCLUDE] if (marker != null) { - marker.setClickListener(() -> new Handler(Looper.getMainLooper()).post(() -> - Toast.makeText(context, "Marker Clicked!", Toast.LENGTH_SHORT).show() - )); + marker.setClickListener( + () -> + new Handler(Looper.getMainLooper()) + .post( + () -> + Toast.makeText( + context, + "Marker Clicked!", + Toast.LENGTH_SHORT) + .show())); } // [END_EXCLUDE] // [END maps_android_3d_marker_click_java] } - /** - * Adds a marker with a custom icon using PinConfiguration. - */ + /** Adds a marker with a custom icon using PinConfiguration. */ @SuppressWarnings("unused") @SnippetItem( - title = "4. Custom Icon", - description = "Adds a marker with a custom icon using PinConfiguration and Glyph styling." - ) + title = "4. Custom Icon", + description = + "Adds a marker with a custom icon using PinConfiguration and Glyph styling.") public void addCustomMarker(Context context) { // [START maps_android_3d_marker_custom_icon_java] LatLngAltitude position = new LatLngAltitude(37.4220, -122.0841, 10.0); @@ -168,20 +163,22 @@ public void addCustomMarker(Context context) { MarkerOptions options = new MarkerOptions(); options.setPosition(position); options.setLabel("Custom Icon Marker"); - + // Set the style using PinConfiguration - options.setStyle(PinConfiguration.builder() - .setScale(1.5f) - .setGlyph(glyphImage) - .setBackgroundColor(Color.BLUE) - .setBorderColor(Color.WHITE) - .build()); + options.setStyle( + PinConfiguration.builder() + .setScale(1.5f) + .setGlyph(glyphImage) + .setBackgroundColor(Color.BLUE) + .setBorderColor(Color.WHITE) + .build()); Marker marker = map.addMarker(options); // [START_EXCLUDE] LatLngAltitude markerPos = options.getPosition(); if (markerPos != null) { - LatLngAltitude camCenter = new LatLngAltitude(markerPos.getLatitude(), markerPos.getLongitude(), 0.0); + LatLngAltitude camCenter = + new LatLngAltitude(markerPos.getLatitude(), markerPos.getLongitude(), 0.0); Camera targetCamera = new Camera(camCenter, 0.0, 45.0, 0.0, 500.0); map.flyCameraTo(new FlyToOptions(targetCamera, 3000L)); } @@ -189,14 +186,11 @@ public void addCustomMarker(Context context) { // [END maps_android_3d_marker_custom_icon_java] } - /** - * Adds a marker with a colored Glyph. - */ + /** Adds a marker with a colored Glyph. */ @SuppressWarnings("unused") @SnippetItem( - title = "5. Color Glyph", - description = "Adds a marker with a customized glyph color." - ) + title = "5. Color Glyph", + description = "Adds a marker with a customized glyph color.") public void addMarkerWithColorGlyph() { // [START maps_android_3d_marker_glyph_color_java] LatLngAltitude position = new LatLngAltitude(37.4220, -122.0841, 10.0); @@ -204,15 +198,14 @@ public void addMarkerWithColorGlyph() { MarkerOptions options = new MarkerOptions(); options.setPosition(position); options.setLabel("Color Glyph"); - options.setStyle(PinConfiguration.builder() - .setGlyph(Glyph.fromColor(Color.CYAN)) - .build()); + options.setStyle(PinConfiguration.builder().setGlyph(Glyph.fromColor(Color.CYAN)).build()); map.addMarker(options); // [START_EXCLUDE] LatLngAltitude markerPos = options.getPosition(); if (markerPos != null) { - LatLngAltitude camCenter = new LatLngAltitude(markerPos.getLatitude(), markerPos.getLongitude(), 0.0); + LatLngAltitude camCenter = + new LatLngAltitude(markerPos.getLatitude(), markerPos.getLongitude(), 0.0); Camera targetCamera = new Camera(camCenter, 0.0, 45.0, 0.0, 500.0); map.flyCameraTo(new FlyToOptions(targetCamera, 3000L)); } @@ -220,14 +213,9 @@ public void addMarkerWithColorGlyph() { // [END maps_android_3d_marker_glyph_color_java] } - /** - * Adds a marker with a text Glyph. - */ + /** Adds a marker with a text Glyph. */ @SuppressWarnings("unused") - @SnippetItem( - title = "6. Text Glyph", - description = "Adds a marker with text inside the glyph." - ) + @SnippetItem(title = "6. Text Glyph", description = "Adds a marker with text inside the glyph.") public void addMarkerWithTextGlyph() { // [START maps_android_3d_marker_glyph_text_java] LatLngAltitude position = new LatLngAltitude(37.4220, -122.0841, 10.0); @@ -235,15 +223,14 @@ public void addMarkerWithTextGlyph() { MarkerOptions options = new MarkerOptions(); options.setPosition(position); options.setLabel("Text Glyph"); - options.setStyle(PinConfiguration.builder() - .setGlyph(Glyph.fromText("NYC")) - .build()); + options.setStyle(PinConfiguration.builder().setGlyph(Glyph.fromText("NYC")).build()); map.addMarker(options); // [START_EXCLUDE] LatLngAltitude markerPos = options.getPosition(); if (markerPos != null) { - LatLngAltitude camCenter = new LatLngAltitude(markerPos.getLatitude(), markerPos.getLongitude(), 0.0); + LatLngAltitude camCenter = + new LatLngAltitude(markerPos.getLatitude(), markerPos.getLongitude(), 0.0); Camera targetCamera = new Camera(camCenter, 0.0, 45.0, 0.0, 500.0); map.flyCameraTo(new FlyToOptions(targetCamera, 3000L)); } @@ -251,14 +238,11 @@ public void addMarkerWithTextGlyph() { // [END maps_android_3d_marker_glyph_text_java] } - /** - * Adds a marker with a circle Glyph. - */ + /** Adds a marker with a circle Glyph. */ @SuppressWarnings("unused") @SnippetItem( - title = "7. Circle Glyph", - description = "Adds a marker with a default circle glyph." - ) + title = "7. Circle Glyph", + description = "Adds a marker with a default circle glyph.") public void addMarkerWithCircleGlyph() { // [START maps_android_3d_marker_glyph_circle_java] LatLngAltitude position = new LatLngAltitude(37.4220, -122.0841, 10.0); @@ -269,15 +253,14 @@ public void addMarkerWithCircleGlyph() { MarkerOptions options = new MarkerOptions(); options.setPosition(position); options.setLabel("Circle Glyph"); - options.setStyle(PinConfiguration.builder() - .setGlyph(glyph) - .build()); + options.setStyle(PinConfiguration.builder().setGlyph(glyph).build()); map.addMarker(options); // [START_EXCLUDE] LatLngAltitude markerPos = options.getPosition(); if (markerPos != null) { - LatLngAltitude camCenter = new LatLngAltitude(markerPos.getLatitude(), markerPos.getLongitude(), 0.0); + LatLngAltitude camCenter = + new LatLngAltitude(markerPos.getLatitude(), markerPos.getLongitude(), 0.0); Camera targetCamera = new Camera(camCenter, 0.0, 45.0, 0.0, 500.0); map.flyCameraTo(new FlyToOptions(targetCamera, 3000L)); } diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java index ecb99f08..69efd22b 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/ModelSnippets.java @@ -21,6 +21,8 @@ import android.os.Looper; import android.widget.Toast; import com.example.snippets.java.TrackedMap3D; +import com.example.snippets.java.annotations.SnippetGroup; +import com.example.snippets.java.annotations.SnippetItem; import com.google.android.gms.maps3d.model.AltitudeMode; import com.google.android.gms.maps3d.model.Camera; import com.google.android.gms.maps3d.model.FlyToOptions; @@ -29,16 +31,14 @@ import com.google.android.gms.maps3d.model.ModelOptions; import com.google.android.gms.maps3d.model.Orientation; import com.google.android.gms.maps3d.model.Vector3D; -import com.example.snippets.java.annotations.SnippetGroup; -import com.example.snippets.java.annotations.SnippetItem; @SnippetGroup( - title = "Models", - description = "Snippets demonstrating 3D Model (GLB) integration and configuration." -) + title = "Models", + description = "Snippets demonstrating 3D Model (GLB) integration and configuration.") public class ModelSnippets { - public static final String SAUCER_URL = "https://storage.googleapis.com/gmp-maps-demos/p3d-map/assets/UFO.glb"; + public static final String SAUCER_URL = + "https://storage.googleapis.com/gmp-maps-demos/p3d-map/assets/UFO.glb"; private final Context context; private final TrackedMap3D map; @@ -48,32 +48,36 @@ public ModelSnippets(Context context, TrackedMap3D map) { this.map = map; } - /** - * Adds a basic 3D model (GLB) to the map from a URL. - */ + /** Adds a basic 3D model (GLB) to the map from a URL. */ @SuppressWarnings("unused") @SnippetItem( - title = "1. Basic", - description = "Loads a GLB model from a URL and places it clamped to the ground." - ) + title = "1. Basic", + description = "Loads a GLB model from a URL and places it clamped to the ground.") public void addBasicModel() { // [START maps_android_3d_model_add_java] LatLngAltitude position = new LatLngAltitude(37.4220, -122.0841, 100.0); - + ModelOptions options = new ModelOptions(); options.setPosition(position); options.setUrl(SAUCER_URL); options.setAltitudeMode(AltitudeMode.RELATIVE_TO_MESH); options.setOrientation(new Orientation(0.0, 90.0, 0.0)); // heading, tilt, roll options.setScale(new Vector3D(10.0, 10.0, 10.0)); - + Model model = map.addModel(options); // [START_EXCLUDE] - model.setClickListener(() -> { - new Handler(Looper.getMainLooper()).post(() -> { - Toast.makeText(context, "Model Clicked!", Toast.LENGTH_SHORT).show(); - }); - }); + model.setClickListener( + () -> { + new Handler(Looper.getMainLooper()) + .post( + () -> { + Toast.makeText( + context, + "Model Clicked!", + Toast.LENGTH_SHORT) + .show(); + }); + }); // [END_EXCLUDE] // [END maps_android_3d_model_add_java] diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PlaceSnippets.java b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PlaceSnippets.java index cb9d56bd..de892c93 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PlaceSnippets.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PlaceSnippets.java @@ -16,24 +16,23 @@ package com.example.snippets.java.snippets; -import androidx.annotation.NonNull; -import androidx.annotation.Nullable; import android.content.Context; import android.os.Handler; import android.os.Looper; import android.widget.Toast; +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; import com.example.snippets.java.TrackedMap3D; +import com.example.snippets.java.annotations.SnippetGroup; +import com.example.snippets.java.annotations.SnippetItem; import com.google.android.gms.maps3d.OnMap3DClickListener; -import com.google.android.gms.maps3d.model.LatLngAltitude; import com.google.android.gms.maps3d.model.Camera; import com.google.android.gms.maps3d.model.FlyToOptions; -import com.example.snippets.java.annotations.SnippetGroup; -import com.example.snippets.java.annotations.SnippetItem; +import com.google.android.gms.maps3d.model.LatLngAltitude; @SnippetGroup( - title = "Places", - description = "Snippets demonstrating Place (POI/Building) interaction algorithms." -) + title = "Places", + description = "Snippets demonstrating Place (POI/Building) interaction algorithms.") public class PlaceSnippets { private final Context context; @@ -44,27 +43,33 @@ public PlaceSnippets(Context context, TrackedMap3D map) { this.map = map; } - /** - * Listens for clicks on 3D Places (buildings, POIs). - */ + /** Listens for clicks on 3D Places (buildings, POIs). */ @SuppressWarnings("unused") @SnippetItem( - title = "1. Listen Clicks", - description = "Sets up a listener that logs the Place ID when a user clicks on a 3D building or POI." - ) + title = "1. Listen Clicks", + description = + "Sets up a listener that logs the Place ID when a user clicks on a 3D building or POI.") public void listenToPlaceClicks() { // [START maps_android_3d_place_click_java] - map.setMap3DClickListener(new OnMap3DClickListener() { - @Override - public void onMap3DClick(@NonNull LatLngAltitude location, @Nullable String placeId) { - if (placeId != null) { - // Handle place click - Show a Toast on the UI thread - new Handler(Looper.getMainLooper()).post(() -> { - Toast.makeText(context, "Clicked Place ID: " + placeId, Toast.LENGTH_SHORT).show(); - }); - } - } - }); + map.setMap3DClickListener( + new OnMap3DClickListener() { + @Override + public void onMap3DClick( + @NonNull LatLngAltitude location, @Nullable String placeId) { + if (placeId != null) { + // Handle place click - Show a Toast on the UI thread + new Handler(Looper.getMainLooper()) + .post( + () -> { + Toast.makeText( + context, + "Clicked Place ID: " + placeId, + Toast.LENGTH_SHORT) + .show(); + }); + } + } + }); // [END maps_android_3d_place_click_java] // Position the camera to show the buildings (Empire State Building area) diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java index 0cd36a12..72f12ed4 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PolygonSnippets.java @@ -22,22 +22,21 @@ import android.os.Looper; import android.widget.Toast; import com.example.snippets.java.TrackedMap3D; +import com.example.snippets.java.annotations.SnippetGroup; +import com.example.snippets.java.annotations.SnippetItem; import com.google.android.gms.maps3d.model.AltitudeMode; import com.google.android.gms.maps3d.model.Camera; import com.google.android.gms.maps3d.model.FlyToOptions; -import com.google.android.gms.maps3d.model.LatLngAltitude; import com.google.android.gms.maps3d.model.Hole; +import com.google.android.gms.maps3d.model.LatLngAltitude; import com.google.android.gms.maps3d.model.Polygon; import com.google.android.gms.maps3d.model.PolygonOptions; import java.util.Arrays; import java.util.List; -import com.example.snippets.java.annotations.SnippetGroup; -import com.example.snippets.java.annotations.SnippetItem; @SnippetGroup( - title = "Polygons", - description = "Snippets demonstrating 2D and 3D extruded polygon layers on the map." -) + title = "Polygons", + description = "Snippets demonstrating 2D and 3D extruded polygon layers on the map.") public class PolygonSnippets { private final Context context; @@ -48,23 +47,20 @@ public PolygonSnippets(Context context, TrackedMap3D map) { this.map = map; } - /** - * Adds a simple polygon to the map. - */ + /** Adds a simple polygon to the map. */ @SuppressWarnings("unused") @SnippetItem( - title = "1. Basic", - description = "Draws a red polygon with a blue stroke around a small area" - ) + title = "1. Basic", + description = "Draws a red polygon with a blue stroke around a small area") public void addBasicPolygon() { // [START maps_android_3d_polygon_add_java] - List points = Arrays.asList( - new LatLngAltitude(37.42, -122.08, 0.0), - new LatLngAltitude(37.42, -122.09, 0.0), - new LatLngAltitude(37.43, -122.09, 0.0), - new LatLngAltitude(37.43, -122.08, 0.0), - new LatLngAltitude(37.42, -122.08, 0.0) - ); + List points = + Arrays.asList( + new LatLngAltitude(37.42, -122.08, 0.0), + new LatLngAltitude(37.42, -122.09, 0.0), + new LatLngAltitude(37.43, -122.09, 0.0), + new LatLngAltitude(37.43, -122.08, 0.0), + new LatLngAltitude(37.42, -122.08, 0.0)); PolygonOptions options = new PolygonOptions(); options.setPath(points); @@ -72,39 +68,46 @@ public void addBasicPolygon() { options.setStrokeColor(Color.BLUE); options.setStrokeWidth(5.0); options.setAltitudeMode(AltitudeMode.CLAMP_TO_GROUND); - + Polygon polygon = map.addPolygon(options); // [START_EXCLUDE] - polygon.setClickListener(() -> { - new Handler(Looper.getMainLooper()).post(() -> { - Toast.makeText(context, "Polygon Clicked!", Toast.LENGTH_SHORT).show(); - }); - }); + polygon.setClickListener( + () -> { + new Handler(Looper.getMainLooper()) + .post( + () -> { + Toast.makeText( + context, + "Polygon Clicked!", + Toast.LENGTH_SHORT) + .show(); + }); + }); // [END_EXCLUDE] // [END maps_android_3d_polygon_add_java] - Camera cam = new Camera(new LatLngAltitude(37.424968, -122.084874, 19.90), 0.0, 45.02, 0.0, 4643.0); + Camera cam = + new Camera( + new LatLngAltitude(37.424968, -122.084874, 19.90), 0.0, 45.02, 0.0, 4643.0); FlyToOptions flyTo = new FlyToOptions(cam, 1000L); map.flyCameraTo(flyTo); } - /** - * Adds an extruded polygon with transparency. - */ + /** Adds an extruded polygon with transparency. */ @SuppressWarnings("unused") @SnippetItem( - title = "2. Extruded", - description = "Draws a semi-transparent red extruded polygon (height 50m) around a small area" - ) + title = "2. Extruded", + description = + "Draws a semi-transparent red extruded polygon (height 50m) around a small area") public void addExtrudedPolygon() { // [START maps_android_3d_polygon_extruded_java] - List points = Arrays.asList( - new LatLngAltitude(37.42, -122.08, 50.0), - new LatLngAltitude(37.42, -122.09, 50.0), - new LatLngAltitude(37.43, -122.09, 50.0), - new LatLngAltitude(37.43, -122.08, 50.0), - new LatLngAltitude(37.42, -122.08, 50.0) - ); + List points = + Arrays.asList( + new LatLngAltitude(37.42, -122.08, 50.0), + new LatLngAltitude(37.42, -122.09, 50.0), + new LatLngAltitude(37.43, -122.09, 50.0), + new LatLngAltitude(37.43, -122.08, 50.0), + new LatLngAltitude(37.42, -122.08, 50.0)); PolygonOptions options = new PolygonOptions(); options.setPath(points); @@ -112,47 +115,53 @@ public void addExtrudedPolygon() { options.setExtruded(true); options.setGeodesic(true); options.setAltitudeMode(AltitudeMode.RELATIVE_TO_GROUND); - + Polygon polygon = map.addPolygon(options); // [START_EXCLUDE] - polygon.setClickListener(() -> { - new Handler(Looper.getMainLooper()).post(() -> { - Toast.makeText(context, "Polygon Clicked!", Toast.LENGTH_SHORT).show(); - }); - }); + polygon.setClickListener( + () -> { + new Handler(Looper.getMainLooper()) + .post( + () -> { + Toast.makeText( + context, + "Polygon Clicked!", + Toast.LENGTH_SHORT) + .show(); + }); + }); // [END_EXCLUDE] // [END maps_android_3d_polygon_extruded_java] - Camera cam = new Camera(new LatLngAltitude(37.424968, -122.084874, 19.90), 0.0, 45.02, 0.0, 4643.0); + Camera cam = + new Camera( + new LatLngAltitude(37.424968, -122.084874, 19.90), 0.0, 45.02, 0.0, 4643.0); FlyToOptions flyTo = new FlyToOptions(cam, 1000L); map.flyCameraTo(flyTo); } - /** - * Adds a polygon with a hole cutout. - */ + /** Adds a polygon with a hole cutout. */ @SuppressWarnings("unused") @SnippetItem( - title = "3. Polygon with Hole", - description = "Draws a polygon with an interior hole cutout." - ) + title = "3. Polygon with Hole", + description = "Draws a polygon with an interior hole cutout.") public void addPolygonWithHole() { // [START maps_android_3d_polygon_hole_java] - List outerPoints = Arrays.asList( - new LatLngAltitude(37.422, -122.084, 0.0), - new LatLngAltitude(37.422, -122.086, 0.0), - new LatLngAltitude(37.424, -122.086, 0.0), - new LatLngAltitude(37.424, -122.084, 0.0), - new LatLngAltitude(37.422, -122.084, 0.0) - ); - - List innerPoints = Arrays.asList( - new LatLngAltitude(37.4225, -122.0845, 0.0), - new LatLngAltitude(37.4225, -122.0855, 0.0), - new LatLngAltitude(37.4235, -122.0855, 0.0), - new LatLngAltitude(37.4235, -122.0845, 0.0), - new LatLngAltitude(37.4225, -122.0845, 0.0) - ); + List outerPoints = + Arrays.asList( + new LatLngAltitude(37.422, -122.084, 0.0), + new LatLngAltitude(37.422, -122.086, 0.0), + new LatLngAltitude(37.424, -122.086, 0.0), + new LatLngAltitude(37.424, -122.084, 0.0), + new LatLngAltitude(37.422, -122.084, 0.0)); + + List innerPoints = + Arrays.asList( + new LatLngAltitude(37.4225, -122.0845, 0.0), + new LatLngAltitude(37.4225, -122.0855, 0.0), + new LatLngAltitude(37.4235, -122.0855, 0.0), + new LatLngAltitude(37.4235, -122.0845, 0.0), + new LatLngAltitude(37.4225, -122.0845, 0.0)); PolygonOptions options = new PolygonOptions(); options.setPath(outerPoints); @@ -165,15 +174,28 @@ public void addPolygonWithHole() { Polygon polygon = map.addPolygon(options); // [START_EXCLUDE] - polygon.setClickListener(() -> { - new Handler(Looper.getMainLooper()).post(() -> { - Toast.makeText(context, "Polygon Clicked!", Toast.LENGTH_SHORT).show(); - }); - }); + polygon.setClickListener( + () -> { + new Handler(Looper.getMainLooper()) + .post( + () -> { + Toast.makeText( + context, + "Polygon Clicked!", + Toast.LENGTH_SHORT) + .show(); + }); + }); // [END_EXCLUDE] // [END maps_android_3d_polygon_hole_java] - Camera cam = new Camera(new LatLngAltitude(37.423600, -122.085098, 4.31), 0.00, 45.00, 0.00, 1085.51); + Camera cam = + new Camera( + new LatLngAltitude(37.423600, -122.085098, 4.31), + 0.00, + 45.00, + 0.00, + 1085.51); FlyToOptions flyTo = new FlyToOptions(cam, 1000L); map.flyCameraTo(flyTo); } diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java index c613776c..88d29f44 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PolylineSnippets.java @@ -22,21 +22,20 @@ import android.os.Looper; import android.widget.Toast; import com.example.snippets.java.TrackedMap3D; +import com.example.snippets.java.annotations.SnippetGroup; +import com.example.snippets.java.annotations.SnippetItem; import com.google.android.gms.maps3d.model.AltitudeMode; +import com.google.android.gms.maps3d.model.Camera; +import com.google.android.gms.maps3d.model.FlyToOptions; import com.google.android.gms.maps3d.model.LatLngAltitude; import com.google.android.gms.maps3d.model.Polyline; import com.google.android.gms.maps3d.model.PolylineOptions; import java.util.Arrays; import java.util.List; -import com.example.snippets.java.annotations.SnippetGroup; -import com.example.snippets.java.annotations.SnippetItem; -import com.google.android.gms.maps3d.model.Camera; -import com.google.android.gms.maps3d.model.FlyToOptions; @SnippetGroup( - title = "Polylines", - description = "Snippets demonstrating 2D and 3D extruded polyline paths on the map." -) + title = "Polylines", + description = "Snippets demonstrating 2D and 3D extruded polyline paths on the map.") public class PolylineSnippets { private final Context context; @@ -47,57 +46,60 @@ public PolylineSnippets(Context context, TrackedMap3D map) { this.map = map; } - /** - * Adds a basic polyline to the map. - */ + /** Adds a basic polyline to the map. */ @SuppressWarnings("unused") @SnippetItem( - title = "1. Basic", - description = "Draws a thick red polyline connecting three points" - ) + title = "1. Basic", + description = "Draws a thick red polyline connecting three points") public void addBasicPolyline() { // [START maps_android_3d_polyline_add_java] - List points = Arrays.asList( - new LatLngAltitude(37.42, -122.08, 0.0), - new LatLngAltitude(37.43, -122.09, 0.0), - new LatLngAltitude(37.44, -122.08, 0.0) - ); + List points = + Arrays.asList( + new LatLngAltitude(37.42, -122.08, 0.0), + new LatLngAltitude(37.43, -122.09, 0.0), + new LatLngAltitude(37.44, -122.08, 0.0)); PolylineOptions options = new PolylineOptions(); options.setPath(points); options.setStrokeColor(Color.RED); options.setStrokeWidth(10.0); options.setAltitudeMode(AltitudeMode.CLAMP_TO_GROUND); - + Polyline polyline = map.addPolyline(options); // [START_EXCLUDE] - polyline.setClickListener(() -> { - new Handler(Looper.getMainLooper()).post(() -> { - Toast.makeText(context, "Polyline Clicked!", Toast.LENGTH_SHORT).show(); - }); - }); + polyline.setClickListener( + () -> { + new Handler(Looper.getMainLooper()) + .post( + () -> { + Toast.makeText( + context, + "Polyline Clicked!", + Toast.LENGTH_SHORT) + .show(); + }); + }); // [END_EXCLUDE] // [END maps_android_3d_polyline_add_java] - Camera camera = new Camera(new LatLngAltitude(37.43, -122.085, 0.0), 0.0, 45.0, 0.0, 5000.0); + Camera camera = + new Camera(new LatLngAltitude(37.43, -122.085, 0.0), 0.0, 45.0, 0.0, 5000.0); FlyToOptions flyToOptions = new FlyToOptions(camera, 1000L); map.flyCameraTo(flyToOptions); } - /** - * Adds a styled polyline with complex configuration. - */ + /** Adds a styled polyline with complex configuration. */ @SuppressWarnings("unused") @SnippetItem( - title = "2. Styled", - description = "Draws a magenta polyline with a green outline, extruded and following the ground curvature (geodesic), connecting two points." - ) + title = "2. Styled", + description = + "Draws a magenta polyline with a green outline, extruded and following the ground curvature (geodesic), connecting two points.") public void addStyledPolyline() { // [START maps_android_3d_polyline_options_java] - List points = Arrays.asList( - new LatLngAltitude(37.42, -122.08, 50.0), - new LatLngAltitude(37.43, -122.09, 100.0) - ); + List points = + Arrays.asList( + new LatLngAltitude(37.42, -122.08, 50.0), + new LatLngAltitude(37.43, -122.09, 100.0)); PolylineOptions options = new PolylineOptions(); options.setPath(points); @@ -109,18 +111,26 @@ public void addStyledPolyline() { options.setExtruded(true); options.setGeodesic(true); options.setDrawsOccludedSegments(true); - + Polyline polyline = map.addPolyline(options); // [START_EXCLUDE] - polyline.setClickListener(() -> { - new Handler(Looper.getMainLooper()).post(() -> { - Toast.makeText(context, "Polyline Clicked!", Toast.LENGTH_SHORT).show(); - }); - }); + polyline.setClickListener( + () -> { + new Handler(Looper.getMainLooper()) + .post( + () -> { + Toast.makeText( + context, + "Polyline Clicked!", + Toast.LENGTH_SHORT) + .show(); + }); + }); // [END_EXCLUDE] // [END maps_android_3d_polyline_options_java] - Camera camera = new Camera(new LatLngAltitude(37.425, -122.085, 0.0), 0.0, 45.0, 0.0, 4000.0); + Camera camera = + new Camera(new LatLngAltitude(37.425, -122.085, 0.0), 0.0, 45.0, 0.0, 4000.0); FlyToOptions flyToOptions = new FlyToOptions(camera, 1000L); map.flyCameraTo(flyToOptions); } diff --git a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java index 4b0cd24f..00e08b8d 100644 --- a/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java +++ b/snippets/java-app/src/main/java/com/example/snippets/java/snippets/PopoverSnippets.java @@ -16,26 +16,25 @@ package com.example.snippets.java.snippets; -import com.example.snippets.common.R; import android.content.Context; -import com.example.snippets.java.TrackedMap3D; import android.graphics.Color; import android.widget.TextView; +import com.example.snippets.common.R; +import com.example.snippets.java.TrackedMap3D; +import com.example.snippets.java.annotations.SnippetGroup; +import com.example.snippets.java.annotations.SnippetItem; +import com.google.android.gms.maps3d.Popover; import com.google.android.gms.maps3d.model.AltitudeMode; +import com.google.android.gms.maps3d.model.Camera; +import com.google.android.gms.maps3d.model.FlyToOptions; import com.google.android.gms.maps3d.model.LatLngAltitude; import com.google.android.gms.maps3d.model.Marker; import com.google.android.gms.maps3d.model.MarkerOptions; -import com.google.android.gms.maps3d.Popover; import com.google.android.gms.maps3d.model.PopoverOptions; -import com.google.android.gms.maps3d.model.Camera; -import com.google.android.gms.maps3d.model.FlyToOptions; -import com.example.snippets.java.annotations.SnippetGroup; -import com.example.snippets.java.annotations.SnippetItem; @SnippetGroup( - title = "Popovers", - description = "Snippets demonstrating anchored and configured 3D Popover views." -) + title = "Popovers", + description = "Snippets demonstrating anchored and configured 3D Popover views.") public class PopoverSnippets { private final Context context; @@ -46,20 +45,16 @@ public PopoverSnippets(Context context, TrackedMap3D map) { this.map = map; } - /** - * Adds a popover anchored to a marker. - */ + /** Adds a popover anchored to a marker. */ @SuppressWarnings("unused") @SnippetItem( - title = "1. Marker Anchor", - description = "Adds a 'Hello Popover!' text bubble anchored to a marker" - ) + title = "1. Marker Anchor", + description = "Adds a 'Hello Popover!' text bubble anchored to a marker") public void addPopoverToMarker() { // [START maps_android_3d_popover_add_java] // Create a marker first Marker marker = map.addMarker(new MarkerOptions()); - if (marker == null) - return; + if (marker == null) return; // Create a custom view for the popover TextView textView = new TextView(context); @@ -82,14 +77,12 @@ public void addPopoverToMarker() { // [END maps_android_3d_popover_add_java] } - /** - * Adds a configured popover (auto-close enabled, auto-pan disabled). - */ + /** Adds a configured popover (auto-close enabled, auto-pan disabled). */ @SuppressWarnings("unused") @SnippetItem( - title = "2. Configured", - description = "Adds an 'Info' popover anchored to a marker with auto-close enabled and auto-pan disabled." - ) + title = "2. Configured", + description = + "Adds an 'Info' popover anchored to a marker with auto-close enabled and auto-pan disabled.") public void addConfiguredPopover() { // [START maps_android_3d_popover_options_java] // Create a marker at an interesting location (e.g., Golden Gate Bridge) @@ -101,7 +94,7 @@ public void addConfiguredPopover() { if (marker == null) return; TextView textView = new TextView(context); - textView.setText(com.example.snippets.common.R.string.popover_info); + textView.setText(R.string.popover_info); textView.setPadding(16, 16, 16, 16); textView.setBackgroundColor(Color.WHITE); diff --git a/snippets/kotlin-app/src/androidTest/java/com/example/snippets/kotlin/SnippetDiscoveryTest.kt b/snippets/kotlin-app/src/androidTest/java/com/example/snippets/kotlin/SnippetDiscoveryTest.kt index 2b4152d9..2fc90c78 100644 --- a/snippets/kotlin-app/src/androidTest/java/com/example/snippets/kotlin/SnippetDiscoveryTest.kt +++ b/snippets/kotlin-app/src/androidTest/java/com/example/snippets/kotlin/SnippetDiscoveryTest.kt @@ -16,12 +16,15 @@ package com.example.snippets.kotlin +import android.content.Context import android.content.Intent import androidx.test.core.app.ActivityScenario import androidx.test.core.app.ApplicationProvider import androidx.test.ext.junit.runners.AndroidJUnit4 -import androidx.test.platform.app.InstrumentationRegistry +import com.example.snippets.common.R import com.google.android.gms.maps3d.Map3DView +import org.junit.Assert.assertFalse +import org.junit.Assert.assertNotNull import org.junit.Assert.fail import org.junit.Test import org.junit.runner.RunWith @@ -34,7 +37,7 @@ class SnippetDiscoveryTest { @Test fun verifyAllSnippetsLaunchWithoutCrash() { val snippets = SnippetRegistry.snippets.keys - val context = ApplicationProvider.getApplicationContext() + val context = ApplicationProvider.getApplicationContext() for (snippetTitle in snippets) { val intent = Intent(context, MapActivity::class.java).apply { @@ -47,7 +50,7 @@ class SnippetDiscoveryTest { val latch = CountDownLatch(1) scenario.onActivity { activity -> // Verify map view exists - val map = activity.findViewById(com.example.snippets.common.R.id.map) + val map = activity.findViewById(R.id.map) if (map != null) { latch.countDown() } @@ -65,17 +68,17 @@ class SnippetDiscoveryTest { @Test fun verifySnippetGroupsLoaded() { val groups = SnippetRegistry.getSnippetGroups() - org.junit.Assert.assertNotNull("Snippet groups list should not be null", groups) - org.junit.Assert.assertFalse("Snippet groups list should not be empty", groups.isEmpty()) + assertNotNull("Snippet groups list should not be null", groups) + assertFalse("Snippet groups list should not be empty", groups.isEmpty()) for (group in groups) { - org.junit.Assert.assertNotNull("Group title should not be null", group.title) - org.junit.Assert.assertFalse("Group title should not be empty", group.title.isEmpty()) - org.junit.Assert.assertFalse("Group '${group.title}' must have items", group.items.isEmpty()) + assertNotNull("Group title should not be null", group.title) + assertFalse("Group title should not be empty", group.title.isEmpty()) + assertFalse("Group '\${group.title}' must have items", group.items.isEmpty()) for (item in group.items) { - org.junit.Assert.assertNotNull("Snippet title should not be null", item.title) - org.junit.Assert.assertFalse("Snippet title should not be empty", item.title.isEmpty()) + assertNotNull("Snippet title should not be null", item.title) + assertFalse("Snippet title should not be empty", item.title.isEmpty()) } } } diff --git a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/KotlinSnippetsActivity.kt b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/KotlinSnippetsActivity.kt index 2f7fe003..1b7b1fd8 100644 --- a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/KotlinSnippetsActivity.kt +++ b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/KotlinSnippetsActivity.kt @@ -50,22 +50,22 @@ class KotlinSnippetsActivity : AppCompatActivity() { setContent { SnippetsTheme { val snackbarHostState = remember { SnackbarHostState() } - - Scaffold( - modifier = Modifier.fillMaxSize(), - snackbarHost = { SnackbarHost(hostState = snackbarHostState) } - ) { innerPadding -> - SnippetGroupList( - groups = SnippetRegistry.getSnippetGroups(), - contentPadding = innerPadding, - onItemClick = { item -> - val intent = Intent(this, MapActivity::class.java) - intent.putExtra("group_title", item.groupTitle) - intent.putExtra(MapActivity.EXTRA_SNIPPET_TITLE, item.title) - startActivity(intent) - } - ) - } + + Scaffold( + modifier = Modifier.fillMaxSize(), + snackbarHost = { SnackbarHost(hostState = snackbarHostState) }, + ) { innerPadding -> + SnippetGroupList( + groups = SnippetRegistry.getSnippetGroups(), + contentPadding = innerPadding, + onItemClick = { item -> + val intent = Intent(this, MapActivity::class.java) + intent.putExtra("group_title", item.groupTitle) + intent.putExtra(MapActivity.EXTRA_SNIPPET_TITLE, item.title) + startActivity(intent) + }, + ) + } } } } @@ -76,13 +76,13 @@ fun SnippetGroupList( groups: List, modifier: Modifier = Modifier, contentPadding: PaddingValues = PaddingValues(0.dp), - onItemClick: (SnippetItemInfo) -> Unit + onItemClick: (SnippetItemInfo) -> Unit, ) { val expandedGroups = remember { mutableStateMapOf() } LazyColumn( modifier = modifier, - contentPadding = contentPadding + contentPadding = contentPadding, ) { groups.forEach { group -> val isExpanded = expandedGroups[group.title] ?: true // Default to expanded @@ -94,7 +94,7 @@ fun SnippetGroupList( .fillMaxWidth() .clickable { expandedGroups[group.title] = !isExpanded } .padding(16.dp), - color = MaterialTheme.colorScheme.primary + color = MaterialTheme.colorScheme.primary, ) } if (isExpanded) { @@ -103,16 +103,16 @@ fun SnippetGroupList( modifier = Modifier .fillMaxWidth() .clickable { onItemClick(item) } - .padding(horizontal = 16.dp, vertical = 8.dp) + .padding(horizontal = 16.dp, vertical = 8.dp), ) { Text( text = item.title, - style = MaterialTheme.typography.titleMedium + style = MaterialTheme.typography.titleMedium, ) Text( text = item.description, style = MaterialTheme.typography.bodyMedium, - color = MaterialTheme.colorScheme.onSurfaceVariant + color = MaterialTheme.colorScheme.onSurfaceVariant, ) } HorizontalDivider() diff --git a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt index 8476c937..85c08d8a 100644 --- a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt +++ b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/MapActivity.kt @@ -20,11 +20,16 @@ import android.os.Bundle import android.util.Log import android.widget.Toast import androidx.appcompat.app.AppCompatActivity +import androidx.core.view.WindowCompat import androidx.lifecycle.lifecycleScope import com.example.snippets.common.R import com.google.android.gms.maps3d.GoogleMap3D import com.google.android.gms.maps3d.Map3DView import com.google.android.gms.maps3d.OnMap3DViewReadyCallback +import com.google.android.gms.maps3d.model.camera +import com.google.android.gms.maps3d.model.flyToOptions +import com.google.android.gms.maps3d.model.latLngAltitude +import com.google.android.material.button.MaterialButton import kotlinx.coroutines.delay import kotlinx.coroutines.launch import kotlin.time.Duration.Companion.seconds @@ -40,7 +45,7 @@ class MapActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) - androidx.core.view.WindowCompat.setDecorFitsSystemWindows(window, false) + WindowCompat.setDecorFitsSystemWindows(window, false) setContentView(R.layout.activity_map) map3DView = findViewById(R.id.map) @@ -51,21 +56,23 @@ class MapActivity : AppCompatActivity() { val snippetList = SnippetRegistry.getSnippetGroups().flatMap { it.items } var currentIndex = snippetList.indexOfFirst { it.title == snippetTitle && (groupTitle == null || it.groupTitle == groupTitle) } - val printPoseBtn = findViewById(R.id.snapshot_button).apply { + val printPoseBtn = findViewById(R.id.snapshot_button).apply { setOnClickListener { if (::googleMap3D.isInitialized) { val cam = googleMap3D.getCamera() ?: return@setOnClickListener val center = cam.center ?: return@setOnClickListener - + // Normalize heading to [0, 360) val rawHeading = cam.heading ?: 0.0 val heading = (rawHeading % 360.0 + 360.0) % 360.0 - + // Normalize roll (-0.0 to 0.0) val rawRoll = cam.roll ?: 0.0 val roll = if (rawRoll == -0.0) 0.0 else rawRoll - Log.d("MapActivity", """ + Log.d( + "MapActivity", + """ Camera Pose: center = latLngAltitude { latitude = ${"%.6f".format(center.latitude)} @@ -76,14 +83,15 @@ class MapActivity : AppCompatActivity() { heading = ${"%.2f".format(heading)} range = ${"%.2f".format(cam.range)} roll = $roll - """.trimIndent()) + """.trimIndent(), + ) } else { Log.d("MapActivity", "Map NOT initialized yet") } } } - val replayBtn = findViewById(R.id.reset_view_button).apply { + val replayBtn = findViewById(R.id.reset_view_button).apply { setOnClickListener { if (currentIndex >= 0) { val item = snippetList[currentIndex] @@ -93,7 +101,7 @@ class MapActivity : AppCompatActivity() { } // Previous and Next Nav buttons - findViewById(R.id.previous_button).apply { + findViewById(R.id.previous_button).apply { setOnClickListener { if (snippetList.isEmpty()) return@setOnClickListener if (currentIndex > 0) { @@ -106,7 +114,7 @@ class MapActivity : AppCompatActivity() { } } - findViewById(R.id.next_button).apply { + findViewById(R.id.next_button).apply { setOnClickListener { if (snippetList.isEmpty()) return@setOnClickListener if (currentIndex < snippetList.size - 1) { @@ -134,7 +142,7 @@ class MapActivity : AppCompatActivity() { } } - override fun onError(error: java.lang.Exception) { + override fun onError(error: Exception) { Toast.makeText(this@MapActivity, "Map Error: ${error.message}", Toast.LENGTH_LONG) .show() } @@ -178,8 +186,8 @@ class MapActivity : AppCompatActivity() { private fun runSnippet(groupTitle: String?, snippetTitle: String?) { if (snippetTitle == null) return val key = if (groupTitle != null) "$groupTitle - $snippetTitle" else snippetTitle - val snippet = SnippetRegistry.snippets[key] - ?: SnippetRegistry.getSnippetGroups().flatMap { it.items }.find { it.title == snippetTitle } + val snippet = SnippetRegistry.snippets[key] + ?: SnippetRegistry.getSnippetGroups().flatMap { it.items }.find { it.title == snippetTitle } ?: return if (!::googleMap3D.isInitialized) return @@ -187,8 +195,8 @@ class MapActivity : AppCompatActivity() { lifecycleScope.launch { // 1. Set camera to far global view - val globalCamera = com.google.android.gms.maps3d.model.camera { - center = com.google.android.gms.maps3d.model.latLngAltitude { + val globalCamera = camera { + center = latLngAltitude { latitude = 0.0 longitude = 0.0 altitude = 0.0 @@ -197,21 +205,23 @@ class MapActivity : AppCompatActivity() { heading = 0.0 range = 30000000.0 // Far view } - googleMap3D.flyCameraTo(com.google.android.gms.maps3d.model.flyToOptions { - endCamera = globalCamera - durationInMillis = 2000 - }) + googleMap3D.flyCameraTo( + flyToOptions { + endCamera = globalCamera + durationInMillis = 2000 + }, + ) // 2. Pause for a few seconds delay(4.seconds) // 3. Play snippet try { - snippet.action(this@MapActivity, googleMap3D, lifecycleScope) + snippet.action(this@MapActivity, googleMap3D, lifecycleScope) Toast.makeText( this@MapActivity, "${snippet.groupTitle}: ${snippet.title}.\n${snippet.description}", - Toast.LENGTH_LONG + Toast.LENGTH_LONG, ).show() } catch (e: Exception) { Log.e("MapActivity", "Error running snippet: ${e.message}") diff --git a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/SnippetRegistry.kt b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/SnippetRegistry.kt index d963f4b2..133b41a3 100644 --- a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/SnippetRegistry.kt +++ b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/SnippetRegistry.kt @@ -17,6 +17,8 @@ package com.example.snippets.kotlin import android.content.Context +import com.example.snippets.kotlin.annotations.SnippetGroup +import com.example.snippets.kotlin.annotations.SnippetItem import com.example.snippets.kotlin.snippets.CameraControlSnippets import com.example.snippets.kotlin.snippets.MapInitSnippets import com.example.snippets.kotlin.snippets.MarkerSnippets @@ -26,10 +28,6 @@ import com.example.snippets.kotlin.snippets.PolygonSnippets import com.example.snippets.kotlin.snippets.PolylineSnippets import com.example.snippets.kotlin.snippets.PopoverSnippets import com.google.android.gms.maps3d.GoogleMap3D - - -import com.example.snippets.kotlin.annotations.SnippetGroup -import com.example.snippets.kotlin.annotations.SnippetItem import com.google.android.gms.maps3d.Popover import com.google.android.gms.maps3d.model.Marker import com.google.android.gms.maps3d.model.Model @@ -40,14 +38,14 @@ import kotlinx.coroutines.CoroutineScope data class SnippetGroupInfo( val title: String, val description: String, - val items: List + val items: List, ) data class SnippetItemInfo( val title: String, val description: String, val groupTitle: String, - val action: (Context, GoogleMap3D, CoroutineScope) -> Unit + val action: (Context, GoogleMap3D, CoroutineScope) -> Unit, ) object SnippetRegistry { @@ -57,11 +55,11 @@ object SnippetRegistry { addedElements.forEach { item -> try { when (item) { - is Marker -> item.remove() - is Polyline -> item.remove() - is Polygon -> item.remove() - is Model -> item.remove() - is Popover -> item.remove() + is Marker -> item.remove() + is Polyline -> item.remove() + is Polygon -> item.remove() + is Model -> item.remove() + is Popover -> item.remove() } } catch (e: Exception) { // Ignore failures to avoid crashing if already cleanup or invalid @@ -78,7 +76,7 @@ object SnippetRegistry { PolylineSnippets::class.java, ModelSnippets::class.java, PopoverSnippets::class.java, - PlaceSnippets::class.java + PlaceSnippets::class.java, ) /** @@ -93,38 +91,42 @@ object SnippetRegistry { for (method in clazz.declaredMethods) { val itemAnnotation = method.getAnnotation(SnippetItem::class.java) ?: continue - - items.add(SnippetItemInfo( - title = itemAnnotation.title, - description = itemAnnotation.description, - groupTitle = groupAnnotation.title, - action = { context, map, scope -> - try { - val trackedMap = TrackedMap3D(map, addedElements) - val instance = createInstance(clazz, context, trackedMap, scope) - // Invoke method, passing parameters if needed, or assuming no-arg - // Most snippet methods take no args because they use initialized class fields - if (method.parameterCount == 0) { - method.invoke(instance) - } else if (method.parameterCount == 1 && method.parameterTypes[0] == Context::class.java) { - method.invoke(instance, context) - } else { - // Fallback or log error + + items.add( + SnippetItemInfo( + title = itemAnnotation.title, + description = itemAnnotation.description, + groupTitle = groupAnnotation.title, + action = { context, map, scope -> + try { + val trackedMap = TrackedMap3D(map, addedElements) + val instance = createInstance(clazz, context, trackedMap, scope) + // Invoke method, passing parameters if needed, or assuming no-arg + // Most snippet methods take no args because they use initialized class fields + if (method.parameterCount == 0) { + method.invoke(instance) + } else if (method.parameterCount == 1 && method.parameterTypes[0] == Context::class.java) { + method.invoke(instance, context) + } else { + // Fallback or log error + } + } catch (e: Exception) { + e.printStackTrace() } - } catch (e: Exception) { - e.printStackTrace() - } - } - )) + }, + ), + ) } if (items.isNotEmpty()) { items.sortBy { it.title } - groups.add(SnippetGroupInfo( - title = groupAnnotation.title, - description = groupAnnotation.description, - items = items - )) + groups.add( + SnippetGroupInfo( + title = groupAnnotation.title, + description = groupAnnotation.description, + items = items, + ), + ) } } return groups @@ -152,7 +154,7 @@ object SnippetRegistry { // Legacy support for Activities during refactoring val snippets: Map by lazy { - getSnippetGroups().flatMap { group -> + getSnippetGroups().flatMap { group -> group.items.map { item -> "${item.groupTitle} - ${item.title}" to item } }.toMap() } diff --git a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt index e477d22c..6bd12de6 100644 --- a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt +++ b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/TrackedMap3D.kt @@ -5,18 +5,19 @@ import com.google.android.gms.maps3d.OnCameraChangedListener import com.google.android.gms.maps3d.OnMap3DClickListener import com.google.android.gms.maps3d.OnMapReadyListener import com.google.android.gms.maps3d.OnMapSteadyListener -import com.google.android.gms.maps3d.model.Marker -import com.google.android.gms.maps3d.model.MarkerOptions -import com.google.android.gms.maps3d.model.Polyline -import com.google.android.gms.maps3d.model.PolylineOptions -import com.google.android.gms.maps3d.model.Polygon -import com.google.android.gms.maps3d.model.PolygonOptions -import com.google.android.gms.maps3d.model.Model -import com.google.android.gms.maps3d.model.ModelOptions import com.google.android.gms.maps3d.Popover import com.google.android.gms.maps3d.model.Camera +import com.google.android.gms.maps3d.model.CameraRestriction import com.google.android.gms.maps3d.model.FlyAroundOptions import com.google.android.gms.maps3d.model.FlyToOptions +import com.google.android.gms.maps3d.model.Marker +import com.google.android.gms.maps3d.model.MarkerOptions +import com.google.android.gms.maps3d.model.Model +import com.google.android.gms.maps3d.model.ModelOptions +import com.google.android.gms.maps3d.model.Polygon +import com.google.android.gms.maps3d.model.PolygonOptions +import com.google.android.gms.maps3d.model.Polyline +import com.google.android.gms.maps3d.model.PolylineOptions import com.google.android.gms.maps3d.model.PopoverOptions /** @@ -24,7 +25,7 @@ import com.google.android.gms.maps3d.model.PopoverOptions */ class TrackedMap3D( val delegate: GoogleMap3D, - private val items: MutableList + private val items: MutableList, ) { fun addMarker(options: MarkerOptions): Marker? { @@ -68,6 +69,6 @@ class TrackedMap3D( fun flyCameraAround(options: FlyAroundOptions) = delegate.flyCameraAround(options) fun setOnMapReadyListener(listener: OnMapReadyListener?) = delegate.setOnMapReadyListener(listener) fun setOnMapSteadyListener(listener: OnMapSteadyListener?) = delegate.setOnMapSteadyListener(listener) - fun setCameraRestriction(restriction: com.google.android.gms.maps3d.model.CameraRestriction?) = delegate.setCameraRestriction(restriction) + fun setCameraRestriction(restriction: CameraRestriction?) = delegate.setCameraRestriction(restriction) fun getCameraRestriction() = delegate.getCameraRestriction() } diff --git a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/annotations/SnippetGroup.kt b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/annotations/SnippetGroup.kt index 594aba1f..1558bc3d 100644 --- a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/annotations/SnippetGroup.kt +++ b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/annotations/SnippetGroup.kt @@ -10,5 +10,5 @@ package com.example.snippets.kotlin.annotations @Retention(AnnotationRetention.RUNTIME) annotation class SnippetGroup( val title: String, - val description: String = "" + val description: String = "", ) diff --git a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/annotations/SnippetItem.kt b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/annotations/SnippetItem.kt index 240e7618..d9aa6110 100644 --- a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/annotations/SnippetItem.kt +++ b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/annotations/SnippetItem.kt @@ -10,5 +10,5 @@ package com.example.snippets.kotlin.annotations @Retention(AnnotationRetention.RUNTIME) annotation class SnippetItem( val title: String, - val description: String = "" + val description: String = "", ) diff --git a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt index 16230902..a37c536c 100644 --- a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt +++ b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/CameraControlSnippets.kt @@ -22,32 +22,32 @@ import com.example.snippets.kotlin.annotations.SnippetGroup import com.example.snippets.kotlin.annotations.SnippetItem import com.example.snippets.kotlin.utils.awaitAnimation import com.google.android.gms.maps3d.model.camera +import com.google.android.gms.maps3d.model.cameraRestriction import com.google.android.gms.maps3d.model.flyAroundOptions import com.google.android.gms.maps3d.model.flyToOptions import com.google.android.gms.maps3d.model.latLngAltitude -import com.google.android.gms.maps3d.model.cameraRestriction import com.google.android.gms.maps3d.model.latLngBounds import kotlinx.coroutines.delay import kotlinx.coroutines.launch import kotlin.time.Duration.Companion.seconds -@SnippetGroup( - title = "Camera", - description = "Snippets demonstrating dynamic camera orchestration and animations." -) /** * Snippets demonstrating dynamic camera orchestration and animations. * * @property map The tracked map delegate wrapper. * @property lifecycleScope The scope managing asynchronous animations duration cycles. - * + * * NOTE: While passing a bare CoroutineScope is straightforward for snippets runner contexts, * in production, bounding animation jobs to lifecycle-aware components (like Views, Fragments, * or ViewModel `viewModelScope` triggers) prevents memory leaks and guarantees safe cancellation. */ +@SnippetGroup( + title = "Camera", + description = "Snippets demonstrating dynamic camera orchestration and animations.", +) class CameraControlSnippets( private val map: TrackedMap3D, - private val lifecycleScope: kotlinx.coroutines.CoroutineScope + private val lifecycleScope: kotlinx.coroutines.CoroutineScope, ) { /** @@ -56,7 +56,7 @@ class CameraControlSnippets( @Suppress("unused") @SnippetItem( title = "1. Fly To", - description = "Animates the camera to a specific position with a tilt and heading over 5 seconds." + description = "Animates the camera to a specific position with a tilt and heading over 5 seconds.", ) fun flyCameraToPosition() { // [START maps_android_3d_camera_fly_to_kt] @@ -71,7 +71,7 @@ class CameraControlSnippets( range = 191.71 roll = 0.0 } - + val options = flyToOptions { endCamera = targetCamera durationInMillis = 5000 @@ -87,7 +87,7 @@ class CameraControlSnippets( @Suppress("unused") @SnippetItem( title = "2. Fly Around", - description = "Rotates the camera 360 degrees around a specific location over 10 seconds." + description = "Rotates the camera 360 degrees around a specific location over 10 seconds.", ) fun flyCameraAroundLocation() { // [START maps_android_3d_camera_fly_around_kt] @@ -131,7 +131,7 @@ class CameraControlSnippets( @Suppress("unused") @SnippetItem( title = "3. Stop Animation", - description = "Stops any currently running camera animation immediately." + description = "Stops any currently running camera animation immediately.", ) fun stopAnimation() { // [START maps_android_3d_camera_stop_kt] @@ -159,13 +159,15 @@ class CameraControlSnippets( } // [END_EXCLUDE] - + // 1. Start a perpetual flyAround animation so we have something to stop - map.flyCameraAround(flyAroundOptions { - center = targetCamera - rounds = 10.0 - durationInMillis = 30_000 - }) + map.flyCameraAround( + flyAroundOptions { + center = targetCamera + rounds = 10.0 + durationInMillis = 30_000 + }, + ) lifecycleScope.launch { delay(2.seconds) // Let it fly for 2 seconds @@ -182,7 +184,7 @@ class CameraControlSnippets( @Suppress("unused") @SnippetItem( title = "4. Listen Camera Events", - description = "Logs camera change events to the console, printing the center coordinates as the camera moves." + description = "Logs camera change events to the console, printing the center coordinates as the camera moves.", ) fun listenToCameraEvents() { // [START maps_android_3d_camera_events_kt] @@ -191,12 +193,15 @@ class CameraControlSnippets( val currentTime = System.currentTimeMillis() if (currentTime - lastLogTime > 500) { // Limit to 1 log per 500ms lastLogTime = currentTime - Log.d("Maps3D", "Camera State: " + + Log.d( + "Maps3D", + "Camera State: " + "Center: ${camera.center}, " + "Heading: ${camera.heading}, " + "Tilt: ${camera.tilt}, " + "Roll: ${camera.roll}, " + - "Range: ${camera.range}") + "Range: ${camera.range}", + ) } } // [END maps_android_3d_camera_events_kt] @@ -213,7 +218,7 @@ class CameraControlSnippets( @Suppress("unused") @SnippetItem( title = "5. Listen Steady State", - description = "Logs to the console when the map finishes rendering or enters a steady state." + description = "Logs to the console when the map finishes rendering or enters a steady state.", ) fun listenToMapSteadyState() { // [START maps_android_3d_camera_steady_kt] @@ -229,18 +234,20 @@ class CameraControlSnippets( @Suppress("unused") @SnippetItem( title = "6. Camera Restriction", - description = "Restricts the camera to a specific altitude range and bounding box." + description = "Restricts the camera to a specific altitude range and bounding box.", ) fun setCameraRestrictions() { // [START maps_android_3d_camera_restriction_kt] // Move the camera inside the restricted bounds so we focus on NYC - map.setCamera(camera { - center = latLngAltitude { - latitude = 40.748233 - longitude = -73.985663 - altitude = 1500.0 - } - }) + map.setCamera( + camera { + center = latLngAltitude { + latitude = 40.748233 + longitude = -73.985663 + altitude = 1500.0 + } + }, + ) val nycBounds = latLngBounds { northEastLat = 40.856492 diff --git a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt index a7794023..d9625489 100644 --- a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt +++ b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MapInitSnippets.kt @@ -16,26 +16,26 @@ package com.example.snippets.kotlin.snippets -import android.util.Log -import androidx.compose.foundation.layout.fillMaxSize import android.content.Context import android.os.Handler import android.os.Looper +import android.util.Log import android.widget.Toast +import androidx.compose.foundation.layout.fillMaxSize import androidx.compose.runtime.Composable import androidx.compose.ui.Modifier import androidx.compose.ui.viewinterop.AndroidView +import com.example.snippets.kotlin.annotations.SnippetGroup +import com.example.snippets.kotlin.annotations.SnippetItem import com.google.android.gms.maps3d.GoogleMap3D import com.google.android.gms.maps3d.Map3DView import com.google.android.gms.maps3d.OnMap3DViewReadyCallback import com.google.android.gms.maps3d.model.camera import com.google.android.gms.maps3d.model.latLngAltitude -import com.example.snippets.kotlin.annotations.SnippetGroup -import com.example.snippets.kotlin.annotations.SnippetItem @SnippetGroup( title = "Map Initialization", - description = "Snippets demonstrating map lifecycle, listeners and readiness states." + description = "Snippets demonstrating map lifecycle, listeners and readiness states.", ) class MapInitSnippets { @@ -43,14 +43,14 @@ class MapInitSnippets { /** * Initializes a standard 3D Map View using AndroidView in Compose. */ + // [END_EXCLUDE] @Composable // [START_EXCLUDE] @Suppress("unused") @SnippetItem( title = "2. Add Map to AndroidView", - description = "Shows how to add a Map3DView to an AndroidView which bridges to Jetpack Compose." + description = "Shows how to add a Map3DView to an AndroidView which bridges to Jetpack Compose.", ) - // [END_EXCLUDE] fun BasicMap3D() { AndroidView( modifier = Modifier.fillMaxSize(), @@ -77,7 +77,7 @@ class MapInitSnippets { } }) } - } + }, ) } // [END maps_android_3d_init_basic_kt] @@ -88,12 +88,12 @@ class MapInitSnippets { @Suppress("unused") @SnippetItem( title = "1. Listen Events", - description = "Initializes a 3D map and logs events when the scene is ready (100% loaded) and steady (camera stopped moving)." + description = "Initializes a 3D map and logs events when the scene is ready (100% loaded) and steady (camera stopped moving).", ) fun setupMapListeners(context: Context, map: GoogleMap3D) { // [START maps_android_3d_init_listeners_kt] val mainHandler = Handler(Looper.getMainLooper()) - + map.setOnMapReadyListener { sceneReadiness -> if (sceneReadiness == 1.0) { // Scene is fully loaded diff --git a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt index 34cbc31a..429420b6 100644 --- a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt +++ b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/MarkerSnippets.kt @@ -37,7 +37,7 @@ import com.google.android.gms.maps3d.model.markerOptions @SnippetGroup( title = "Markers", - description = "Snippets demonstrating standard, extruded, and custom styled markers." + description = "Snippets demonstrating standard, extruded, and custom styled markers.", ) class MarkerSnippets(private val context: Context, private val map: TrackedMap3D) { @@ -47,7 +47,7 @@ class MarkerSnippets(private val context: Context, private val map: TrackedMap3D @Suppress("unused") @SnippetItem( title = "1. Basic", - description = "Adds a standard marker." + description = "Adds a standard marker.", ) fun addBasicMarker() { // [START maps_android_3d_marker_add_kt] @@ -56,28 +56,30 @@ class MarkerSnippets(private val context: Context, private val map: TrackedMap3D longitude = -122.0841 altitude = 10.0 } - + val options = markerOptions { this.position = position label = "Basic Marker" // MarkerOptions uses label, not title. } - + val marker = map.addMarker(options) // [START_EXCLUDE] - map.flyCameraTo(flyToOptions { - endCamera = camera { - center = latLngAltitude { - latitude = position.latitude - longitude = position.longitude - altitude = 0.0 + map.flyCameraTo( + flyToOptions { + endCamera = camera { + center = latLngAltitude { + latitude = position.latitude + longitude = position.longitude + altitude = 0.0 + } + tilt = 45.0 + heading = 0.0 + range = 500.0 } - tilt = 45.0 - heading = 0.0 - range = 500.0 - } - durationInMillis = 3000 // Slightly longer - }) + durationInMillis = 3000 // Slightly longer + }, + ) // [END_EXCLUDE] // [END maps_android_3d_marker_add_kt] } @@ -88,7 +90,7 @@ class MarkerSnippets(private val context: Context, private val map: TrackedMap3D @Suppress("unused") @SnippetItem( title = "2. Advanced", - description = "Adds a 'Priority Marker' that is extruded and collides with other markers." + description = "Adds a 'Priority Marker' that is extruded and collides with other markers.", ) fun addAdvancedMarker() { // [START maps_android_3d_marker_options_kt] @@ -104,22 +106,24 @@ class MarkerSnippets(private val context: Context, private val map: TrackedMap3D isExtruded = true isDrawnWhenOccluded = true } - + val marker = map.addMarker(options) // [START_EXCLUDE] - map.flyCameraTo(flyToOptions { - endCamera = camera { - center = latLngAltitude { - latitude = options.position.latitude - longitude = options.position.longitude - altitude = 0.0 + map.flyCameraTo( + flyToOptions { + endCamera = camera { + center = latLngAltitude { + latitude = options.position.latitude + longitude = options.position.longitude + altitude = 0.0 + } + tilt = 45.0 + heading = 0.0 + range = 500.0 } - tilt = 45.0 - heading = 0.0 - range = 500.0 - } - durationInMillis = 3000 - }) + durationInMillis = 3000 + }, + ) // [END_EXCLUDE] // [END maps_android_3d_marker_options_kt] } @@ -130,31 +134,35 @@ class MarkerSnippets(private val context: Context, private val map: TrackedMap3D @Suppress("unused") @SnippetItem( title = "3. Click", - description = "Adds a marker that logs a message when clicked." + description = "Adds a marker that logs a message when clicked.", ) fun handleMarkerClick() { // [START maps_android_3d_marker_click_kt] - val marker = map.addMarker(markerOptions { - position = latLngAltitude { - latitude = 37.42 - longitude = -122.08 - altitude = 0.0 - } - }) - // [START_EXCLUDE] - map.flyCameraTo(flyToOptions { - endCamera = camera { - center = latLngAltitude { + val marker = map.addMarker( + markerOptions { + position = latLngAltitude { latitude = 37.42 longitude = -122.08 altitude = 0.0 } - tilt = 45.0 - heading = 0.0 - range = 500.0 - } - durationInMillis = 3000 - }) + }, + ) + // [START_EXCLUDE] + map.flyCameraTo( + flyToOptions { + endCamera = camera { + center = latLngAltitude { + latitude = 37.42 + longitude = -122.08 + altitude = 0.0 + } + tilt = 45.0 + heading = 0.0 + range = 500.0 + } + durationInMillis = 3000 + }, + ) // [START_EXCLUDE] marker?.setClickListener { @@ -172,7 +180,7 @@ class MarkerSnippets(private val context: Context, private val map: TrackedMap3D @Suppress("unused") @SnippetItem( title = "4. Custom Icon", - description = "Adds a marker with a custom icon using PinConfiguration and Glyph styling." + description = "Adds a marker with a custom icon using PinConfiguration and Glyph styling.", ) fun addCustomMarker(context: Context) { // [START maps_android_3d_marker_custom_icon_kt] @@ -189,29 +197,33 @@ class MarkerSnippets(private val context: Context, private val map: TrackedMap3D } label = "Custom Icon Marker" // Set the style using PinConfiguration - setStyle(PinConfiguration.builder() - .setScale(1.5f) - .setGlyph(glyphImage) - .setBackgroundColor(Color.BLUE) - .setBorderColor(Color.WHITE) - .build()) + setStyle( + PinConfiguration.builder() + .setScale(1.5f) + .setGlyph(glyphImage) + .setBackgroundColor(Color.BLUE) + .setBorderColor(Color.WHITE) + .build(), + ) } val marker = map.addMarker(options) // [START_EXCLUDE] - map.flyCameraTo(flyToOptions { - endCamera = camera { - center = latLngAltitude { - latitude = options.position.latitude - longitude = options.position.longitude - altitude = 0.0 + map.flyCameraTo( + flyToOptions { + endCamera = camera { + center = latLngAltitude { + latitude = options.position.latitude + longitude = options.position.longitude + altitude = 0.0 + } + tilt = 45.0 + heading = 0.0 + range = 500.0 } - tilt = 45.0 - heading = 0.0 - range = 500.0 - } - durationInMillis = 3000 - }) + durationInMillis = 3000 + }, + ) // [END_EXCLUDE] } @@ -221,7 +233,7 @@ class MarkerSnippets(private val context: Context, private val map: TrackedMap3D @Suppress("unused") @SnippetItem( title = "5. Color Glyph", - description = "Adds a marker with a customized glyph color." + description = "Adds a marker with a customized glyph color.", ) fun addMarkerWithColorGlyph() { // [START maps_android_3d_marker_glyph_color_kt] @@ -232,25 +244,29 @@ class MarkerSnippets(private val context: Context, private val map: TrackedMap3D altitude = 10.0 } label = "Color Glyph" - setStyle(PinConfiguration.builder() - .setGlyph(Glyph.fromColor(Color.CYAN)) - .build()) + setStyle( + PinConfiguration.builder() + .setGlyph(Glyph.fromColor(Color.CYAN)) + .build(), + ) } map.addMarker(options) // [START_EXCLUDE] - map.flyCameraTo(flyToOptions { - endCamera = camera { - center = latLngAltitude { - latitude = options.position.latitude - longitude = options.position.longitude - altitude = 0.0 + map.flyCameraTo( + flyToOptions { + endCamera = camera { + center = latLngAltitude { + latitude = options.position.latitude + longitude = options.position.longitude + altitude = 0.0 + } + tilt = 45.0 + heading = 0.0 + range = 500.0 } - tilt = 45.0 - heading = 0.0 - range = 500.0 - } - durationInMillis = 3000 - }) + durationInMillis = 3000 + }, + ) // [END_EXCLUDE] // [END maps_android_3d_marker_glyph_color_kt] } @@ -261,7 +277,7 @@ class MarkerSnippets(private val context: Context, private val map: TrackedMap3D @Suppress("unused") @SnippetItem( title = "6. Text Glyph", - description = "Adds a marker with text inside the glyph." + description = "Adds a marker with text inside the glyph.", ) fun addMarkerWithTextGlyph() { // [START maps_android_3d_marker_glyph_text_kt] @@ -272,25 +288,29 @@ class MarkerSnippets(private val context: Context, private val map: TrackedMap3D altitude = 10.0 } label = "Text Glyph" - setStyle(PinConfiguration.builder() - .setGlyph(Glyph.fromText("NYC")) - .build()) + setStyle( + PinConfiguration.builder() + .setGlyph(Glyph.fromText("NYC")) + .build(), + ) } map.addMarker(options) // [START_EXCLUDE] - map.flyCameraTo(flyToOptions { - endCamera = camera { - center = latLngAltitude { - latitude = options.position.latitude - longitude = options.position.longitude - altitude = 0.0 + map.flyCameraTo( + flyToOptions { + endCamera = camera { + center = latLngAltitude { + latitude = options.position.latitude + longitude = options.position.longitude + altitude = 0.0 + } + tilt = 45.0 + heading = 0.0 + range = 500.0 } - tilt = 45.0 - heading = 0.0 - range = 500.0 - } - durationInMillis = 3000 - }) + durationInMillis = 3000 + }, + ) // [END_EXCLUDE] // [END maps_android_3d_marker_glyph_text_kt] } @@ -301,7 +321,7 @@ class MarkerSnippets(private val context: Context, private val map: TrackedMap3D @Suppress("unused") @SnippetItem( title = "7. Circle Glyph", - description = "Adds a marker with a default circle glyph." + description = "Adds a marker with a default circle glyph.", ) fun addMarkerWithCircleGlyph() { // [START maps_android_3d_marker_glyph_circle_kt] @@ -315,27 +335,30 @@ class MarkerSnippets(private val context: Context, private val map: TrackedMap3D altitude = 10.0 } label = "Circle Glyph" - setStyle(PinConfiguration.builder() - .setGlyph(glyph) - .build()) + setStyle( + PinConfiguration.builder() + .setGlyph(glyph) + .build(), + ) } map.addMarker(options) // [START_EXCLUDE] - map.flyCameraTo(flyToOptions { - endCamera = camera { - center = latLngAltitude { - latitude = options.position.latitude - longitude = options.position.longitude - altitude = 0.0 + map.flyCameraTo( + flyToOptions { + endCamera = camera { + center = latLngAltitude { + latitude = options.position.latitude + longitude = options.position.longitude + altitude = 0.0 + } + tilt = 45.0 + heading = 0.0 + range = 500.0 } - tilt = 45.0 - heading = 0.0 - range = 500.0 - } - durationInMillis = 3000 - }) + durationInMillis = 3000 + }, + ) // [END_EXCLUDE] // [END maps_android_3d_marker_glyph_circle_kt] } } - diff --git a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt index caf3f464..75d81691 100644 --- a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt +++ b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/ModelSnippets.kt @@ -33,7 +33,7 @@ import com.google.android.gms.maps3d.model.vector3D @SnippetGroup( title = "Models", - description = "Snippets demonstrating 3D Model (GLB) integration and configuration." + description = "Snippets demonstrating 3D Model (GLB) integration and configuration.", ) class ModelSnippets(private val context: Context, private val map: TrackedMap3D) { companion object { @@ -46,7 +46,7 @@ class ModelSnippets(private val context: Context, private val map: TrackedMap3D) @Suppress("unused") @SnippetItem( title = "1. Basic", - description = "Loads a GLB model from a URL and places it clamped to the ground." + description = "Loads a GLB model from a URL and places it clamped to the ground.", ) fun addBasicModel() { // [START maps_android_3d_model_add_kt] @@ -65,7 +65,11 @@ class ModelSnippets(private val context: Context, private val map: TrackedMap3D) heading = 0.0 roll = 0.0 } - scale = vector3D { x = 10.0; y = 10.0; z = 10.0 } + scale = vector3D { + x = 10.0 + y = 10.0 + z = 10.0 + } } val model = map.addModel(options) @@ -79,14 +83,16 @@ class ModelSnippets(private val context: Context, private val map: TrackedMap3D) // [END maps_android_3d_model_add_kt] // Position the camera to show the model - map.flyCameraTo(flyToOptions { - endCamera = camera { - center = position - tilt = 45.0 - heading = 0.0 - range = 300.0 - } - durationInMillis = 2000 - }) + map.flyCameraTo( + flyToOptions { + endCamera = camera { + center = position + tilt = 45.0 + heading = 0.0 + range = 300.0 + } + durationInMillis = 2000 + }, + ) } } diff --git a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt index 0a87921b..f4f16aff 100644 --- a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt +++ b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PlaceSnippets.kt @@ -29,7 +29,7 @@ import com.google.android.gms.maps3d.model.latLngAltitude @SnippetGroup( title = "Places", - description = "Snippets demonstrating Place (POI/Building) interaction algorithms." + description = "Snippets demonstrating Place (POI/Building) interaction algorithms.", ) class PlaceSnippets(private val context: Context, private val map: TrackedMap3D) { /** @@ -38,7 +38,7 @@ class PlaceSnippets(private val context: Context, private val map: TrackedMap3D) @Suppress("unused") @SnippetItem( title = "1. Listen Clicks", - description = "Sets up a listener that logs the Place ID when a user clicks on a 3D building or POI." + description = "Sets up a listener that logs the Place ID when a user clicks on a 3D building or POI.", ) fun listenToPlaceClicks() { // [START maps_android_3d_place_click_kt] @@ -53,14 +53,20 @@ class PlaceSnippets(private val context: Context, private val map: TrackedMap3D) // [END maps_android_3d_place_click_kt] // Position the camera to show the buildings (Empire State Building area) - map.flyCameraTo(flyToOptions { - endCamera = camera { - center = latLngAltitude { latitude = 40.7484; longitude = -73.9857; altitude = 0.0 } - tilt = 45.0 - heading = 0.0 - range = 500.0 - } - durationInMillis = 2000 - }) + map.flyCameraTo( + flyToOptions { + endCamera = camera { + center = latLngAltitude { + latitude = 40.7484 + longitude = -73.9857 + altitude = 0.0 + } + tilt = 45.0 + heading = 0.0 + range = 500.0 + } + durationInMillis = 2000 + }, + ) } } diff --git a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt index 111def79..68e80efb 100644 --- a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt +++ b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolygonSnippets.kt @@ -24,8 +24,8 @@ import android.widget.Toast import com.example.snippets.kotlin.TrackedMap3D import com.example.snippets.kotlin.annotations.SnippetGroup import com.example.snippets.kotlin.annotations.SnippetItem -import com.google.android.gms.maps3d.model.Hole import com.google.android.gms.maps3d.model.AltitudeMode +import com.google.android.gms.maps3d.model.Hole import com.google.android.gms.maps3d.model.camera import com.google.android.gms.maps3d.model.flyToOptions import com.google.android.gms.maps3d.model.latLngAltitude @@ -33,7 +33,7 @@ import com.google.android.gms.maps3d.model.polygonOptions @SnippetGroup( title = "Polygons", - description = "Snippets demonstrating 2D and 3D extruded polygon layers on the map." + description = "Snippets demonstrating 2D and 3D extruded polygon layers on the map.", ) class PolygonSnippets(private val context: Context, private val map: TrackedMap3D) { @@ -43,16 +43,36 @@ class PolygonSnippets(private val context: Context, private val map: TrackedMap3 @Suppress("unused") @SnippetItem( title = "1. Basic", - description = "Draws a red polygon with a blue stroke around a small area" + description = "Draws a red polygon with a blue stroke around a small area", ) fun addBasicPolygon() { // [START maps_android_3d_polygon_add_kt] val points = listOf( - latLngAltitude { latitude = 37.42; longitude = -122.08; altitude = 0.0 }, - latLngAltitude { latitude = 37.42; longitude = -122.09; altitude = 0.0 }, - latLngAltitude { latitude = 37.43; longitude = -122.09; altitude = 0.0 }, - latLngAltitude { latitude = 37.43; longitude = -122.08; altitude = 0.0 }, - latLngAltitude { latitude = 37.42; longitude = -122.08; altitude = 0.0 } + latLngAltitude { + latitude = 37.42 + longitude = -122.08 + altitude = 0.0 + }, + latLngAltitude { + latitude = 37.42 + longitude = -122.09 + altitude = 0.0 + }, + latLngAltitude { + latitude = 37.43 + longitude = -122.09 + altitude = 0.0 + }, + latLngAltitude { + latitude = 37.43 + longitude = -122.08 + altitude = 0.0 + }, + latLngAltitude { + latitude = 37.42 + longitude = -122.08 + altitude = 0.0 + }, ) val options = polygonOptions { @@ -62,7 +82,7 @@ class PolygonSnippets(private val context: Context, private val map: TrackedMap3 strokeWidth = 5.0 altitudeMode = AltitudeMode.CLAMP_TO_GROUND } - + val polygon = map.addPolygon(options) // [START_EXCLUDE] polygon?.setClickListener { @@ -73,19 +93,21 @@ class PolygonSnippets(private val context: Context, private val map: TrackedMap3 // [END_EXCLUDE] // [END maps_android_3d_polygon_add_kt] - map.flyCameraTo(flyToOptions { - endCamera = camera { - center = latLngAltitude { - latitude = 37.424968 - longitude = -122.084874 - altitude = 19.90 + map.flyCameraTo( + flyToOptions { + endCamera = camera { + center = latLngAltitude { + latitude = 37.424968 + longitude = -122.084874 + altitude = 19.90 + } + tilt = 45.02 + heading = 0.0 + range = 4643.0 } - tilt = 45.02 - heading = 0.0 - range = 4643.0 - } - durationInMillis = 1000 - }) + durationInMillis = 1000 + }, + ) } /** @@ -94,16 +116,36 @@ class PolygonSnippets(private val context: Context, private val map: TrackedMap3 @Suppress("unused") @SnippetItem( title = "2. Extruded", - description = "Draws a semi-transparent red extruded polygon (height 50m) around a small area" + description = "Draws a semi-transparent red extruded polygon (height 50m) around a small area", ) fun addExtrudedPolygon() { // [START maps_android_3d_polygon_extruded_kt] val points = listOf( - latLngAltitude { latitude = 37.42; longitude = -122.08; altitude = 50.0 }, - latLngAltitude { latitude = 37.42; longitude = -122.09; altitude = 50.0 }, - latLngAltitude { latitude = 37.43; longitude = -122.09; altitude = 50.0 }, - latLngAltitude { latitude = 37.43; longitude = -122.08; altitude = 50.0 }, - latLngAltitude { latitude = 37.42; longitude = -122.08; altitude = 50.0 } + latLngAltitude { + latitude = 37.42 + longitude = -122.08 + altitude = 50.0 + }, + latLngAltitude { + latitude = 37.42 + longitude = -122.09 + altitude = 50.0 + }, + latLngAltitude { + latitude = 37.43 + longitude = -122.09 + altitude = 50.0 + }, + latLngAltitude { + latitude = 37.43 + longitude = -122.08 + altitude = 50.0 + }, + latLngAltitude { + latitude = 37.42 + longitude = -122.08 + altitude = 50.0 + }, ) val options = polygonOptions { @@ -113,7 +155,7 @@ class PolygonSnippets(private val context: Context, private val map: TrackedMap3 geodesic = true altitudeMode = AltitudeMode.RELATIVE_TO_GROUND } - + val polygon = map.addPolygon(options) // [START_EXCLUDE] polygon?.setClickListener { @@ -124,19 +166,21 @@ class PolygonSnippets(private val context: Context, private val map: TrackedMap3 // [END_EXCLUDE] // [END maps_android_3d_polygon_extruded_kt] - map.flyCameraTo(flyToOptions { - endCamera = camera { - center = latLngAltitude { - latitude = 37.424968 - longitude = -122.084874 - altitude = 19.90 + map.flyCameraTo( + flyToOptions { + endCamera = camera { + center = latLngAltitude { + latitude = 37.424968 + longitude = -122.084874 + altitude = 19.90 + } + tilt = 45.02 + heading = 0.0 + range = 4643.0 } - tilt = 45.02 - heading = 0.0 - range = 4643.0 - } - durationInMillis = 1000 - }) + durationInMillis = 1000 + }, + ) } /** @@ -145,24 +189,64 @@ class PolygonSnippets(private val context: Context, private val map: TrackedMap3 @Suppress("unused") @SnippetItem( title = "3. Polygon with Hole", - description = "Draws a polygon with an interior hole cutout." + description = "Draws a polygon with an interior hole cutout.", ) fun addPolygonWithHole() { // [START maps_android_3d_polygon_hole_kt] val outerPoints = listOf( - latLngAltitude { latitude = 37.422; longitude = -122.084; altitude = 0.0 }, - latLngAltitude { latitude = 37.422; longitude = -122.086; altitude = 0.0 }, - latLngAltitude { latitude = 37.424; longitude = -122.086; altitude = 0.0 }, - latLngAltitude { latitude = 37.424; longitude = -122.084; altitude = 0.0 }, - latLngAltitude { latitude = 37.422; longitude = -122.084; altitude = 0.0 } + latLngAltitude { + latitude = 37.422 + longitude = -122.084 + altitude = 0.0 + }, + latLngAltitude { + latitude = 37.422 + longitude = -122.086 + altitude = 0.0 + }, + latLngAltitude { + latitude = 37.424 + longitude = -122.086 + altitude = 0.0 + }, + latLngAltitude { + latitude = 37.424 + longitude = -122.084 + altitude = 0.0 + }, + latLngAltitude { + latitude = 37.422 + longitude = -122.084 + altitude = 0.0 + }, ) val innerPoints = listOf( - latLngAltitude { latitude = 37.4225; longitude = -122.0845; altitude = 0.0 }, - latLngAltitude { latitude = 37.4225; longitude = -122.0855; altitude = 0.0 }, - latLngAltitude { latitude = 37.4235; longitude = -122.0855; altitude = 0.0 }, - latLngAltitude { latitude = 37.4235; longitude = -122.0845; altitude = 0.0 }, - latLngAltitude { latitude = 37.4225; longitude = -122.0845; altitude = 0.0 } + latLngAltitude { + latitude = 37.4225 + longitude = -122.0845 + altitude = 0.0 + }, + latLngAltitude { + latitude = 37.4225 + longitude = -122.0855 + altitude = 0.0 + }, + latLngAltitude { + latitude = 37.4235 + longitude = -122.0855 + altitude = 0.0 + }, + latLngAltitude { + latitude = 37.4235 + longitude = -122.0845 + altitude = 0.0 + }, + latLngAltitude { + latitude = 37.4225 + longitude = -122.0845 + altitude = 0.0 + }, ) val options = polygonOptions { @@ -183,12 +267,21 @@ class PolygonSnippets(private val context: Context, private val map: TrackedMap3 // [END_EXCLUDE] // [END maps_android_3d_polygon_hole_kt] - map.flyCameraTo(flyToOptions { - endCamera = camera { - center = latLngAltitude { latitude = 37.423600; longitude = -122.085098; altitude = 4.31 } - tilt = 45.00; heading = 0.00; range = 1085.51; roll = 0.00 - } - durationInMillis = 1000 - }) + map.flyCameraTo( + flyToOptions { + endCamera = camera { + center = latLngAltitude { + latitude = 37.423600 + longitude = -122.085098 + altitude = 4.31 + } + tilt = 45.00 + heading = 0.00 + range = 1085.51 + roll = 0.00 + } + durationInMillis = 1000 + }, + ) } } diff --git a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt index 7d99c504..61b31140 100644 --- a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt +++ b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PolylineSnippets.kt @@ -32,7 +32,7 @@ import com.google.android.gms.maps3d.model.polylineOptions @SnippetGroup( title = "Polylines", - description = "Snippets demonstrating 2D and 3D extruded polyline paths on the map." + description = "Snippets demonstrating 2D and 3D extruded polyline paths on the map.", ) class PolylineSnippets(private val context: Context, private val map: TrackedMap3D) { @@ -42,14 +42,26 @@ class PolylineSnippets(private val context: Context, private val map: TrackedMap @Suppress("unused") @SnippetItem( title = "1. Basic", - description = "Draws a thick red polyline connecting three points" + description = "Draws a thick red polyline connecting three points", ) fun addBasicPolyline() { // [START maps_android_3d_polyline_add_kt] val points = listOf( - latLngAltitude { latitude = 37.42; longitude = -122.08; altitude = 0.0 }, - latLngAltitude { latitude = 37.43; longitude = -122.09; altitude = 0.0 }, - latLngAltitude { latitude = 37.44; longitude = -122.08; altitude = 0.0 } + latLngAltitude { + latitude = 37.42 + longitude = -122.08 + altitude = 0.0 + }, + latLngAltitude { + latitude = 37.43 + longitude = -122.09 + altitude = 0.0 + }, + latLngAltitude { + latitude = 37.44 + longitude = -122.08 + altitude = 0.0 + }, ) val options = polylineOptions { @@ -58,7 +70,7 @@ class PolylineSnippets(private val context: Context, private val map: TrackedMap strokeWidth = 10.0 altitudeMode = AltitudeMode.CLAMP_TO_GROUND } - + val polyline = map.addPolyline(options) // [START_EXCLUDE] polyline?.setClickListener { @@ -69,19 +81,21 @@ class PolylineSnippets(private val context: Context, private val map: TrackedMap // [END_EXCLUDE] // [END maps_android_3d_polyline_add_kt] - map.flyCameraTo(flyToOptions { - endCamera = camera { - center = latLngAltitude { - latitude = 37.43 - longitude = -122.085 - altitude = 0.0 + map.flyCameraTo( + flyToOptions { + endCamera = camera { + center = latLngAltitude { + latitude = 37.43 + longitude = -122.085 + altitude = 0.0 + } + tilt = 45.0 + heading = 0.0 + range = 5000.0 } - tilt = 45.0 - heading = 0.0 - range = 5000.0 - } - durationInMillis = 1000 - }) + durationInMillis = 1000 + }, + ) } /** @@ -90,13 +104,21 @@ class PolylineSnippets(private val context: Context, private val map: TrackedMap @Suppress("unused") @SnippetItem( title = "2. Styled", - description = "Draws a magenta polyline with a green outline, extruded and following the ground curvature (geodesic), connecting two points." + description = "Draws a magenta polyline with a green outline, extruded and following the ground curvature (geodesic), connecting two points.", ) fun addStyledPolyline() { // [START maps_android_3d_polyline_options_kt] val points = listOf( - latLngAltitude { latitude = 37.42; longitude = -122.08; altitude = 50.0 }, - latLngAltitude { latitude = 37.43; longitude = -122.09; altitude = 100.0 } + latLngAltitude { + latitude = 37.42 + longitude = -122.08 + altitude = 50.0 + }, + latLngAltitude { + latitude = 37.43 + longitude = -122.09 + altitude = 100.0 + }, ) val options = polylineOptions { @@ -110,7 +132,7 @@ class PolylineSnippets(private val context: Context, private val map: TrackedMap geodesic = true drawsOccludedSegments = true } - + val polyline = map.addPolyline(options) // [START_EXCLUDE] polyline?.setClickListener { @@ -121,18 +143,20 @@ class PolylineSnippets(private val context: Context, private val map: TrackedMap // [END_EXCLUDE] // [END maps_android_3d_polyline_options_kt] - map.flyCameraTo(flyToOptions { - endCamera = camera { - center = latLngAltitude { - latitude = 37.425 - longitude = -122.085 - altitude = 0.0 + map.flyCameraTo( + flyToOptions { + endCamera = camera { + center = latLngAltitude { + latitude = 37.425 + longitude = -122.085 + altitude = 0.0 + } + tilt = 45.0 + heading = 0.0 + range = 4000.0 } - tilt = 45.0 - heading = 0.0 - range = 4000.0 - } - durationInMillis = 1000 - }) + durationInMillis = 1000 + }, + ) } } diff --git a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt index 43ea2ed7..2e8d598d 100644 --- a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt +++ b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/snippets/PopoverSnippets.kt @@ -32,7 +32,7 @@ import com.google.android.gms.maps3d.model.popoverOptions @SnippetGroup( title = "Popovers", - description = "Snippets demonstrating anchored and configured 3D Popover views." + description = "Snippets demonstrating anchored and configured 3D Popover views.", ) class PopoverSnippets(private val context: Context, private val map: TrackedMap3D) { @@ -42,13 +42,17 @@ class PopoverSnippets(private val context: Context, private val map: TrackedMap3 @Suppress("unused") @SnippetItem( title = "1. Marker Anchor", - description = "Adds a 'Hello Popover!' text bubble anchored to a marker" + description = "Adds a 'Hello Popover!' text bubble anchored to a marker", ) fun addPopoverToMarker() { // [START maps_android_3d_popover_add_kt] // Create a marker first val markerOptions = markerOptions { - position = latLngAltitude { latitude = 37.422; longitude = -122.084; altitude = 0.0 } + position = latLngAltitude { + latitude = 37.422 + longitude = -122.084 + altitude = 0.0 + } } val marker = map.addMarker(markerOptions) ?: return @@ -65,43 +69,53 @@ class PopoverSnippets(private val context: Context, private val map: TrackedMap3 positionAnchor = marker altitudeMode = AltitudeMode.RELATIVE_TO_GROUND } - + val popover = map.addPopover(options) - + // You can show/hide it popover?.show() // [END maps_android_3d_popover_add_kt] - map.flyCameraTo(flyToOptions { - endCamera = camera { - center = latLngAltitude { latitude = 37.422; longitude = -122.084; altitude = 0.0 } - tilt = 45.0 - heading = 0.0 - range = 2000.0 - } - durationInMillis = 1000 - }) + map.flyCameraTo( + flyToOptions { + endCamera = camera { + center = latLngAltitude { + latitude = 37.422 + longitude = -122.084 + altitude = 0.0 + } + tilt = 45.0 + heading = 0.0 + range = 2000.0 + } + durationInMillis = 1000 + }, + ) } - + /** * Adds a configured popover (auto-close enabled, auto-pan disabled). */ @Suppress("unused") @SnippetItem( title = "2. Configured", - description = "Adds an 'Info' popover anchored to a marker with auto-close enabled and auto-pan disabled." + description = "Adds an 'Info' popover anchored to a marker with auto-close enabled and auto-pan disabled.", ) fun addConfiguredPopover() { // [START maps_android_3d_popover_options_kt] // Create a marker at an interesting location (e.g., Golden Gate Bridge) val markerOptions = markerOptions { - position = latLngAltitude { latitude = 37.8199; longitude = -122.4783; altitude = 0.0 } + position = latLngAltitude { + latitude = 37.8199 + longitude = -122.4783 + altitude = 0.0 + } label = "Golden Gate Bridge" } val marker = map.addMarker(markerOptions) ?: return val textView = TextView(context).apply { - text = context.getString(com.example.snippets.common.R.string.popover_info) + text = context.getString(R.string.popover_info) setPadding(16, 16, 16, 16) setBackgroundColor(Color.WHITE) } @@ -117,14 +131,20 @@ class PopoverSnippets(private val context: Context, private val map: TrackedMap3 popover?.show() // [END maps_android_3d_popover_options_kt] - map.flyCameraTo(flyToOptions { - endCamera = camera { - center = latLngAltitude { latitude = 37.8199; longitude = -122.4783; altitude = 0.0 } - tilt = 45.0 - heading = 0.0 - range = 1000.0 - } - durationInMillis = 2000 - }) + map.flyCameraTo( + flyToOptions { + endCamera = camera { + center = latLngAltitude { + latitude = 37.8199 + longitude = -122.4783 + altitude = 0.0 + } + tilt = 45.0 + heading = 0.0 + range = 1000.0 + } + durationInMillis = 2000 + }, + ) } } diff --git a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/ui/theme/Theme.kt b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/ui/theme/Theme.kt index 0420e9aa..1bb09c89 100644 --- a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/ui/theme/Theme.kt +++ b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/ui/theme/Theme.kt @@ -20,27 +20,29 @@ import android.app.Activity import android.os.Build import androidx.compose.foundation.isSystemInDarkTheme import androidx.compose.material3.MaterialTheme +import androidx.compose.material3.Typography import androidx.compose.material3.darkColorScheme import androidx.compose.material3.dynamicDarkColorScheme import androidx.compose.material3.dynamicLightColorScheme import androidx.compose.material3.lightColorScheme import androidx.compose.runtime.Composable import androidx.compose.runtime.SideEffect +import androidx.compose.ui.graphics.Color import androidx.compose.ui.graphics.toArgb import androidx.compose.ui.platform.LocalContext import androidx.compose.ui.platform.LocalView import androidx.core.view.WindowCompat private val DarkColorScheme = darkColorScheme( - primary = androidx.compose.ui.graphics.Color(0xFFD0BCFF), - secondary = androidx.compose.ui.graphics.Color(0xFFCCC2DC), - tertiary = androidx.compose.ui.graphics.Color(0xFFEFB8C8) + primary = Color(0xFFD0BCFF), + secondary = Color(0xFFCCC2DC), + tertiary = Color(0xFFEFB8C8), ) private val LightColorScheme = lightColorScheme( - primary = androidx.compose.ui.graphics.Color(0xFF6650a4), - secondary = androidx.compose.ui.graphics.Color(0xFF625b71), - tertiary = androidx.compose.ui.graphics.Color(0xFF7D5260) + primary = Color(0xFF6650a4), + secondary = Color(0xFF625b71), + tertiary = Color(0xFF7D5260), ) @Composable @@ -48,7 +50,7 @@ fun SnippetsTheme( darkTheme: Boolean = isSystemInDarkTheme(), // Dynamic color is available on Android 12+ dynamicColor: Boolean = true, - content: @Composable () -> Unit + content: @Composable () -> Unit, ) { val colorScheme = when { dynamicColor && Build.VERSION.SDK_INT >= Build.VERSION_CODES.S -> { @@ -69,7 +71,7 @@ fun SnippetsTheme( MaterialTheme( colorScheme = colorScheme, - typography = androidx.compose.material3.Typography(), - content = content + typography = Typography(), + content = content, ) } diff --git a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/utils/MapExtensions.kt b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/utils/MapExtensions.kt index 491316a1..134fd79b 100644 --- a/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/utils/MapExtensions.kt +++ b/snippets/kotlin-app/src/main/java/com/example/snippets/kotlin/utils/MapExtensions.kt @@ -1,14 +1,14 @@ package com.example.snippets.kotlin.utils +import com.example.snippets.kotlin.TrackedMap3D import com.google.android.gms.maps3d.GoogleMap3D import kotlinx.coroutines.suspendCancellableCoroutine import kotlin.coroutines.resume -import com.example.snippets.kotlin.TrackedMap3D /** * **Coroutine Helper**: Awaiting Camera Animation. * Pauses execution until the camera stops moving (flyTo or flyAround). - * + * * @param action The block that triggers the animation, executed AFTER the listener is attached. */ suspend fun TrackedMap3D.awaitAnimation(action: () -> Unit) {