コード例 #1
0
 def test_extremes(self):
   q = CubicBezier(
     Point(65,59), Point(194,90), Point(220,260), Point(70,261)
   )
   # console.log(Bezier(65,59, 194,90, 220,260, 70,261).extrema())
   r = q.findExtremes()
   self.assertEqual(len(r), 1)
   self.assertAlmostEqual(r[0], 0.5275787707261016)
   r = q.findExtremes(inflections = True)
   self.assertEqual(len(r), 2)
   self.assertAlmostEqual(r[0], 0.4512987012987013)
   self.assertAlmostEqual(r[1], 0.5275787707261016)
コード例 #2
0
 def test_addextremes(self):
     q = CubicBezier(Point(42, 135), Point(129, 242), Point(167, 77),
                     Point(65, 59))
     ex = q.findExtremes()
     self.assertEqual(len(ex), 2)
     path = BezierPath()
     path.closed = False
     path.activeRepresentation = SegmentRepresentation(path, [q])
     path.addExtremes()
     path.balance()
     segs = path.asSegments()
     self.assertEqual(len(segs), 3)