Jump to content
  • Advertisement
Sign in to follow this  
GameLad

How to calculate an orthogonal plane from a vector

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

If you intended to correct an error in the post then please contact us.

Recommended Posts


I have a position in space called X1. X1 has a velocity called V1. I need to construct an orthogonal plane perpendicular to the velocity vector. The origin of the plane is X1.

I need to turn the two edges from the plane into two vectors, E1 and E2. The edges connect at the origin. So the three vectors form an axis

Share this post


Link to post
Share on other sites
Advertisement
Pick a vector W that is not aligned with V1. Now compute
E1 = cross_product(V1, W)
E2 = cross_product(V1, E1)

Voilà.

 

So the three vectors form an axis


That didn't make any sense. Edited by �lvaro

Share this post


Link to post
Share on other sites
Voilà.

French spotted ! 

That didn't make any sense.

It's understandable, it's basically 3d coordinate system but he simplified by "axis".

Edited by Alundra

Share this post


Link to post
Share on other sites

I have a position in space called X1. X1 has a velocity called V1. I need to construct an orthogonal plane perpendicular to the velocity vector. The origin of the plane is X1.

I need to turn the two edges from the plane into two vectors, E1 and E2. The edges connect at the origin. So the three vectors form an axis

The equation of plane is:

Ax + By + Cx + D = 0

vector n(A, B, C) is a vector orthogonal to the plane. If you want to construct a plane orthogonal to V1, the equation of the plane would be:

V1.x * x + V1.y * y + V1.z * z + D = 0

If this plane must contain X1 then you can find out D. Replacing x, y and z by X1 vector components you have:

V1.x * X1.x + V1.y * X1.y + V1.z * X1.z + D = 0

D = -(V1.x * X1.x + V1.y * X1.y + V1.z * X1.z)

or

D = -dot(V1, X1)

where dot is scalar product.

Edited by jlluengo

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

Participate in the game development conversation and more when you create an account on GameDev.net!

Sign me up!