func (index *ClusteringIndex) Range(topLeft Point, bottomRight Point) []Point {
	dist := distance(topLeft, bottomRight)

	if dist < streetLevel {
		return index.streetLevel.Range(topLeft, bottomRight)
	} else if dist < cityLevel {
		return index.cityLevel.Range(topLeft, bottomRight)
	} else {
		return index.worldLevel.Range(topLeft, bottomRight)
	}
}
func (index *ClusteringIndex) Range(topLeft Point, bottomRight Point) []Point {
	dist := distance(topLeft, bottomRight)

	if dist < streetLevel {
		return index.streetLevel.Range(topLeft, bottomRight)
	} else if dist < cityLevel {
		return index.cityLevel.Range(topLeft, bottomRight)
	} else {
		return index.worldLevel.Range(topLeft, bottomRight)
	}
}
func ( index * ClusteringIndex ) Range ( topLeft Point , bottomRight Point ) [ ] Point { dist := distance ( topLeft , bottomRight ) if dist < streetLevel { return index . streetLevel . Range ( topLeft , bottomRight ) } else if dist < cityLevel { return index . cityLevel . Range ( topLeft , bottomRight ) } else { return index . worldLevel . Range ( topLeft , bottomRight ) } }
// Range returns points or count points depending on the size of the topLeft and bottomRight range.
Range returns points or count points depending on the size of the topLeft and bottomRight range .