Exemple #1
0
    def test_seg_intersect (self):
        aa = CrankBase.VecFloat2.init (3.0, 4.0)
        ab = CrankBase.VecFloat2.init (5.0, 12.0)
        ba = CrankBase.VecFloat2.init (12.0, 5.0)
        bb = CrankBase.VecFloat2.init (4.0, 3.0)

        (res, i) = CrankShape.seg_intersect (aa, ab, ba, bb)
        assert (not res)

        aa = CrankBase.VecFloat2.init (2.0, 1.0)
        ab = CrankBase.VecFloat2.init (5.0, 9.0)
        ba = CrankBase.VecFloat2.init (1.0, 5.0)
        bb = CrankBase.VecFloat2.init (4.0, 3.0)

        (res, i) = CrankShape.seg_intersect (aa, ab, ba, bb)
        assert (res)
        self.assertFloat (i.x, 3)
        self.assertFloat (i.y, (11.0 / 3.0))