googlemaps / android-maps-utils

Maps SDK for Android Utility Library
https://developers.google.com/maps/documentation/android-sdk/utility
Apache License 2.0
3.55k stars 1.53k forks source link

Kml Style width for LineString is not rendered in pixels #1401

Open AiswaryaS opened 2 weeks ago

AiswaryaS commented 2 weeks ago

Summary

Kml Style width for LineString is not rendered in pixels

Expected behavior

The KML style width in float needs to be converted to pixels while rendering map.

Observed behavior

The KML style width is very thin on the map and there is a difference between 10dp width line and 10.0 as strokline width. The rendering of the same KML file line strings on google maps on Android is different from the thickness of the line strings on iOS.We also observed that the kml file without width element appears too thick on Android and very thin on iOS.

Environment details

  1. All android versions and all device model
  2. Google maps utility version "com.google.maps.android:android-maps-utils:3.8.2")

Steps to reproduce

Render any kml that has this style element and apply to line strings:

Code example

val kmlLayer = KmlLayer( googleMap, replaceWidthValue(ByteArrayInputStream(kmlByteArray)), this ) kmlLayer?.addLayerToMap()

I am unable to override the style using this kmlLayer object as the KmlStyle is not exposed. Please help to fix this as the rendering is not uniform on iOS and Android. Kindly provide us with as solution or workaround quickly if possible.

Thanks, Aiswarya