skip to navigation
skip to content

Not Logged In

pylut 1.4.3

Builds, modifies, visualizes, and converts 3D LUTs from popular .cube and .3dl formats.

Package Documentation

Latest Version: 1.4.9

Builds, modifies, visualizes, and converts 3D LUTs from popular .cube and .3dl formats. Source available at


The idea is that the modifications to a LUT object are non-volatile, meaning that every modification method returns a new LUT object rather than changing the existing object. All sorts of great things can happen!

#!/usr/bin/env python
from pylut import *
lut = LUT.FromLustre3DLFile("/path/to/file.3dl")
lut2 = LUT.FromLustre3DLFile("/path/to/file2.3dl")

print lut.ColorAtLatticePoint(1,2,1)
print lut.ColorAtInterpolatedLatticePoint(1.3,1.5,1.2)
print lut.ColorFromColor(Color(.002,.5,.2344))
print lut.ColorFromColor(Color.FromRGBInteger(14, 1000, 30, bitdepth = 10))

lut3 = lut.CombineWithLUT(lut2)

lut3 *= .5
lut3 -= LUT.FromIdentity(lut3.cubeSize)

lut3 = lut3.ClampColor(Color(0,0,.2),Color(0,0,.4))

lut3 = lut3.Resize(33)


I also have a terrible CLI inside the bin folder. Example:

pylut some_lut.3dl --resize 17 --convert RCUBE

The Future

  1. No clue.


  1. Fork it
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create new Pull Request
File Type Py Version Uploaded on Size
pylut-1.4.3.tar.gz (md5) Source 2013-12-05 7KB
  • Downloads (All Versions):
  • 42 downloads in the last day
  • 288 downloads in the last week
  • 1046 downloads in the last month