▲ | danwills 4 days ago | |||||||
I think it can be done that way yeah but in order to yield a uniform-density of points on the surface of the sphere there's some pre-correction (maybe a sqrt or something? I can't remember) that's needed before feeding the 'uv' values to the trig functions to make 3D positions. Otherwise points will 'bunch up' and be more dense at the poles I think. | ||||||||
▲ | srean 4 days ago | parent | next [-] | |||||||
Indeed. One way to fix the problem is to sample uniformly not on the latitude x longitude rectangle but the sin (latitude) x longitude rectangle. The reason this works is because the area of a infinitesimal lat long patch on the sphere is dlong x lat x cosine (lat). Now, if we sample on the long x sin(lat) rectangle, an infinitesimal rectangle also has area dlong x dlat x d/dlat sin(lat) = dlong x dlat cos (lat). Unfortunately, these simple fixes do not generalize to arbitrary dimensions. For that those that exploit rotational symmetry of L2 norm works best. | ||||||||
▲ | egorfine 4 days ago | parent | prev | next [-] | |||||||
Generating two random 1..360 numbers and converting them to xyz would bunch up at the poles? | ||||||||
| ||||||||
▲ | egorfine 4 days ago | parent | prev [-] | |||||||
See @srean's explanation above. |