def testLengthMeters(self): p1 = Point(1, 0, 0).Normalize() p2 = Point(0, 0.5, 0.5).Normalize() p3 = Point(0.3, 0.8, 0.5).Normalize() poly0 = Poly([p1]) poly1 = Poly([p1, p2]) poly2 = Poly([p1, p2, p3]) try: poly0.LengthMeters() self.fail("Should have thrown AssertionError") except AssertionError: pass p1_p2 = p1.GetDistanceMeters(p2) p2_p3 = p2.GetDistanceMeters(p3) self.assertEqual(p1_p2, poly1.LengthMeters()) self.assertEqual(p1_p2 + p2_p3, poly2.LengthMeters()) self.assertEqual(p1_p2 + p2_p3, poly2.Reversed().LengthMeters())
def testReversed(self): p1 = Point(1, 0, 0).Normalize() p2 = Point(0, 0.5, 0.5).Normalize() p3 = Point(0.3, 0.8, 0.5).Normalize() poly1 = Poly([p1, p2, p3]) self.assertPointsApproxEq([p3, p2, p1], poly1.Reversed().GetPoints())