def max_uv_error()

in genweights.py [0:0]


def max_uv_error(yr, yg, zg, br, bg, bb, cr, cg, cb):
    yb = -(yr + yg)
    zr = yb
    zb = -(zr + zg)

    shift = (128 << FIX16) + (1 << (FIX16 - 1)) - 1
    u_err = 0.0
    v_err = 0.0

    for red in range(256):
        u_tmp = yr * red + shift
        v_tmp = zr * red + shift
        uf_tmp = br * red + 128
        vf_tmp = cr * red + 128

        for green in range(256):
            u_tmp2 = yg * green + u_tmp
            v_tmp2 = zg * green + v_tmp
            uf_tmp2 = bg * green + uf_tmp
            vf_tmp2 = cg * green + vf_tmp

            for blue in range(256):
                u = (yb * blue + u_tmp2) >> FIX16
                v = (zb * blue + v_tmp2) >> FIX16
                uf = bb * blue + uf_tmp2
                vf = cb * blue + vf_tmp2
                u_err = max(u_err, abs(uf - u))
                v_err = max(v_err, abs(vf - v))

    return (u_err, v_err)