Алгоритм плавного построения графиков (Java2d) - PullRequest
0 голосов
/ 11 декабря 2010

Я пытаюсь построить кривую y = f (x) для различных функций, и я хочу, чтобы график был максимально качественным. Тем не менее, я бы предпочел избегать рендеринга отдельных пикселей в моем Java-коде по соображениям производительности.

Другими словами, я хочу выжать из Java2D как можно больше качества.

В настоящее время я вычисляю значения с плавающей точкой (x, y) для каждого пикселя в направлении x. Затем я создаю фигуру, рисуя линии между этими точками (используя значения с плавающей точкой для координат точек). У меня есть подсказки для билинейной интерполяции, сглаживания и качественного рендеринга.

Результат не ужасный, он почти сносный, но я видел лучше. Я думаю, что проблема в том, что, хотя я использую координаты с плавающей точкой, я в основном рисую многоугольник, поэтому Java2D может сделать очень много.

Что еще я могу сделать, чтобы улучшить это?

1 Ответ

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

Когда я изучал компьютерную графику в университете, мы выполняли курсовую работу на основе «Кривая Безье».Это может быть алгоритм, который вы ищете.Посмотрите здесь более подробно:

http://en.wikipedia.org/wiki/Bézier_curve

По сути, это способ замены многоугольника плавной кривой.

...