Add RasterLayer, TileServer-based HeatmapOverlay across providers#87
Merged
Add RasterLayer, TileServer-based HeatmapOverlay across providers#87
Conversation
Merged
wf9a5m75
added a commit
that referenced
this pull request
Mar 4, 2026
* add auto-translation script using OpenAI API * commonalize code blocks * Componentize all code blocks across all JA documentations * prevent crashes * wip: fixing the documents * wip: fixing the documents * wip: fixing the documents * wip: fixing the documents * wip: fixing the documents * wip: fixing the documents * wip: fixing the documents * wip: fixing the documents * wip: fixing the documents * Implement the sdkInitialize callback property for ArcGISMapView * sample: sdkInitialize for ArcGISMapView * update: ArcGISMapViewHoler pages * import ArcGISOAuthHybridInitialize * fix: build error of the example-app * add the marker animation sections * creating event page * fix: altitudeToZoomLevel is incorrect * remove okhttp dependencies * remove event/onMapLoaded * wip * fix: GeoPoint * fix: Align the class name with others: "MapLibreDesignType" * add: some predefined map designs * feat: Polyline and Polygon components accepts GeoRectBounds * fix: Align the class name with others: "MapLibreDesignType" * fix: GeoRectBounds.union generates a new bounds * add: some predefined map designs * update UnionBoundsExample * fix: new map tile designs for MapLibre cause a crash * fix: the title in the sidebar becomes under the camera position * refactor: move overlay event callbacks to state objects * feat: MapCameraPosition accepts GeoPoint object for the position parameter * fix: changing marker.position does not work * update examples * fix: linter errors * feat: MarkerRenderingStrategy is renamed to MarkerRenderingGroup, and provides it as Composable function * Feature: Introducing MarkerClusterGroup (#86) * wip: marker clustering * wip: marker clustering * wip: marker clustering * feat: draw the circle for a clustered icon in order to represent approximately radius * Remove debug log code * Introduce MarkerClusterGroup for ArcGIS, Here, Mapbox, and MapLibre * Add MarkerCluster Example * fix: Linter errors * Add RasterLayer, TileServer-based HeatmapOverlay across providers (#87) * feat: introduce RasterLayer component * feat: introduce TileServer and HeatmapOverlay * feat: introduce TileServer and HeatmapOverlay * add ARCHITECTURE.md * fix: typo "durationMills" to "durationMillis" * fix: onGroundImageClick is not used * rename: DefaultIcon is renamed to DefaultMarkerIcon * refact: xxxImpl(実装) と xxx(インタフェース)を、xxx(実装)と xxxInterface(インタフェース)に変更 * split the core module into two modules: "core(jetpack runtime)" and "core-domain(pure logic)" * fix: ktLint errors * Get rid of the MarkerRenderingGroup and MarkerClusterGroup from each SDK module. They should be in the mapconductor-maker-clustering module only. * Add marker clustering demo * refactor: some spherical functions were moved into each separate file * feat: implement enableZoomAnimation for MarkerClusterGroup * remove old cluster marker after marker animation is done * remove old cluster marker after marker animation is done * optimize marker clustering performance on panning the map * optimize marker animation for marker clustering * optimize marker animation for marker clustering * Provide TileServer feature by default instead of isolated module * Put back the mapconductor-core-domain into the mapconductor-core module. * rename "bitmap" to "image" * remove unused code * fix: Can not load OSM raster tile * fix: Can not load OSM raster tile * introduce ChildCollector * fix: heatmap tile drawing issue * implement GroundImage for MapLibre * implement GroundImage for Mapbox * wip: heatmap optimization * wip: heatmap optimization * ignore .gradle-user-home * implement GroundImage for Here * feat: implement GroundImage for ArcGIS * V1.1.3 sync ios (#88) * remove from request url for tile server. * ZoomAltitudeConverter considers latitude and tilt distance = zoom0Altitude * cos(lat) / 2^zoom altitude = distance * cos(tilt) lat/tilt clamp + minCosLat/minCosTilt * googlemaps: adaptive geodesic interpolation (zoom-based segment length) + LRU cache for polyline/polygon * fix: InfoBubble ignores click event * adjust circle radius * fix: initial camera position is ignored on Here SDK sometimes * - fix(arcgis): correct zoom conversion (remove -1.0 bias) - fix(arcgis): prevent disposed controller from overwriting camera on rapid provider switching - fix(arcgis): restore requested camera when viewpoint is reset after scene/basemap updates * Use DefaultMapViewItems for GroundImageMapPage.kt * Replace Japanese labels with in English * improve: GroundImage on ArcGIS * insert debounce to improve redraw performance. * Android(core): tileserver: add cacheKey path segment to LocalTileServer URL templates * Android(MapLibre/Mapbox/HERE/ArcGIS GroundImage): groundimage: switch tile URL cache busting from query to cacheKey path * implement marker tile layer for GoogleMaps * improve performance and clickable * improve marker rendering layer performance * fix: marker click may causes crash * introduce markerState.autoScalable * keep the original scale when markerState.autoScalable=true * drawing markers with collect size * fix: missing tile when change zoom levels quickly * wip: tile missing problem * re-implement MarkerTileLayer using RasterLayer * MarkerTileLayer works fine on GoogleMaps * introduce MarkerTileLayer for HERE * introduce MarkerTileLayer for MapLibre * introduce MarkerTileLayer * introduce MarkerTileLayer for MapBox * introduce MarkerTileLayer for Google Maps * wip: update the index page * introduce MarkerTileLayer for ArcGIS * fix: zoom level between mapbox and arcgis is incorrect * align zoom levels for all maps SDKs * update the JA top page * - refactor: decouple clustering support via map service registry - refactor(core): add MapServiceRegistry and move MarkerRenderingSupport to core - refactor(marker-clustering): resolve rendering support from LocalMapServiceRegistry - refactor(for-*): register MarkerRenderingSupport plugin; drop controller inheritance - chore(build): remove marker-clustering dependency from for-* modules * (getting better): MarkerTileLayer is unstable * fix: vertical flipped drawing * wip: simplify MarkerRasterLayer * improve marker cluster algorithm * - fix: MarkerTileRendering renders incorrect tiles - Removed: MarkerStrategy and MarkerNativeStrategy modules are removed * fix: marker tiling ignore the anchor and the scale properties * fix: build errors * introduce MarkerTileRendering * fix: ArcGIS camera bearing calculation is incorrect * No longer necessary homography * feat: introduce the hole property for Polygon * feat: introduce the hole property for Polygon * feat: introduce the hole property for Polygon * feat: introduce the hole property for Polygon * refact: align the zoom levels * feat: add zIndex property to map overlays and improve camera callbacks - Add zIndex property to Marker, Circle, Polyline, and RasterLayer for controlling overlay draw order across all map SDKs - Improve camera move callbacks with debouncing for ArcGIS and HERE to support camera sync scenarios - Add tile server warmup functionality to reduce raster layer latency - Fix HERE URL template handling for templates with query parameters - Remove unused imports and fix code formatting * Remove unnecessary file * fix: Marker click detection does not work when markerState.icon is null * code cleanup * Adjust the ArcGIZ Optimized zoom0 value * Adjusting the ArcGIZ zoom levels
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
RasterLayer example
Heatmap example
heatmap-example.webm