Пример #1
0
 def test_zeroth_order_diffraction_equals_reflection(self):
     plane = Plane()
     ray = Rays([(A, B, -1)], [(0, 0, 1)], uniform(100, 1000))
     reflection = plane.reflect(ray)
     diffraction = plane.diffract(ray, uniform(0.001, 0.002), 0)
     self.assertTrue(allclose(reflection.endpoints, diffraction.endpoints))
     self.assertTrue(allclose(reflection.directions,
                              diffraction.directions))
Пример #2
0
 def test_reflect_miss(self):
     """Test that rays missing an element have NaN endpoints."""
     plane = Plane()
     ray = Rays([(A+1, B, -1)], [(0, 0, 1)], None)
     reflection = plane.reflect(ray)
     self.assertTrue(all(isnan(reflection.endpoints[0])))
Пример #3
0
 def test_reflect(self):
     plane = Plane()
     ray = Rays([(A, B, -1)], [(0, 0, 1)], None)
     reflection = plane.reflect(ray)
     self.assertTrue(allclose(reflection.endpoints, (A, B, 0)))
     self.assertTrue(allclose(reflection.directions, (0, 0, -1)))