Apply a scale to a transform
    :param t: The transform [[x, y, z], [x, y, z, w]] to be scaled OR the position [x, y, z] to be scaled
    :param scale: the scale of type float OR the scale [scale_x, scale_y, scale_z]
    :return: The scaled

def scale_transform(t, scale):
    """
    Apply a scale to a transform
    :param t: The transform [[x, y, z], [x, y, z, w]] to be scaled OR the position [x, y, z] to be scaled
    :param scale: the scale of type float OR the scale [scale_x, scale_y, scale_z]
    :return: The scaled
    """
    if isinstance(scale, float) or isinstance(scale, int):
        scale = [scale, scale, scale]

    if _is_indexable(t[0]):
        return [[t[0][0] * scale[0], t[0][1] * scale[1], t[0][2] * scale[2]],
                t[1]]
    else:
        return [t[0] * scale[0], t[1] * scale[1], t[2] * scale[2]]