diff --git a/triangulation.go b/triangulation.go index 4d99b19..d384d68 100644 --- a/triangulation.go +++ b/triangulation.go @@ -1,6 +1,7 @@ package canvas import ( + "math" "sort" "github.com/tfriedel6/lm" @@ -77,6 +78,9 @@ func triangulatePath(path []pathPoint, target []float32) []float32 { a := polygon[i] b := polygon[(i+1)%len(polygon)] c := polygon[(i+2)%len(polygon)] + if isSamePoint(a, c, math.SmallestNonzeroFloat32) { + break + } for i2, p := range polygon { if i2 >= i && i2 <= i+2 { continue