How to find closest point in plane to another point? Matlab solution

16 visualizaciones (últimos 30 días)
Sue Swenson
Sue Swenson el 2 de Mayo de 2021
Respondida: William Rose el 25 de Mayo de 2021
If I have a plane
x+y+z=0
and want to find the closest point in this plane to
p=(1,1,1)
How could I do this in matlab? I understand how to do this mathematically, but can't figure the syntax

Respuestas (1)

William Rose
William Rose el 25 de Mayo de 2021
A plane can be described by
This plane has normal vector .
Suppose is a given external point. Find the point in the plane which is closest to .
The equation which I derived to solve this problem is
We can implement the equation above in Matlab, recalling that prime denotes transpose in Matlab.
In your example, the plane is
x+y+z=0
and therefore and D=0. Also, in your example, the external point is .
The Matlab code to solve this is:
n=[1;1;1];
D=0;
p1=[1;1;1];
p0=p1-((n'*p1-D)/(n'*n))*n;
disp(p0)
0 0 0
Try it.

Categorías

Más información sobre Discrete Math en Help Center y File Exchange.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by