Borrar filtros
Borrar filtros

How to draw a Plane perpendicular to a line and then generate multiple planes at regular intervals

21 visualizaciones (últimos 30 días)
If I have a line defined by
P1 = [1, -1, 3];
P2 = [2, 3, 4];
How can I draw a plane perpendicular to this line please. I have read the previous posts on this but I m not clear how to draw the surface. Plane can be initially at the mid point of the line.
Then I want to be able to generate multiple planes at regular intervals .
Thanks

Respuesta aceptada

Arya Chandan Reddy
Arya Chandan Reddy el 29 de Jun. de 2023
Editada: Arya Chandan Reddy el 29 de Jun. de 2023
Hi, I understand that you are trying to generate a plane perpendicular to the line joining those two points. In 3d geometry any plane is defined by the equation ax + by + cz = d , where [a b c] is the direction of plane's normal ( which is perpendicular to the plane )
Hence, direction of normal is P2 - P1. [a b c]
And the dot product of normal and the mid point gives d.
surf helps us plot the planar surface and plot3 to plot 3-d line.
Here is the code
P1 = [1, -1, 3];
P2 = [2, 3, 4];
midpoint = (P1 + P2) / 2;
normal = P2 - P1;
% Create a grid of points for the plane
[X, Y] = meshgrid(-10:10, -10:10);
Z = (-normal(1) * X - normal(2) * Y + dot(normal, midpoint)) / normal(3);
% Plot the plane
figure;
hold on;
surf(X, Y, Z,'FaceAlpha', 0.5);
plot3([P1(1), P2(1)], [P1(2), P2(2)], [P1(3), P2(3)], 'r', 'LineWidth', 2);
hold off;
xlabel('X');
ylabel('Y');
zlabel('Z');
title('Plane Perpendicular to Line Joining Two Points');
grid on;
axis equal;
Refer the documentation for better understanding
Hope it helps.
  4 comentarios
Dyuman Joshi
Dyuman Joshi el 2 de Jul. de 2023
Why are you using the elements of P1 and P2 as indices for normal array while defining Z?
Mel A
Mel A el 4 de Jul. de 2023
Editada: Mel A el 4 de Jul. de 2023
Thanks, yes I get the point. I ve modified it, works fine

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Lighting, Transparency, and Shading 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