Добрый день! Не могу понять как работает этот фильтр. В хэлпе приведена формула:

Код:
dstPixel[x, y] = srcPixel[x + ((componentX(x, y) - 128) * scaleX) / 256, y + ((componentY(x, y) - 128) * scaleY) / 256]
Расшифрую: берется пиксел из карты смещений, рассчитывается его смещение по формуле и затем на это расстояние смещается пиксел из целевого рисунка.
Но! Если у меня нейтральное изображение карты смещений, то пиксел изменять положение не должен. Поясню: если я задаю цветовой канал, по которому будет происходить смещение, например зеленым, а в карте смещения такого цвета нет (т.е. в любой точке значение зеленого канала равно 0), то пикселы останутся на месте. Так?
Но по формуле выходит так:

Код:
(componentX(x, y) - 128) * scaleX
не равно 0, т.к. componentX(x, y) != 0!!!!! И соответственно смещение происходить будет!!! Как так????