コード例 #1
0
    def test_variable_turn_offset(self):
        arc = Segment(arc=math.radians(90), radius=10.0, end_radius=20.0)
        self.assertEqual(arc.get_offset((0, 0, 0)), (0, 0))
        self.assertEqual(arc.get_offset((20, 10, math.radians(90))), (0, 0))

        arc = Segment(arc=math.radians(-90), radius=10.0, end_radius=20.0)
        self.assertEqual(arc.get_offset((0, 0, 0)), (0, 0))
        self.assertEqual(arc.get_offset((20, -10, math.radians(-90))), (0, 0))
コード例 #2
0
    def test_arc_offset(self):
        arc = Segment(arc=math.radians(90), radius=10.0)
        self.assertEqual(arc.get_offset((0, 0, 0)), (0, 0))
        self.assertEqual(arc.get_offset((10, 0, 0)),
                (-(math.sqrt(2)*10 - 10), math.radians(-45)))
        self.assertEqual(arc.get_offset((-1, 0, 0)), (None, None))
        self.assertEqual(arc.get_offset((11, 11, 0)), (None, None))

        arc = Segment(arc=math.radians(-90), radius=10.0)
        self.assertEqual(arc.get_offset((0, 0, 0))[0], 0)
        self.assertEqual(arc.get_offset((10, 0, 0))[0], math.sqrt(2)*10 - 10)
        self.assertEqual(arc.get_offset((-1, 0, 0))[0], None)
コード例 #3
0
 def test_line_offset(self):
     line = Segment(length=30.0)
     self.assertEqual(line.get_offset((3.0, 4.0, 0)), (4.0, 0))
     self.assertEqual(line.get_offset((33.0, 4.0, 0)), (None, None))
     self.assertEqual(line.get_offset((5.0, -2.0, 0.1)), (-2.0, 0.1))