Сколько очков за сплайн - PullRequest
4 голосов
/ 12 июня 2009

H сообщества,

Я хотел спросить, существует ли алгоритм выбора оптимального количества опорных точек для создания сплайна Безье, чтобы он выглядел гладким и уменьшал ошибку. Если есть такой алгоритм, насколько быстрым является алгоритм?

Заранее спасибо

Себастьян

Ответы [ 3 ]

2 голосов
/ 12 июня 2009

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

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

2 голосов
/ 12 июня 2009

Я не уверен, что понимаю ваш вопрос. Обычно у вас есть фиксированное количество баллов, и вы рассчитываете сплайн, который интерполирует это количество баллов.

В википедии есть статья о сплайне , которая может вам помочь.

1 голос
/ 17 июня 2009

Как правило, вы не хотите работать с кривыми Безье более высокого порядка, чем кубические. Оценка и рендеринг замедляются по мере увеличения порядка. Кубические кривые также поддерживаются большинством библиотек отображения, более высокие порядки вам понадобятся для визуализации.

Если вы пытаетесь аппроксимировать данные с помощью кривых Безье, существует целый ряд алгоритмов аппроксимации, которые сводят плотно упакованные данные к кривым Безье. Если вы ищете способ рисовать кривые с множеством точек, кривые B-сплайнов могут быть полезным решением. Они легко конвертируются в кривые Безье для рендеринга. См. этот документ для базового введения в кривые B-сплайна.

...