Exemplo n.º 1
0
    def test_curved(self):
        # Arrange
        middle = 0.5
        pos = 0.75

        # Act
        ret = GimpGradientFile.curved(middle, pos)

        # Assert
        self.assertEqual(ret, 0.75)
Exemplo n.º 2
0
def test_sphere_increasing():
    # Arrange
    middle = 0.5
    pos = 0.75

    # Act
    ret = GimpGradientFile.sphere_increasing(middle, pos)

    # Assert
    assert round(abs(ret - 0.9682458365518543), 7) == 0
Exemplo n.º 3
0
def test_linear_pos_gt_small_middle():
    # Arrange
    middle = 1 - 1e-11
    pos = 1 - 1e-12

    # Act
    ret = GimpGradientFile.linear(middle, pos)

    # Assert
    assert ret == 1.0
Exemplo n.º 4
0
def test_curved():
    # Arrange
    middle = 0.5
    pos = 0.75

    # Act
    ret = GimpGradientFile.curved(middle, pos)

    # Assert
    assert ret == 0.75
Exemplo n.º 5
0
    def test_sphere_decreasing(self):
        # Arrange
        middle = 0.5
        pos = 0.75

        # Act
        ret = GimpGradientFile.sphere_decreasing(middle, pos)

        # Assert
        self.assertEqual(ret, 0.3385621722338523)
Exemplo n.º 6
0
def test_linear_pos_le_middle():
    # Arrange
    middle = 0.5
    pos = 0.25

    # Act
    ret = GimpGradientFile.linear(middle, pos)

    # Assert
    assert ret == 0.25
Exemplo n.º 7
0
    def test_sphere_increasing(self):
        # Arrange
        middle = 0.5
        pos = 0.75

        # Act
        ret = GimpGradientFile.sphere_increasing(middle, pos)

        # Assert
        self.assertAlmostEqual(ret, 0.9682458365518543)
Exemplo n.º 8
0
    def test_linear_pos_le_middle(self):
        # Arrange
        middle = 0.5
        pos = 0.25

        # Act
        ret = GimpGradientFile.linear(middle, pos)

        # Assert
        self.assertEqual(ret, 0.25)
Exemplo n.º 9
0
    def test_sine(self):
        # Arrange
        middle = 0.5
        pos = 0.75

        # Act
        ret = GimpGradientFile.sine(middle, pos)

        # Assert
        self.assertEqual(ret, 0.8535533905932737)
Exemplo n.º 10
0
def test_sphere_decreasing():
    # Arrange
    middle = 0.5
    pos = 0.75

    # Act
    ret = GimpGradientFile.sphere_decreasing(middle, pos)

    # Assert
    assert ret == 0.3385621722338523
Exemplo n.º 11
0
def test_sine():
    # Arrange
    middle = 0.5
    pos = 0.75

    # Act
    ret = GimpGradientFile.sine(middle, pos)

    # Assert
    assert ret == 0.8535533905932737
Exemplo n.º 12
0
    def test_sphere_decreasing(self):
        # Arrange
        middle = 0.5
        pos = 0.75

        # Act
        ret = GimpGradientFile.sphere_decreasing(middle, pos)

        # Assert
        self.assertEqual(ret, 0.3385621722338523)
Exemplo n.º 13
0
    def test_sphere_increasing(self):
        # Arrange
        middle = 0.5
        pos = 0.75

        # Act
        ret = GimpGradientFile.sphere_increasing(middle, pos)

        # Assert
        self.assert_almost_equal(ret, 0.9682458365518543)
Exemplo n.º 14
0
    def test_linear_pos_gt_small_middle(self):
        # Arrange
        middle = 1 - 1e-11
        pos = 1 - 1e-12

        # Act
        ret = GimpGradientFile.linear(middle, pos)

        # Assert
        self.assertEqual(ret, 1.0)
Exemplo n.º 15
0
    def test_sine(self):
        # Arrange
        middle = 0.5
        pos = 0.75

        # Act
        ret = GimpGradientFile.sine(middle, pos)

        # Assert
        self.assertEqual(ret, 0.8535533905932737)
Exemplo n.º 16
0
    def test_linear_pos_le_middle(self):
        # Arrange
        middle = 0.5
        pos = 0.25

        # Act
        ret = GimpGradientFile.linear(middle, pos)

        # Assert
        self.assertEqual(ret, 0.25)
Exemplo n.º 17
0
    def test_curved(self):
        # Arrange
        middle = 0.5
        pos = 0.75

        # Act
        ret = GimpGradientFile.curved(middle, pos)

        # Assert
        self.assertEqual(ret, 0.75)
Exemplo n.º 18
0
    def test_linear_pos_gt_small_middle(self):
        # Arrange
        middle = 1 - 1e-11
        pos = 1 - 1e-12

        # Act
        ret = GimpGradientFile.linear(middle, pos)

        # Assert
        self.assertEqual(ret, 1.0)
Exemplo n.º 19
0
def load(filename):

    # FIXME: supports GIMP gradients only

    fp = open(filename, "rb")

    lut = None

    if not lut:
        try:
            from PIL import GimpPaletteFile
            fp.seek(0)
            p = GimpPaletteFile.GimpPaletteFile(fp)
            lut = p.getpalette()
        except (SyntaxError, ValueError):
            # import traceback
            # traceback.print_exc()
            pass

    if not lut:
        try:
            from PIL import GimpGradientFile
            fp.seek(0)
            p = GimpGradientFile.GimpGradientFile(fp)
            lut = p.getpalette()
        except (SyntaxError, ValueError):
            # import traceback
            # traceback.print_exc()
            pass

    if not lut:
        try:
            from PIL import PaletteFile
            fp.seek(0)
            p = PaletteFile.PaletteFile(fp)
            lut = p.getpalette()
        except (SyntaxError, ValueError):
            #import traceback
            #traceback.print_exc()
            pass

    if not lut:
        raise IOError("cannot load palette")

    return lut  # data, rawmode