def test_points_2d(): bcurve = Bezier(DEFPOINTS2D) for index, epoint in enumerate(POINTS2D): epx, epy = epoint rpx, rpy, rpz = bcurve.point(index * .1) assert isclose(epx, rpx) is True assert isclose(epy, rpy) is True
def test_points_3d(): bcurve = Bezier(DEFPOINTS3D) points = list(bcurve.approximate(40)) for rpoint, epoint in zip(points, iter_dbezier(DBEZIER3D, 0)): epx, epy, epz = epoint rpx, rpy, rpz = rpoint assert isclose(epx, rpx) assert isclose(epy, rpy) assert isclose(epz, rpz)
def test_points_3d(): bcurve = Bezier(DEFPOINTS3D) points = list(bcurve.approximate(40)) for point, chk in zip(points, iter_dbezier(DBEZIER3D, 0)): assert point.isclose(chk)
def test_points_2d(): bcurve = Bezier(DEFPOINTS2D) for index, chk in enumerate(POINTS2D): assert bcurve.point(index * .1).isclose(chk)
def dbezier(): curve = Bezier(DEFPOINTS3D) return list(curve.derivatives(curve.params(40)))
def test_point_and_tangent_2d(): dbcurve = Bezier(DEFPOINTS2D) for index, (chk_pnt, chk_d1) in enumerate(zip(POINTS2D, TANGENTS2D)): pnt, d1, d2 = dbcurve.derivative(index * .1) assert pnt.isclose(chk_pnt) assert d1.isclose(chk_d1)