Mapping a grid onto a sphere

Started by
2 comments, last by ph33r 17 years, 10 months ago
Hi everybody, i'll try to explain my problem at best, as i'm not a native english speaker. I'm currently implementing some sort of geomipmapping applied to a sphere. I've got the first parts working as you can see here: http://enemyterritory.ath.cx/temp/distortion.jpg (1) Please take a look closer at the upper patch. You can see that triangles near the borders are smallers than triangles in the middle of the patch. This is actually normal when you know how i'm proceeding: http://enemyterritory.ath.cx/temp/explication.jpg (2) - profil view I have 4 points that are on the sphere (at a random position, but forming a planar surface). I linear interpolate between those points and I project them onto a sphere (see (2)). This leads naturally to the distortion of triangles in (1). I've tried to search some mathematical formula which would tell me how much to interpolate between each point of my grid to obtain a regular distribution of the triangles onto the sphere. But after 3 days of search, it seems I failed miserably :P. My intuition indicate that this formula use one variable, which is the distance between the middle of my grid and the sphere projection of this point. I forgot to tell what I know: - coordinates (Vector) of each corner of the grid. - The sphere is centered at the origin - The sphere radius - The distance between the interpolated point (which is calculated) and the real point (a simple subtraction: SphereRadius - Length(InterpolatedPoint)) Any ideas are welcome... [Edited by - PERECil on June 1, 2006 4:41:31 AM]
Advertisement
I produce a triangular grid on a sphere:

... by starting from an icosahedral framework and interpolating triangles evenly on each of its (triangular) faces.
mathworld knows the answer, just replace the random numbers U and V with your normalized grid coordinates
My friend at work wrote a cool article on how to do it. Check it out here math blog

This topic is closed to new replies.

Advertisement