ZCluster<T extends Clusterable> constructor
ZCluster<T extends Clusterable> ({})
Implementation
ZCluster({
required this.minZoom,
required this.maxZoom,
required this.radius,
required this.extent,
required this.nodeSize,
points,
createCluster,
}) : _points = points,
_trees = List.filled(maxZoom + 2, null),
_createCluster = createCluster {
var clusters = <BaseCluster>[];
for (var i = 0; i < _points.length; i++) {
if (_points[i].latitude == null || _points[i].longitude == null) {
continue;
}
clusters.add(_createPointCluster(_points[i], i));
}
_trees[maxZoom + 1] = KDBush(
points: clusters,
nodeSize: nodeSize,
);
for (var z = maxZoom; z >= minZoom; z--) {
clusters = _buildClusters(clusters, z);
_trees[z] = KDBush(points: clusters, nodeSize: nodeSize);
}
}