Example #1
0
    def test_relate_pattern(self):

        # a pair of partially overlapping polygons, and a nearby point
        g1 = Polygon([(0, 0), (0, 1), (3, 1), (3, 0), (0, 0)])
        g2 = Polygon([(1, -1), (1, 2), (2, 2), (2, -1), (1, -1)])
        g3 = Point(5, 5)

        assert(g1.relate(g2) == '212101212')
        assert(g1.relate_pattern(g2, '212101212'))
        assert(g1.relate_pattern(g2, '*********'))
        assert(g1.relate_pattern(g2, '2********'))
        assert(g1.relate_pattern(g2, 'T********'))
        assert(not g1.relate_pattern(g2, '112101212'))
        assert(not g1.relate_pattern(g2, '1********'))
        assert(g1.relate_pattern(g3, 'FF2FF10F2'))

        # an invalid pattern should raise an exception
        with pytest.raises(PredicateError):
            g1.relate_pattern(g2, 'fail')
Example #2
0
    def test_relate_pattern(self):

        # a pair of partially overlapping polygons, and a nearby point
        g1 = Polygon([(0, 0), (0, 1), (3, 1), (3, 0), (0, 0)])
        g2 = Polygon([(1, -1), (1, 2), (2, 2), (2, -1), (1, -1)])
        g3 = Point(5, 5)

        assert(g1.relate(g2) == '212101212')
        assert(g1.relate_pattern(g2, '212101212'))
        assert(g1.relate_pattern(g2, '*********'))
        assert(g1.relate_pattern(g2, '2********'))
        assert(g1.relate_pattern(g2, 'T********'))
        assert(not g1.relate_pattern(g2, '112101212'))
        assert(not g1.relate_pattern(g2, '1********'))
        assert(g1.relate_pattern(g3, 'FF2FF10F2'))

        # an invalid pattern should raise an exception
        with pytest.raises(PredicateError):
            g1.relate_pattern(g2, 'fail')