mirror of
https://github.com/3b1b/manim.git
synced 2025-09-01 00:48:45 +00:00
Factor out epsilon in earclip_triangulation
This commit is contained in:
parent
a4d47f64b0
commit
fca7c0609a
1 changed files with 4 additions and 3 deletions
|
@ -383,9 +383,10 @@ def earclip_triangulation(verts: Vect3Array | Vect2Array, ring_ends: list[int])
|
|||
list(range(e0, e1))
|
||||
for e0, e1 in zip([0, *ring_ends], ring_ends)
|
||||
]
|
||||
epsilon = 1e-6
|
||||
|
||||
def is_in(point, ring_id):
|
||||
return abs(abs(get_winding_number([i - point for i in verts[rings[ring_id]]])) - 1) < 1e-5
|
||||
return abs(abs(get_winding_number([i - point for i in verts[rings[ring_id]]])) - 1) < epsilon
|
||||
|
||||
def ring_area(ring_id):
|
||||
ring = rings[ring_id]
|
||||
|
@ -396,8 +397,8 @@ def earclip_triangulation(verts: Vect3Array | Vect2Array, ring_ends: list[int])
|
|||
|
||||
# Points at the same position may cause problems
|
||||
for i in rings:
|
||||
verts[i[0]] += (verts[i[1]] - verts[i[0]]) * 1e-6
|
||||
verts[i[-1]] += (verts[i[-2]] - verts[i[-1]]) * 1e-6
|
||||
verts[i[0]] += (verts[i[1]] - verts[i[0]]) * epsilon
|
||||
verts[i[-1]] += (verts[i[-2]] - verts[i[-1]]) * epsilon
|
||||
|
||||
# First, we should know which rings are directly contained in it for each ring
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue