# Which side of a plane is a vector

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

## Recommended Posts

I have the following function to return on which side of the plane given by vectors X and Y a vector a is (side "true" or side "false")
bool sideOfPlane(Vector3 a, Vector3 X, Vector3 Y)
{
Vector3 Z = cross(X, Y);
Scalar aproj = dot(a, Z);
if(aproj < 0) return false; else return true;
}
It works, but I wonder, is there a simpler way to do this? Thanks.

##### Share on other sites
The last line can be reduced to return aproj >= 0;, but except for that, if your plane is defined by a pair of base vectors, then your function is already as simple as it can get.

##### Share on other sites
If you define the plane using a normal and distance from the origin, you can calculate a point on the plane and do the following .... (testpoint - pointonplane) * planenormal .... this will give you the perpendicular distance of the point from the plane

• ### What is your GameDev Story?

In 2019 we are celebrating 20 years of GameDev.net! Share your GameDev Story with us.

• 10
• 11
• 13
• 9
• 11
• ### Forum Statistics

• Total Topics
634090
• Total Posts
3015432
×