Get the Equation of a Plane from a Vertex and 2 Angles?

2k Views Asked by At

What is the simplest way to algebraically get the equation of a Plane (ax + by + cz = d), if you only have 1 point on the plane, and 2 angles (horizontal and vertical) which define the direction the Plane is facing?

If P is a 3D point, h is the horizontal angle, and v is the verticle angle:

P = (1, 5, 0)
h = 60°
v = 22°

This is what I am doing so far, It may be totally wrong or unnecessary (I really want the shortest/fastest way to get the result) but I think to get a Normal Vector I must cast out another point (Point C) in the direction of these angles, then subtract from Point P to get the direction the plane is facing:

Cx = Px + cos(h°) · cos(v°)
Cy = Py + sin(h°) · cos(v°)
Cz = Pz + sin(v°)

C = (1.93, 6.61, 0.75)

Then I would do C - P to get the Normal Vector?
Is that what the Normal Vector is? If I have that then I could solve for d.

EDIT: The point P is on the Plane (and acts similar to a fulcrum to the angles), the angles define which way the Plane is facing, with respect to the X axis. For Example, if both angles were 0, then the Plane would be facing the positive X axis, and the Normal Vector would go along parallel to the X axis. The angles offset it to face a different direction horizontally (yaw) or vertically (pitch)

2

There are 2 best solutions below

0
On BEST ANSWER

If I well understand your question, and using your notation, you have a vector $\vec v=(v_1,v_2,v_3)^T= (\cos v \cos h, \cos v \sin h, \sin v)$ parallel to the plane, where $v$ is the dihedral angle with the $xy$ plane, so also the vector $\vec v'=(-v_2,v_1,0)$ is parallel to the plane, since it is orthogonal to $\vec v$ and to his projection on the $xy$ plane. So the normal to the plane is $\vec n= \vec v \times \vec v'$.

0
On

I found out what I was doing wrong - when casting out the reference point, I was miscalculating. The correct way to get the equation of a Plane, when only given a (pivot) point P that lies on the Plane, and 2 angles to offset the direction the Plane faces:

Given:
P = (1, 5, 0)
h = 60°
v = 22°

To find the equation of a Plane, we need the Normal Vector (a 3D point in the direction the Plane is facing). The angles h and v are the angles the Plane is facing in respect to the axes of the coordinate system. In order to get the Normal Vector, we must "cast out" a reference point (Point C) in the direction of these angles so that the Line from P to C is the Normal Vector.
Point C will be exactly v° downward and h° sideways from Point P:

Cx = Px + cos(h°) · -cos(v°)
Cy = Py + sin(h°) · -cos(v°)
Cz = Pz + sin(v°)
C = (1.93, 6.61, 0.75)

The line that goes from Point P to point C is the Normal Vector (N) to the Plane:

N = C - P = (0.93, 1.61, 0.75)

Now we solve for d:

ax + by + cz = d
Nx·Px + Ny·Py + Nz·Pz = d
0.93 · 1 + 1.61 · 5 + 0.75 · 0 = 8.98

So, the equation for a Plane which holds Point P (1, 5, 0) that is facing 22° down and 60° to the right is:

0.93x + 1.61y + 0.75z = 8.98