Мне нужно найти центр кривой Безье, чтобы повернуть его. У меня есть список всех точек (контрольные точки, начало и конец, все точки на самой кривой). Как мне найти его центр?
algorithm
bezier-curve
user4656
источник
источник
t=0.5
. и два - это геометрическая середина относительно декартового расстояния перемещения вдоль линии.Ответы:
Кривые Безье являются математическими объектами и не имеют четко определенного центра. Фактически можно определить много разных вещей как центр кривой Безье. Я попытался изобразить некоторые из возможных центров на рисунке 1. Больше, чем это существует.
Рисунок 1 : Некоторые из возможных центров однопролетной кривой Безье
На практике почти все графические приложения, предназначенные для рисования, используют центр локальной ограничительной рамки (BB) в качестве своего центра. Анимационные программы, как правило, имеют дополнительную концепцию вращения, поэтому они используют подход запрашиваемого пользователя, если они не вводятся, они часто возвращаются к центру ВВ или просто к локальному координатному центру. Вероятно, это связано с тем, что ВВ все равно нужно вычислять, а получить его центр довольно легко (см. «Учебник по кривым Безье» ).
Метрики центра тяжести также несколько естественны, особенно в контексте анимации, хотя и сложнее вычислять. Проще всего дискретизировать данные и выполнить вычисления на дискретном входе. Тем не менее, некоторые решения в замкнутой форме возможны для кривой центра тяжести, но это не очень хорошее уравнение для формулировки и упрощения.
Тогда у нас есть точки на кривой: средняя точка по длине дуги и точка, гдеt параметр составляет 0,5. На мой взгляд,t Параметр param часто проблематичен, хотя его легко вычислить, и он теряет смысл, когда вы объединяете несколько цепочек Безье друг за другом для полибезье. Центр длины, конечно, является естественным, если кривая не замкнута.
Мы также определяем другие возможные центры, центр может быть в центре кривой силы тяжести корпуса, в среднем контрольных точек или контрольной клетке BB центра. Хотя на практике это не очень хорошо работает.
Обратите внимание : хотя кривая на рисунке 1 показывает центр ВВ довольно близко к некоторым естественным центрам, это не всегда относится к более сложным кривым и особенно к полибезиерам.
источник
Поскольку нам не говорят, какое определение «центр» использовать, мы можем также использовать самое простое. Это было бы
источник