#### Archived

This topic is now archived and is closed to further replies.

# normal of a plane

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

## Recommended Posts

How could I find the normal of a plane given a set of a points that lie on the plane?

##### Share on other sites
Pick three.

Form two vectors:

V1 = P2 - P1
V2 = P3 - P1

The normal is the cross product of the vectors:

N = V1 X V2

(normalized is usually most useful)

If you know something about the points which will give you a particular ''sidedness'' to the plane then you may want the negation of the cross product above.

##### Share on other sites
I assume that when you look at the polygon from the front, your verts go counter clockwise. Subsequently you have at least 3 verts (even if you have more than 3 verts, you ignore the rest) v0,v1, and v2. To calculate the normal:

Vector1 = v1 - v0;
Vector1.Normalize();

Vector2 = v2 - v0;
Vector2.Normalize();

//Crossproduct(hand,palm) returns the direction of ''thumb''
Normal = CrossProduct(Vector1,Vector2);

Normal.Normalize(); //The length of the normal is ||Vector1|| * ||Vector2|| * sine of the angle between the two

1. 1
2. 2
3. 3
Rutin
22
4. 4
5. 5

• 11
• 17
• 14
• 9
• 9
• ### Forum Statistics

• Total Topics
632929
• Total Posts
3009278
• ### Who's Online (See full list)

There are no registered users currently online

×