Re[4]: 3D GUI
От: McSeem2 США http://www.antigrain.com
Дата: 19.02.04 19:57
Оценка: 106 (9)
MS>>Но здесь нужно именно выское качество и субпиксельная точность. OpenGL не катит.

M>Какая-какая точность?


Субпиксельная. Subpixel Accuracy. По буквам продиктовать?

M>Высокое разрешение и есть вся точность.


Вот из за таких догматических мнений и имеем убогость виндовой графики.

M>Вообще не понимаю, как можно говорить о векторной графике, но с субпиксельной точностью?


Можно. Даже пиксел можно нарисовать с субпиксельной точностью. http://freespace.virgin.net/hugo.elias/graphics/x_wupixl.htm

M> Всё-таки пиксельная или векторная?


Векторная, грамотно растеризованная на пиксельном устройстве.
Даже тривиальный алгоритм Брезенхема можно заставить работать с субпиксельной точностью. Проблема в округлении координат. Отрезки (0.0, 0.0) -> (10.0, 5.4) и (0.0, 0.4) -> (10.0, 5.0), интерполированные даже обычным целочисленным Брезенхемом должны выглядеть по-разному. Они реально имеют разный наклон, четко различимый глазами. Однако, большинство низкоуровневых графических интерфейсов оперирует целочисленными пиксельными координатами, что есть безусловный маздай. Можно "выжать" значительно больше. Найдите 10 различий:

Обе спирали аппрксимированы короткими прямыми отрезками.
Вот то же самое, со сглаживанием и точносттью 1/256 пиксела, толщина 0.8 пиксела:

Вот толщиной в 0.24 пиксела:

Особенно важно уметь задавать толщину линий, не кратную пикселу, скажем, 1.32 пиксела и визуально это должно выглядеть адекватно. Целочисленная толщина — это очень грубо вплоть до разрешения около 600 dpi.
Вот еще хорошая статья: http://www.cs.princeton.edu/courses/archive/fall00/cs426/papers/smith95b.pdf
Называется "A Pixel Is Not A Little Square"
McSeem
Я жертва цепи несчастных случайностей. Как и все мы.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.