You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

49 lines
1.9 KiB

[bilinearInterpolateColorGradient(7)]
args = x,y,col00,colX0,col0Y,colXY,outcolorfieldname
definition = | eval _x = $x$\
| eval _y = $y$\
| eval _col00 = $col00$\
| eval _colX0 = $colX0$\
| eval _col0Y = $col0Y$\
| eval _colXY = $colXY$\
`interpolateColor(_col00, _colX0, _x, "_outcolorB")`\
`interpolateColor(_col0Y, _colXY, _x, "_outcolorT")`\
`interpolateColor(_outcolorB, _outcolorT, _y, "_outcolor")`\
| eval $outcolorfieldname$ = _outcolor
iseval = 0
[genColorFromComponents(4)]
args = red,green,blue,outcolorfieldname
definition = | eval _red = $red$\
| eval _green = $green$\
| eval _blue = $blue$\
| eval _outcolor = "#" + upper(printf("%02x", _red)) + upper(printf("%02x", _green)) + upper(printf("%02x", _blue))\
| eval $outcolorfieldname$ = _outcolor
iseval = 0
[interpolateColor(4)]
args = col1,col2,lerpt,outcolorfieldname
definition = | eval _col1 = $col1$\
| eval _col2 = $col2$\
| eval _lerpt = $lerpt$\
| eval _outcolor = "#ZZZZZZ"\
| eval _lerpt = if(_lerpt > 1, 1.0, _lerpt)\
| eval _lerpt = if(_lerpt < 0.0, 0.0, _lerpt)\
`splitColorIntoComponents(_col1, "_col1r", "_col1g", "_col1b")`\
`splitColorIntoComponents(_col2, "_col2r", "_col2g", "_col2b")`\
| eval _deltaRed = _col2r - _col1r, _deltaGreen = _col2g - _col1g, _deltaBlue = _col2b - _col1b\
| eval _outRed = _col1r + _lerpt * _deltaRed, _outGreen = _col1g + _lerpt * _deltaGreen, _outBlue = _col1b + _lerpt * _deltaBlue\
`genColorFromComponents(_outRed, _outGreen, _outBlue, "_outcolor")`\
| eval $outcolorfieldname$ = _outcolor
iseval = 0
[splitColorIntoComponents(4)]
args = color, outfieldname_red,outfieldname_green,outfieldname_blue
definition = | eval _color = $color$\
| rex field=_color "^#(?<_red>[0-9a-zA-Z]{2,2})(?<_green>[0-9a-zA-Z]{2,2})(?<_blue>[0-9a-zA-Z]{2,2})$"\
| eval _red = tonumber(_red, 16), _green = tonumber(_green, 16), _blue = tonumber(_blue, 16)\
| eval $outfieldname_red$ = _red\
| eval $outfieldname_green$ = _green\
| eval $outfieldname_blue$ = _blue
iseval = 0