Scale a Point onto Plane

391 Views Asked by At

I'm trying to find the scale factor that scale a point onto plane in 3D Space. I have the following information:

  1. Point on a plane: $a = (x_1,y_1,z_1)$
  2. Plane equation: $P\colon Ax + By + Cz +D =0$; therefore, the normal of the plane must be $n=(A,B,C)$.
  3. Point in 3D space $b = (x_2,y_2,z_2)$.

How we can find a scale factor $s$ that maps the point $b$ to the plane $P$?

Thanks for the Help!

2

There are 2 best solutions below

0
On BEST ANSWER

Assuming you are given the point $a$ and normal vector $n$, you get $D$ from the plane equation immediatly. Now for the scaled point $sb=(sx_2, sy_2, sz_2)$ to be on the plane $P$ we need $$ Asx_2+Bsy_2+Csz_2+D=0 $$ which is equivalent to $$ s(Ax_2+By_2+Cz_2)=-D. $$ If $Ax_2+By_2+Cz_2\neq 0$, this has a unique solution.

In the case $Ax_2+By_2+Cz_2= 0$ we have $2$ possibilities:

  1. If $D\neq 0$ there is no solution to your problem, since $b$ is parallel to the plane but not on it.
  2. If $D=0$ the plane goes through the origin and $b$ is already on it, so every $sb$ will be on the plane as well.
1
On

You won't need the point $a$ for this since you have the plane equation. To find the scale factor, look at the line through the origin defined by the vector Pi, $L=s[x_2,y_2,z_2]=[sx_2,sy_2,sz_2]$. You know the equation of the plane, so substitute the coordinates for this line into the plane equation, and see which value of $s$ you need to satisfy the equation.

$Asx_2+Bsy_2+Csz_2+D=0$. You can solve this for $s$, as it is the only variable.