def test_bspline_surface_deriv(): # Create a surface isntance surf = OBJECT_INSTANCE() # Set degrees surf.degree_u = 3 surf.degree_v = 3 # Set control points surf.set_ctrlpts(CONTROL_POINTS, 6, 6) # Set knot vectors surf.knotvector_u = [0.0, 0.0, 0.0, 0.0, 0.33, 0.66, 1.0, 1.0, 1.0, 1.0] surf.knotvector_v = [0.0, 0.0, 0.0, 0.0, 0.33, 0.66, 1.0, 1.0, 1.0, 1.0] # Take the derivative der1 = surf.derivatives(u=0.35, v=0.35, order=2) surf.evaluator = evaluators.SurfaceEvaluator2() der2 = surf.derivatives(u=0.35, v=0.35, order=2) for k in range(0, 3): for l in range(0, 3 - k): assert abs(der1[k][l][0] - der2[k][l][0]) < GEOMDL_DELTA assert abs(der1[k][l][1] - der2[k][l][1]) < GEOMDL_DELTA assert abs(der1[k][l][2] - der2[k][l][2]) < GEOMDL_DELTA
def test_bspline_surface_deriv(spline_surf): der1 = spline_surf.derivatives(u=0.35, v=0.35, order=2) spline_surf.evaluator = evaluators.SurfaceEvaluator2() der2 = spline_surf.derivatives(u=0.35, v=0.35, order=2) for k in range(0, 3): for l in range(0, 3 - k): assert abs(der1[k][l][0] - der2[k][l][0]) < GEOMDL_DELTA assert abs(der1[k][l][1] - der2[k][l][1]) < GEOMDL_DELTA assert abs(der1[k][l][2] - der2[k][l][2]) < GEOMDL_DELTA