Suppose we have a plane of the form:
Ax + By + Cz + D = 0,
where the coefficients "A", "B", "C", and "D" are known values.
We also have a known point x
x = [x1 y1 z1 ]
How can I find the point s that is the reflection of point x on the given plane. By reflection I don’t mean mirroring. I mean that the plane works as a boundary condition and point s is on the same side with point x (with regard to the given plane) ?

2 commentaires

John D'Errico
John D'Errico le 10 Août 2019
Modifié(e) : John D'Errico le 10 Août 2019
Very confusing as a question. A "boundary condition" has no meaning out of context. You state that you have a plane, and a point, not in the plane.
There are at least two meanings I could give to what you are asking.
  1. Given a point and a plane, you can find a point that is reflected through the plane, on the opposite side of the plane. Thus equidistant from the plane, but on the opposite side. It seems from your comment that this is NOT what you desire though.
  2. You might be thinking of a moving object, proceeding in a straight line, so that when the object hits the plane, it reflects off the plane in a new direction. However, this seems to be not what you are asking either, because for that to make any remote sense at all, you need to have more information than just a point, but also a vector that describes the direction the object is moving.
So if you want an answer, you need to be clear about what you are doing.
I’m sorry for being confusing. I am referring to the second meaning. I have a moving particle that is moving in a random straight line. It hits the plane and it reflects off the plane in a new direction.

Connectez-vous pour commenter.

 Réponse acceptée

darova
darova le 10 Août 2019

0 votes

You have straight line ( vector), intersection point P, normal vector of a plane and you want to find vector
Find cross product of vectors and (axis of rotation)
Calculate angle between and
23Untitled.png
Use this rotation matrix to rotate your original vector about cross(,)
f259f80a746ee20d481f9b7f600031084358a27c

Plus de réponses (0)

Community Treasure Hunt

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

Start Hunting!

Translated by