Parametric Sphere Projection: A Function for Projecting Points onto a Sphere

Click For Summary
SUMMARY

The discussion focuses on creating a function to project a point from a plane above a sphere onto the sphere's surface and then onto the x,y plane using the sphere's normal vector. The sphere is parametrically defined by the equation r(u,v)=(cos(u)sin(v),sin(u)sin(v),cos(v)) for 0≤u≤2π and 0≤v≤π. The user elevates the sphere by a value Z₀, resulting in the modified equation r(u,v)=(cos(u)sin(v),sin(u)sin(v),cos(v)+Z₀). The projection process involves determining the values of U and V from the x,y coordinates on the plane, ensuring the projection is accurate regardless of the z-coordinate.

PREREQUISITES
  • Understanding of parametric equations, specifically for spheres
  • Knowledge of vector mathematics and normal vectors
  • Familiarity with projection techniques in 3D geometry
  • Basic skills in mathematical modeling and transformations
NEXT STEPS
  • Research "3D vector projection techniques" for deeper insights
  • Explore "Parametric equations in 3D" to solidify understanding
  • Study "Normal vectors and their applications in geometry"
  • Learn about "Mathematical modeling of surfaces" for advanced applications
USEFUL FOR

Mathematicians, computer graphics developers, and anyone involved in 3D modeling or simulations who seeks to understand projection techniques onto spherical surfaces.

Lancelot59
Messages
640
Reaction score
1
I just want to make sure my thinking is correct with a problem I'm working on. I'm trying to write a function that will take a point on a plane above a sphere, and then project it onto that sphere. From there project the point onto the x,y plane by following the normal vector of the sphere

I have a sphere parametrically defined like so:
[tex]\vec{r}(u,v)=(cos(u)sin(v),sin(u)sin(v),cos(v))[/tex]
[tex]0\leq u \leq 2\pi[/tex]
[tex]0\leq v \leq \pi[/tex]

Now if I was so elevate this sphere by some arbitrary value z0, it should turn into this:
[tex]\vec{r}(u,v)=(cos(u)sin(v),sin(u)sin(v),cos(v)+Z_{0})[/tex]
Since the unit normal of a sphere is the same as the unit vector that defines the surface, I think this should work. Then from here I think I should just be able to scale up the vector until I reach the x,y plane. Of course my final solution will be different, as I won't be using a unit sphere to do the actual projection. I just wanted to make sure I had the right plan going.
 
Physics news on Phys.org
That's certainly the equation of the unit sphere moved up one alright. So this plane is going to project to the top half of the sphere than along the inward normal? Is the plane horizontal? Is the projection vertical? Not sure I understand exactly what you intend, but, yes, it seems like it should work.
 
LCKurtz said:
That's certainly the equation of the unit sphere moved up one alright. So this plane is going to project to the top half of the sphere than along the inward normal? Is the plane horizontal? Is the projection vertical? Not sure I understand exactly what you intend, but, yes, it seems like it should work.

The plane is above the sphere, and will project to the inside of the bottom half. From there I can derive the values of U and V from the X Y coordinates on the plane (it will have the same projection on the sphere regardless of z, as long as it's fully above it). Then I use the normal vector of the sphere, and project down to the x,y plane. I'm running the math now, I'll make a more detailed post when I've finished.
 

Similar threads

  • · Replies 9 ·
Replies
9
Views
2K
  • · Replies 3 ·
Replies
3
Views
3K
  • · Replies 6 ·
Replies
6
Views
2K
  • · Replies 1 ·
Replies
1
Views
3K
  • · Replies 39 ·
2
Replies
39
Views
5K
  • · Replies 15 ·
Replies
15
Views
3K
  • · Replies 8 ·
Replies
8
Views
1K
  • · Replies 2 ·
Replies
2
Views
2K
  • · Replies 3 ·
Replies
3
Views
4K
  • · Replies 16 ·
Replies
16
Views
2K