答案 0 :(得分:3)
半径:应用于热图的高斯模糊的大小, 用像素表示。默认值为20.必须介于10和50之间。使用 Builder的半径()设置创建热图时的值,或者 稍后使用setRadius()更改值。
因此,如果您使用radius(int val)
中的HeatmapTileProvider.Builder
函数,如果半径不在10到50之间,您将收到IllegalArgumentException("Radius not within bounds.")
例外。
看一下the GitHub repository,您可以看到radius(int val)
函数检查参数是否在MIN_RADIUS
和MAX_RADIUS
之间。
无论如何,您可以使用setRadius(int radius)
类上的HeatmapTileProvider
函数(请参阅the GitHub repository中的实现)。
因此,由于setRadius(int radius)
函数不检查参数,您可以在调用HeatmapTileProvider
之后更改build()
的半径,如下所示:
HeatmapTileProvider mProvider = new HeatmapTileProvider.Builder()
.data(list)
.build();
mProvider.setRadius(100);
使用警察局示例,并将半径设置为50:
将半径设置为100:
您可能希望根据缩放级别动态更改HeatMap的半径。
注意:请考虑一下,如setRadius
函数的Javadoc中所述:
用户应该在之后清除叠加层的缓存(使用
clearTileCache()
) 叫这个。