I've been working on a fuse to draw procedural gradients using inverse distance weighting. You can find a preliminary version here.
Currently, it's quite slow since it doesn't have OpenCL support yet. But this will be my next step. Here's a demo video:
It has several uses/features:
- a four-corner-gradient with freely movable corners
- a linear ramp that gets extrapolated beyond its points
- a barycentric 3-corner-gradient
- combining multiple tools for more than 4 colors (data is passed via image metadata)
Plans for the future: DoD support, OpenCL acceleration and a variant of this tool that is better suited to produce distortion maps to create a poor man's Photoshop liquify tool.