WebGL maps support hardware-accelerated density maps, often called heat maps. A density map counts overlapping features on each pixel and colors the pixels according to the amount of overlap.
 
                     
                  You can use heat maps for any data:
- 
                        
                        Icons, lines, and areas 
- 
                        
                        Dynamic data and static data 
You enable it using the density property on any FeaturePainter.
                     You have to pass a ColorMap that maps the amount of overlapping features to colors.
                  
const painter = new FeaturePainter();
// painter.paintBody = ... // customize painter as usual
painter.density = {
  //Use the factory method from the ColorMap module to create a gradient color map
  colorMap: createGradientColorMap([
    {level: 0, color: "rgba(  0,   0,   0, 0.0)"}, //        no objects -> Transparent
    {level: 1, color: "rgba(  0, 255,   0, 0.5)"}, //  1 opaque object  -> Transparent blue
    {level: 10, color: "rgba(255, 255, 255, 1.0)"}  // 10 opaque objects -> White
  ])
};Note that when you are using density painting, the regular color of features isn’t relevant. The alpha transparency value indicates the weight of the feature as a value between 0 and 1.
If you want to use density for icons, don’t specify an icon image.
                     Instead, LuciadRIA automatically uses a gradient icon. You can re-size it using the IconStyle width and height properties.
                  
See the API documentation of FeaturePainter.density for more details, and see the Tracks sample for an example.