(self, points, axis, expected)
| 731 | self.assertAlmostEqual(1.25, poly5.area) |
| 732 | |
| 733 | def _proj_onto_axis_fuzzer(self, points, axis, expected): |
| 734 | for i in range(3): |
| 735 | offset = vector2.Vector2(random.uniform(-1000, 1000), random.uniform(-1000, 1000)) |
| 736 | |
| 737 | new_points = [] |
| 738 | for pt in points: |
| 739 | new_points.append(pt - offset) |
| 740 | |
| 741 | new_poly = polygon2.Polygon2(new_points) |
| 742 | |
| 743 | proj = polygon2.Polygon2.project_onto_axis(new_poly, offset, axis) |
| 744 | |
| 745 | help_msg = "points={}, axis={}, expected={} proj={} [offset = {}, new_points={}]".format(points, axis, expected, proj, offset, new_points) |
| 746 | self.assertAlmostEqual(expected.min, proj.min, help_msg) |
| 747 | self.assertAlmostEqual(expected.max, proj.max, help_msg) |
| 748 | |
| 749 | |
| 750 | def test_project_onto_axis(self): |
no test coverage detected