vit_r: default (Default)
vit_r ([personal profile] vit_r) wrote2020-11-03 09:51 am

Про новостную ленту

[livejournal.com profile] ksonin опять поздравил Россиян с победой демократических сил (в смысле, объяснил, почему Трамп проиграл выборы). Да, немного заранее, но в прошлый раз он сделал то же самое. Вот какой П. В смысле, постоянный.

Тактика вполне правильная, ибо первое правило эксперта учит: Ошибочные предсказания забываются, совпавшие остаются в памяти.

Маразматичный Джо во главе самой мощной страны мира -- это, конечно, стрёмно, зато интересно. Будучи на другой стороне Земного шара я бы на это с интересом посмотрел. Особенно, когда история дойдёт до кондиции "Брежнев на английском". Социализм, который американцы решили себе построить, должен быть гармоничным.

А теперь вопрос: не знает ли кто случайно хорошего материала по математике кривых Безье? Нашёл кучу разрозненных статей о том, как удобнее аппроксимировать окружность или в какой точке проще делить, но хочется не таскать куски кода, а посмотреть на алгоритмы с точки зрения математики.
chaource: (Default)

[personal profile] chaource 2020-11-03 12:07 pm (UTC)(link)
Интуитивно кажется, что аналитически тамъ ничего не работаетъ. Все вычислять надо приближенно, численными методами. Скажемъ, дѣленiе кривой на заданной длинѣ - врядъ ли можно вообще написать формулу для длины произвольной кривой Безье, проведенной черезъ заданныя точки.
vanja_y: (Default)

[personal profile] vanja_y 2020-11-03 09:27 pm (UTC)(link)
Кривые Безье интересны исключительно тем, что есть очень быстрый и эффективный алгоритм их построения через последовательное нахождение средних точек отрезков.

Математически, они задаются параметрическим уравнением:
квадратичные
x1 t² + x2 t(1-t) + x3 (1-t)²
кубические
x1 t³ + x2 t²(1-t) + x3 t(1-t)² + x4 (1-t)³,
где xi-тые некоторые точки на плоскости.

Можно определить и для других степеней, но они не используются.

Для проверки прохождения через заданную точку для квадратичной кривой Безье мы получим систему из 2-х кубический уравнений с 7-ю неизвестными. У этой системы уйма решений в общем положении, поэтому не совсем понятен вопрос. Для третей степени получим два уравнения 4-ой степени с 9-ю неизвестными...

Длина кривой Безье считается по общей формуле для длины параметрической кривой.

Для квадратичной кривой Безье получится интеграл от корня квадратного из полинома второй степени по t. (Мне лень выписывать этот полином в явном виде. Формула для полинома x'(t)^2 + y'(t)^2.) Первообразная от таких хоть и существует, но содержит натуральные логарифмы. Поэтому поделить на кусочки одинаковой длины используя только рациональные значения t в общем случае, по-идее, не получится. (Понятно, что если есть какая-то симметрия, скажем, если треугольник натянутый на точки x1, x2, x3 равнобедренный, то она делится пополам в точке соответствующей t =0.5).

Для кубических кривых под интегралом будет стоять корень квадратный из полинома четвертой степени. Первообразные от таких функций содержат эллиптические функции и логарифмы...

[identity profile] permea-kra.livejournal.com 2020-11-03 10:30 pm (UTC)(link)
Salomon D., Curves and Surfaces for Computer Graphics
Ну и для общего развития можно полистать что-то специализированное по дифференциально и аналитической геометрии и теории интерполяции.

[identity profile] permea-kra.livejournal.com 2020-11-03 11:36 pm (UTC)(link)
Автор как автор. Качественная компьютерная графика тесно связана с численной обработкой изображений, которая включает в себя и цифровую обработку фотографий. Плюс обе строятся вокруг цветовосприятия человеческого глаза.

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

У меня, когда я пытался в этой тематике сориентироваться, сложилось странное впечатление. Где-то в 90х работы по алгоритмам 2д комп. графике почти исчезли из букварей. Такое чувство, будто все, в теме разбирающиеся, дружно подписали NDA.

[identity profile] permea-kra.livejournal.com 2020-11-04 07:33 am (UTC)(link)
А это направление ни фига не исчезло как явление, наоборот, на 90е пришелся взрыв популярности векторных шрифтов. Оно исчезло из публичной сферы.

[identity profile] permea-kra.livejournal.com 2020-11-04 07:58 am (UTC)(link)
>. По изображению векторных шрифтов на разных разрешениях экрана чего-то и могли тайного сделать.

Оно не столько тайное, сколько запатентованное и плохо документированное. Это не может быть, это факт - достаточно поковыряться в теме. Единственная открытая реализация - FreeType. Насколько я могу судить по беглому взгляду - довольно неплохо документированная, но одна.