# polygon/triangle in clockwise order

## Recommended Posts

Lugerns    122
Hello all. Do anyone know a good way to sort and check if a polygon/triangle is in a clockwise order? /Luger

##### Share on other sites
Toji    535
Depends on what you mean. There's no such thing as a polygon that is inheritly "clockwise" in order. It depends on the angle from which you view it at. That's how backface culling works in most graphics API's.

##### Share on other sites
Lugerns    122
I know, just had a small error in my code, and everything works now.... =)

##### Share on other sites
First, note that a triangle ABC can only be classified as clockwise or counterclockwise as viewed from a given position P not in the plane of the triangle.

So, given ABC and P, you can do this:

Vector normal = Cross(B - A, C - A);bool counterclockwise = Dot(normal, P - A) > 0;

What P is depends on your application. It might be the camera position, the world origin, a vertex of some other triangle, or something else entirely.

If your triangle is not in 3D but in 2D, you can simplify the test accordingly (knowing that z = 0).