From f5af8c0eb514825e1e1f14ebc80fe50669fb0404 Mon Sep 17 00:00:00 2001 From: Michael Kennard Date: Thu, 4 Jan 2024 11:32:08 -0700 Subject: [PATCH] GmMultiPolyIntersector for python - added test for polygon_from_point --- .../multi_poly_intersector_pyt.py | 30 +++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/_package/tests/unit_tests/geometry_tests/multi_poly_intersector_pyt.py b/_package/tests/unit_tests/geometry_tests/multi_poly_intersector_pyt.py index 1d3197ef..d26a107e 100644 --- a/_package/tests/unit_tests/geometry_tests/multi_poly_intersector_pyt.py +++ b/_package/tests/unit_tests/geometry_tests/multi_poly_intersector_pyt.py @@ -89,6 +89,36 @@ def test_traverse_line_segment_1_out_in(self): expected_points = ((0.0, 5.0, 0.0), (8.0, 5.0, 0.0)) self._run_test(-1, 5, 8, 5, pts, polys, expected_ids, expected_t_vals, expected_points) + def test_polygon_from_point(self): + r"""A test. + + (0,20) + 3-------------2 + | | + | | + | *1 | * + | | + | | + 0------*-----*1------*------6 + | | + | | + | | + * | *2 | + | | + 4-------------5 + (0,0) (20,0) + """ + pts = [[0, 10, 0], [10, 10, 0], [10, 20, 0], [0, 20, 0], [10, 0, 0], [20, 0, 0], [20, 10, 0]] + polys = [[0, 1, 2, 3], [4, 5, 6, 1]] + mpi = grid.geometry.MultiPolyIntersector(pts, polys) + assert mpi.polygon_from_point((5, 5, 0)) == -1 + assert mpi.polygon_from_point((5, 10, 0)) == 1 + assert mpi.polygon_from_point((5, 15, 0)) == 1 + assert mpi.polygon_from_point((10, 10, 0)) == 1 + assert mpi.polygon_from_point((15, 15, 0)) == -1 + assert mpi.polygon_from_point((15, 10, 0)) == 2 + assert mpi.polygon_from_point((15, 5, 0)) == 2 + if __name__ == '__main__': unittest.main()