# Create a plane equation from a point and a line (not normal) [closed]

I have to decide the plane equation in normal form, that goes through the point (3.08,1,4.76) and the line (4.08,3.08,5.76)+ t( 3,6,-3).

I have no idea how to do it. I google it and found some information with three points, or one point and the normal.

I tried this:

d = Point[{3.08, 1, 4.76}]
Line[{4.08, 3.08, 5.76} + t  {3, 6, -3}]
d := 3.08, 1, 4.76};
e := {4.08, 3.08, 5.76};
u := e - d;
v := {3, 6, -3};
n := u\[Cross]v;


(the last part, I copied from someone else, but it did not work)

EDIT: My equation has to be in the form:

x+By+Cz+D=0

.. so I also need to divide everything by A (preferably automatically :)

• I think the key is to find the plane's normal vector. – Αλέξανδρος Ζεγγ May 9 '18 at 8:39
• After your code (except for the missing parenthesis in the 3rd line) just evaluate ⁣ ⁣ ⁣ ⁣ ⁣ ⁣ ⁣ ⁣ ⁣ ⁣ ⁣ ⁣ ⁣ ⁣ ⁣ ⁣ ⁣ ⁣ ⁣ ⁣ ⁣ ⁣ ⁣ ⁣ ⁣ ⁣ ⁣ ⁣ ⁣ ⁣ ⁣ ⁣ ⁣ ⁣ ⁣ ⁣⁣ ⁣ ⁣ ⁣ ⁣ ⁣ ⁣ ⁣ ⁣ ⁣ ⁣ ⁣ ⁣({x, y, z} - d).n/n[[1]] == 0 // ExpandAll – Coolwater May 9 '18 at 15:04
• aside to the question, none of those assignments should be delayed. Use plain = when the entire right hand side is known and not subject to later change – george2079 May 9 '18 at 15:21

Perhaps the great (!?) thing about recent advances in Mathematica is that you can solve such problems without having hardly to worry about the mathematics at all. Just Join the given point to two points on the given line, and use RegionMember on the InfinitePlane containing the three points generated:

RegionMember[
InfinitePlane[{{3.08, 1, 4.76}} ~Join~
Table[{4.08, 3.08, 5.76} + t {3, 6, -3}, {t, 2}]]][{x, y, z}]
(*
(x | y | z) ∈ Reals &&
0.897782 (-3.08 + x) - 0.440089 (-1 + y) + 0.0176036 (-4.76 + z) == 0
*)

• Thanks for your message! I don't think THAT great either, since I have no clue about what's going on. Why do you have {t, 2} between curly brackets for example? What did you do in the end with (x | y | z) ∈ Reals && ? And since my equation does not has any A, how do I divide automatically the whole equation with A? That would be a great thing to know! – Dovendyr May 10 '18 at 3:46
• @Dovendyr DivideSides[eqn, A. – Michael E2 May 10 '18 at 11:09
P = {x0, y0, z0};
A = {x1, y1, z1};
V = {v1, v2, v3};
n = Cross[P - A, V]


Update 1

The value returned (n) is a normal vector of the intended plane. Given the normal vector $\hat{n}=(n_1, n_2, n_3)$, the equation of the plane should be

$n_1(x-x_0)+n_2(y-y_0)+n_3(z-z_0)=0$

Update 2

Well, the plane equation (of $(x, y, z)$) is

S = {x, y, z};
eq = Dot[n, S - P] == 0


Update 3

The above eq is in the form of $a x + b y + c z + d = 0$. And the constant term (interception?) $d$ can be obtained via

d = First[CoefficientArrays[eq, {x, y, z}]]


In this case it is

-v3 x1 y0 + v3 x0 y1 + v2 x1 z0 - v1 y1 z0 - v2 x0 z1 + v1 y0 z1


and happens to be the determinant of the matrix consisting of P,A, and V:

Det[{P, A, V}]

• Thank you: I tried P = {3.08, 1, 4.76}; A = {4.08, 3.08, 5.76}; V = {3, 6, -3}; Cross[P - A, V] // Simplify It gives me : {12.24, -6., 0.24} Is it the equation I am after? Where is the ''D'' value in that case? – Dovendyr May 9 '18 at 9:12
• So you mean I need to calculate the D value by hand with help of the usual formula? – Dovendyr May 9 '18 at 9:39
• Hello, Sorry I missed your update. (how do you make spaces in your comments btw?) I tried what you wrote and got the reply: 12.24 (-3.08 + x) - 6. (-1 + y) + 0.24000000000000055 (-4.76 + z) == 0 In my exercise, they want the plane equation in the form of x+By+Cz+D=0 So I tried to call the former plane equation P1, and devided it by 12.24. But I get: P1 = [12.24 (-3.08 + x) - 6. (-1 + y) + 0.24000000000000055 (-4.76 + z) == 0] P1/12.24 0.0816993 P1 – Dovendyr May 9 '18 at 11:58
• Hello again, can I please have some clarification, I still cannot solve it... – Dovendyr May 9 '18 at 13:46
• Hi! I'm sorry, I don't understand what v1, v2 and v3 are for, and how the normal is linked to the determinant. – Dovendyr May 10 '18 at 3:42

Thank you to everyone. The last line that @Coolwater named worked fine after I fixed the missing parenthesis, so I will go for it (until test on Monday, then I will explore how it works!)

I don't understand what happens in the last line though!

({x, y, z} - d).n/n[[1]] == 0 // ExpandAll


I looked for expand all, so this part I get, but not what happens before and why we need to do that?

Edit: I also wish of course to understand why

InfinitePlane[{{3.08, 1, 4.76}}~Join~
Table[{4.08, 3.08, 5.76} + t {3, 6, -3}, {t, 2}]]][{x, y, z}];


there is {t, 2} in that part, and why comes x,y,z in a box at the end.