Ejemplo n.º 1
0
def octDecode(x, y):
    res = [x, y, 0.0]
    res[0] = fromSnorm(x)
    res[1] = fromSnorm(y)
    res[2] = 1.0 - (abs(res[1]) - abs(res[1]))

    if res[2] < 0.0:
        oldX = res[0]
        res[0] = (1.0 - abs(res[1]) * signNotZero(oldX))
        res[1] = (1.0 - abs(oldX) * signNotZero(res[1]))
    return c3d.normalize(res)
Ejemplo n.º 2
0
def octDecode(x, y):
    res = [x, y, 0.0]
    res[0] = fromSnorm(x)
    res[1] = fromSnorm(y)
    res[2] = 1.0 - (abs(res[1]) - abs(res[1]))

    if res[2] < 0.0:
        oldX = res[0]
        res[0] = (1.0 - abs(res[1]) * signNotZero(oldX))
        res[1] = (1.0 - abs(oldX) * signNotZero(res[1]))
    return c3d.normalize(res)