Я работал над алгоритмом преобразования координатного пространства UV в XY для применения искажений изображения на основе простых уравнений в PHP.
В моем алгоритме используется четырехточечная билинейная интерполяция.
И вычисляет положение в исходном пространстве XY для каждой точки в пространстве UV.
Я попытался получить эффект Ripple, подобный тому, который можно увидеть в GIMP. Я использовал переводы x = u+2*sin(u/5) и y = v+2*sin(v/5).
однако вместо плавного эффекта ряби, который наблюдается при использовании канитель, я получаю сильно размытый эффект (должно быть больше, чем я ожидал получить).
Может ли кто-нибудь указать мне лучший способ добиться этого эффекта.
Или бесплатные простые в использовании ранее существовавшие алгоритмы либо на PHP, либо на другом языке с C-подобным синтаксисом.
Пока что все, что мне удалось сделать с Google, — это готовые алгоритмы, которые являются частью библиотеки, выставленной на продажу.