The Formulas Rendering Plug-In for the GIMP 2 version 0.9.7
Released on 29-July-2006 at 20:00
Written by Nicolas BENOIT, nbenoit@tuxfamily.org
http://nbenoit.tuxfamily.org
French translation: Nicolas BENOIT
German translation: Dominik SEICHTER
This simple plugin allows you to change the values of each color channel of each pixel of a layer by using mathematical expressions.
It is compatible with RGB* and Gray* layers.
Operator | Description |
+ | addition |
- | substraction |
* | multiplication |
/ | division |
^ | power |
% | modulo |
Function | Description | Number of arguments |
rand ( ) | random value between 0.0 and 1.0 | no argument |
sin ( arg ) | sine function | one argument |
sinh ( arg ) | hyperbolic sine function | one argument |
asin ( arg ) | arc sine function | one argument |
asinh( arg ) | arc hyperbolic sine function | one argument |
cos ( arg ) | cosine function | one argument |
cosh ( arg ) | hyperbolic cosine function | one argument |
acos ( arg ) | arc cosine function | one argument |
acosh ( arg ) | arc hyperbolic cosine function | one argument |
tan ( arg ) | tangent function | one argument |
tanh ( arg ) | hyperbolic tangent function | one argument |
atan ( arg ) | arc tangent function | one argument |
atan2 ( arg1, arg2 ) | arc tangent function returning the correct quadrant | two arguments |
atanh ( arg ) | arc hyperbolic tangent function | one argument |
rad ( arg ) | to radians conversion | one argument |
deg ( sqrt ) | to degrees conversion | one argument |
sqrt ( arg ) | square root function | one argument |
cbrt ( arg ) | cube root function | one argument |
log ( arg ) | natural logarithmic function | one argument |
log2 ( arg ) | base-2 logarithmic function | one argument |
log10 ( arg ) | base-10 logarithmic function | one argument |
exp ( arg ) | base-e exponential function | one argument |
abs ( arg ) | absolute value | one argument |
sign ( arg ) | sign of the value | one argument |
ceil ( arg ) | smallest integral value not less than argument | one argument |
round ( arg ) | round to nearest integer, away from zero | one argument |
min ( arg1, arg2, ..., argn ) | minimal value | one or more arguments |
max ( arg1, arg2, ..., argn ) | maximal value | one or more arguments |
avg ( arg1, arg2, ..., argn ) | average value | one or more arguments |
Value | Description |
pi | pi constant |
e | e constant |
j | gold number |
w | width of the image |
h | height of the image |
x | x of the cartesian coordinate of the current pixel |
y | y of the cartesian coordinate of the current pixel |
r | r of the polar coordinate of the current pixel |
t | t of the polar coordinate of the current pixel |
red | original value of the red channel of the current pixel |
gray | original value of the gray channel of the current pixel |
green | original value of the green channel of the current pixel |
blue | original value of the blue channel of the current pixel |
alpha | original value of the alpha channel of the current pixel |
As you can see on the screenshot above, the interface of the plug-in is pretty simple.
You just have to enter the formulas inside the text fields...
Always keep in mind that the result of a formula must be between 0 and 255.
Here are a few examples:
Red Channel | Green Channel | Blue Channel | |
1 | 100 | (1+cos(rad(x*2.21*x/(y+1))))*92 | (1+sin(rad(x*2.21*x/(y+1))))*127 |
2 | ((1+cos(rad(x+y)))*127)+1 | ((1+sin(rad(x+y)))*127)+1 | y%255 |
3 | (1+sin(x/(w/pi)))*127 | (1+sin(y/(w/pi)))*127 | 255 |
4 | (sin(r)+1)*127 | (sin(r)+1)*64 | (sin(r+pi)+1)*127 |