Wouter Lievens
Wouter Lievens

Reputation: 4029

Determine winding of a 2D triangles after triangulation

I'm using triangulation code that works pretty well (it processes polygons with holes and integrates with JTS) but apparently it doesn't respect the winding of triangles. Some output triangles are winded one way, some are winded another way.

Is it possible for me to determine and correct the winding of these deviant triangles? Possibly using information from neighbouring triangles, but the simpler the better of course.

Upvotes: 8

Views: 6231

Answers (1)

user180326
user180326

Reputation:

For a triangle A B C, you can find the winding by computing the cross product (B - A) x (C - A). For 2d tri's, with z=0, it will only have a z component.

To give all the same winding, swap vertices C and B if this z component is negative.

Upvotes: 19

Related Questions