Define a plane knowing a point and the normal

This topic is 2553 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

Recommended Posts

I'm developing an opengl application and I have cast a ray from the camera to a point in 3D space. I would like to define a plane where such point lays, with the cast ray vector perpendicular to such plane.
Is it possible? If it's not clear I can make an image.

Share on other sites

I'm developing an opengl application and I have cast a ray from the camera to a point in 3D space. I would like to define a plane where such point lays, with the cast ray vector perpendicular to such plane.
Is it possible? If it's not clear I can make an image.

You should be able to define this plane if you know the tangent and the binormal, which can be derived from the normal.

We know that these vectors are both perpendicular to the normal. To find the tangent you will find two vectors perpendicular to the normal and pick one depending on whether the normal is positive or negative, the binormal will be the cross product of the tangent and the normal and at that point you should have enough information to define a plane, this will however be a massive burden on your CPU if you want to do this in real time so see if you can offload some calculations to the GPU using shaders or OpenCL.

Share on other sites

I'm developing an opengl application and I have cast a ray from the camera to a point in 3D space. I would like to define a plane where such point lays, with the cast ray vector perpendicular to such plane.
Is it possible? If it's not clear I can make an image.

could you get the cross product between your ray and the world up vector and then the cross product of that vector with the ray

ray X worldUpVec = U
ray X U = V

plane defined by the point in 3d space, U and V.

perhaps

Share on other sites
What do you mean by define a plane? The above two comments are in regards to geometrically computing 4 points for an actual plane you can draw. The definition of a plane though is a point and normal. You have a point and normal, you have a plane equation.

Share on other sites
Thanks Adam, any chance to have a C++ example about calculating a plane from a normal vector and a point?

Share on other sites
A plane isdefined like P: n*x - d = 0

Given a point on the plane and a plane normal the plane can be defined as: n*x - n*p= 0
(Note that bold letter indicate vectors and * is the dot product)

1. 1
2. 2
3. 3
Rutin
21
4. 4
5. 5
khawk
14

• 9
• 11
• 11
• 23
• 10
• Forum Statistics

• Total Topics
633653
• Total Posts
3013151
×