Builds, modifies, visualizes, and converts 3D LUTs from popular .cube and .3dl formats. Source available at https://github.com/gregcotten/pylut.
Usage
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)
lut3.ToNuke3DLFile("/path/to/destination.3dl")
CLI
I also have a terrible CLI inside the bin folder. Example:
pylut some_lut.3dl --resize 17 --convert RCUBE
The Future
No clue.
Contributing
Fork it
Create your feature branch (git checkout -b my-new-feature)
Commit your changes (git commit -am 'Add some feature')
Push to the branch (git push origin my-new-feature)
Create new Pull Request
Release files for pylut 1.4.9
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| pylut-1.4.9.tar.gz | 15.6 kB | Details |
Release files / pylut-1.4.9.tar.gz
| Download URL | pylut-1.4.9.tar.gz |
|---|---|
| Size | 15.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
cd03a2a21ea22076105c483cb42326a79c6acf939d4f303a88ac234b0470046f
|
|
BLAKE2b-256 checksum How to use checksums |
3340e80d2920a9485dd8cf8b6d63b0b8cd14eef596935691c73063dce9897811
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |