How to tile a sphere with points at an even density?

I'm writing a bit of code to plot twitter usage across the globe. To do this, I'm searching for users within n km of a certain longitude/latitude (a circular area), at many different lat/lon coordinates. The fact that this is lat/lon coordinates is irrelevant, since this portion is done in cartesian coordinates.

I need to tile the earth (a sphere in this model) with m points, which will serve as the centre of a search radius. The location of each point (x y z) is subject to the constraint that it cannot be within m km of any other point (x' y' z'), so that the search radii do not overlap. Any thoughts? It seems like the kind of problem that has a perfect solution.


Solution 1:

The problem of distributing points on a sphere (as opposed to a circle) does not have a neat solution. There is a lot of information online, but you'll have to see for yourself what you can use. (There is also a common confusion between uniform random distribution and evenly-spaced distribution, which are very different things).

  • Spherical codes
  • Tammes problem
  • Thomson problem
  • nice pictures
  • some code