Implementation of jamFactor in HSDK
What is jamFactor ?
The jamFactor is a numeric value representing traffic conditions on a scale from 0 to 10.
0 <= jamFactor < 4: No or light traffic.
4 <= jamFactor < 8: Moderate or slow traffic.
8 <= jamFactor < 10: Severe traffic.
jamFactor = 10: No traffic, ie. the road is blocked.
* Returns null in case of no or light traffic.
How we can implement jamFactor in HSDK?<br />private void addTrafficPolylines(double jamFactor, GeoPolyline geoPolyline) { Color lineColor = getTrafficColor(jamFactor); if (lineColor == null) { // We skip rendering low traffic. return; } float widthInPixels = 10; MapPolyline trafficSpanMapPolyline = null; try { trafficSpanMapPolyline = new MapPolyline(geoPolyline, new MapPolyline.SolidRepresentation( new MapMeasureDependentRenderSize(RenderSize.Unit.PIXELS, widthInPixels), lineColor, LineCap.ROUND)); } catch (MapPolyline.Representation.InstantiationException e) { Log.e("MapPolyline Representation Exception:", e.error.name()); } catch (MapMeasureDependentRenderSize.InstantiationException e) { Log.e("MapMeasureDependentRenderSize Exception:", e.error.name()); } mapView.getMapScene().addMapPolyline(trafficSpanMapPolyline); mapPolylines.add(trafficSpanMapPolyline);}// Define a traffic color scheme based on the traffic jam factor.// 0 <= jamFactor < 4: No or light traffic.// 4 <= jamFactor < 8: Moderate or slow traffic.// 8 <= jamFactor < 10: Severe traffic.// jamFactor = 10: No traffic, ie. the road is blocked.// Returns null in case of no or light traffic.@Nullableprivate Color getTrafficColor(Double jamFactor) { if (jamFactor == null || jamFactor < 4) { return null; } else if (jamFactor >= 4 && jamFactor < 8) { return Color.valueOf(1, 1, 0, 0.63f); // Yellow } else if (jamFactor >= 8 && jamFactor < 10) { return Color.valueOf(1, 0, 0, 0.63f); // Red } return Color.valueOf(0, 0, 0, 0.63f); // Black}<br />