MathOverflow is a question and answer site for professional mathematicians. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

Given a 2-dimensional array of MxN heights, how to transform it to a sphere? Every element of this array is just a 3D point (x,y,z) where z represents some height. One has to transform this array into a sphere, twisting it around the origin so, that only minimal distortions will happen.

Representing it by spherical coordinates is not very good, because of the severe distortions. It's probably better if there is no direct one-to-one mapping from 2D plane to a surface of 3D sphere - many plane's points will not be involved. But what is the best possible mapping and how to transform involved points (elements of array)?

This is for a 3D-planet terrain simulation. First, fractal landscape is produced, then, it is to be transformed to 3D sphere.

Thanks in advance!

SOLUTION: Map projection

share|cite|improve this question

closed as off-topic by Ricardo Andrade, Jack Huizenga, Lucia, David White, Andrey Rekalo Dec 1 '13 at 7:14

This question appears to be off-topic. The users who voted to close gave this specific reason:

  • "This question does not appear to be about research level mathematics within the scope defined in the help center." – Ricardo Andrade, Lucia, David White, Andrey Rekalo
If this question can be reworded to fit the rules in the help center, please edit the question.

"Given a 2-dimensional array of MxN heights, how to transform it to a sphere?" I have no idea what this is supposed to mean. -1. – HJRW Dec 28 '09 at 17:25
There is no single "best possible" mapping but there is a long history of people trying to find mappings that are best with respect to sime criterion. You should start here: – Dan Piponi Dec 28 '09 at 17:42
up vote 3 down vote accepted

I may be misunderstanding your question but if you are asking how to take a data set of points in R^3 and convert them to a surface of a sphere then you can use the transformations given on wikipedia by associating latitude and longitude to your plane. I wrote code to do this myself for the math modeling competition a couple years ago.

Sorrry for the limited scope of this answer and the lack of hyperlinks I am updating from the iPhone and that makes it a little bit annoying.

share|cite|improve this answer
Hi B. Bischof, I need to map 3D points on a unit Gauss sphere. As you mentioned that you already wrote a code for that, can you please help me? – user34757 Jun 7 '13 at 14:33

Not the answer you're looking for? Browse other questions tagged or ask your own question.