How to define for which plane lies a given point with coordinates?
9 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Aknur
le 4 Avr 2023
Commenté : Bjorn Gustavsson
le 6 Avr 2023
Hello!
Kindly ask about how to find in which plane lies point A(x, y, z), example A(1.5, 1.5, 3.0)
and I have planes
planes(:,:,1) = [0 3 3; 0 0 3; 0 3 0; 0 0 0];
planes(:,:,2) = [0 0 3; 3 0 3; 0 0 0; 3 0 0];
planes(:,:,3) = [3 0 3; 3 3 3; 3 0 0; 3 3 0];
planes(:,:,4) = [3 3 3; 0 3 3; 3 3 0; 0 3 0];
planes(:,:,5) = [0 3 0; 3 3 0; 0 0 0; 3 0 0];
planes(:,:,6) = [0 3 3; 3 3 3; 0 0 3; 3 0 3];
location_plane = 6;
0 commentaires
Réponse acceptée
Bjorn Gustavsson
le 4 Avr 2023
This is easiest to do with a vector-algebra approach. Something like this:
1, the plane can be described as all points such that , where is the normal to the plane and l is a scalar.
2, to use this, first use 3 of your 4 points to calculate the surface normal, (create 2 vectors that are not parallel, cross-multiply them and normalize that vector).
3, use the formula above with that normal-vector and all 4 points - to check that you get the same l for all four points.
4, test if also is identical to l
5, start over at point 1 with the next four points.
HTH
12 commentaires
Bjorn Gustavsson
le 6 Avr 2023
You have to make the same check with your point A. If you get the same l for as for one plane then A lies on that plane, if you get the same l for multiple planes then A lies in all those planes.
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Annotations dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!