CustomScanlineRotation
Returns a pixmap with each row of pixels rotated an amount that depends on its position.
Syntax

CustomScanlineRotation(pm, i, f, [, d])

pm
is a pixmap 
i
is a symbol 
f
is a function 
d
is either"h"
or"v"

Description
CustomScanlineRotation(pm, i, f, d)
returns pm
with each row (if d = "h"
) or column (if d = "v"
) of pixels rotated f(i)
pixels, where i
is the position of the row or column.
Examples
CustomScanlineRotation(ExampleData("Sally"), y, round(100⋅sin(y/100)))
CustomScanlineRotation(ExampleData("Sally"), y, round(100⋅cos(sin(y/20)⋅y^2/300^2)))