Эффект искажения Ripple Image Алгоритм УФ-перевода на языке PHP или в стиле C, аналогичный тому, который представлен в GIMP - PullRequest
1 голос
/ 19 декабря 2010

Я работал над алгоритмом трансляции координатного пространства UV-XY для применения искажений изображения на основе простых уравнений в PHP.

Мой алгоритм использует четырехточечную би-линейную интерполяцию.

И вычисляет положение в исходном XY-пространстве для каждой точки в УФ-пространстве.

Я пытался получить эффект Ripple, подобный тому, который мы видели в GIMP. Я использовал переводы x = u + 2 * sin (u / 5) и y = v + 2 * sin (v / 5).

однако вместо эффекта гладкой ряби, как видно при использовании gimp, я получаю сильно размытый эффект (должен быть больше, чем я ожидал).

Может ли кто-нибудь направить меня к лучшему способу достижения этого эффекта.

Или можно легко следовать ранее существовавшим алгоритмам на PHP или другом языке с синтаксисом, подобным C.

Пока все, что мне удалось с Google, - это готовые алгоритмы, которые являются частью библиотеки, которая продается.

1 Ответ

1 голос
/ 28 декабря 2010

Я пытался получить эффект Ripple, подобный тому, который мы видели в GIMP. Я использовал переводы x = u + 2 * sin (u / 5) и y = v + 2 * sin (v / 5).

Мне нужно было использовать x = u + 2 * sin (v / 5) и y = v + 2 * sin (u / 5), чтобы получить ожидаемый эффект.

...