Jump to content

Составная кривая Безье

(Перенаправлено с Безигона )

Безье — красный безье проходит через синие вершины, зеленые точки — это контрольные точки, определяющие форму соединяющихся кривых Безье.

В геометрическом моделировании и компьютерной графике составная кривая Безье или сплайн Безье — это сплайн, составленный из кривых Безье , который имеет не менее непрерывный . Другими словами, составная кривая Безье представляет собой серию кривых Безье, соединенных концами, где последняя точка одной кривой совпадает с начальной точкой следующей кривой. В зависимости от применения могут предъявляться дополнительные требования к гладкости (например, или непрерывность) можно добавить. [1]

Непрерывный составной Безье также называется полибезье по сходству с ломаной линией , но в то время как в полилиниях точки соединяются прямыми линиями, в полибезье точки соединяются кривыми Безье. Безьегон кривых (также называемый безигоном ) — это замкнутый путь, составленный из Безье . Он похож на многоугольник тем, что соединяет набор вершин линиями, но в то время как в многоугольниках вершины соединены прямыми линиями, в безьергоне вершины соединены кривыми Безье. [2] [3] [4] Некоторые авторы даже называют составная кривая Безье - «сплайн Безье»; [5] последний термин, однако, используется другими авторами как синоним (несоставной) кривой Безье, и они добавляют слово «составной» перед «сплайном Безье», чтобы обозначить составной случай. [6]

Возможно, наиболее распространенным применением составного Безье является описание контура каждой буквы в файле PostScript или PDF . Такие контуры состоят из одного безьергона для открытых букв или из нескольких безьергонов для закрытых букв. Современные векторной графики и компьютерных шрифтов, системы такие как PostScript , Asymptote , Metafont , OpenType и SVG, используют составные кривые Безье, состоящие из кубических кривых Безье (кривые 3-го порядка) для рисования изогнутых форм.

Функция Sinc , аппроксимированная с помощью гладкого сплайна Безье, т. е. серии плавно соединенных кривых Безье.

Плавное соединение

[ редактировать ]

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

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

Плавное соединение кубического Безье

[ редактировать ]

Даны две кубические кривые Безье с контрольными точками. и соответственно, ограничения для обеспечения непрерывности при можно определить следующим образом:

  • (позиционная непрерывность) требует, чтобы они встречались в одной и той же точке, что по определению делают все сплайны Безье. В этом примере общей точкой является
  • (непрерывность скорости) требует, чтобы соседние контрольные точки вокруг соединения были зеркалами друг друга. Другими словами, они должны следовать ограничению
  • (непрерывность касательной) требует, чтобы соседние контрольные точки были коллинеарны соединению. Это менее строго, чем непрерывность, оставляя дополнительную степень свободы, которую можно параметризовать с помощью скаляра . Тогда ограничение может быть выражено выражением

Хотя возможны следующие ограничения непрерывности, они редко используются с кубическими сплайнами Безье, поскольку другие сплайны, такие как B-сплайн или β-сплайн [7] естественно будет обрабатывать более высокие ограничения без потери локального контроля.

  • (непрерывность ускорения) ограничена . Однако применение этого ограничения ко всему кубическому сплайну Безье приведет к каскадной потере локального контроля над точками касания. Кривая по-прежнему будет проходить через каждую третью точку сплайна, но контроль над ее формой будет потерян. Чтобы достичь непрерывности с использованием кубических кривых, вместо этого рекомендуется использовать кубический однородный B-сплайн, поскольку это обеспечивает непрерывность без потери местного контроля за счет отсутствия гарантии прохождения через определенные точки
  • (непрерывность кривизны) ограничена , оставляя две степени свободы по сравнению с , в виде двух скаляров и . Возможна более высокая степень геометрической непрерывности, хотя она становится все более сложной. [8]
  • (непрерывность толчка) ограничена . Применение этого ограничения к кубическому сплайну Безье приведет к полной потере локального управления, поскольку весь сплайн теперь полностью ограничен и определяется контрольными точками первой кривой. Фактически, это, возможно, больше не сплайн, поскольку его форма теперь эквивалентна бесконечной экстраполяции первой кривой, что делает ее не только непрерывно, но , поскольку соединения между отдельными кривыми больше не существуют

Аппроксимация дуг окружности

[ редактировать ]

Если примитивы дуг окружности не поддерживаются в конкретной среде, их можно аппроксимировать кривыми Безье . [9] Обычно восемь квадратных сегментов [10] или четыре кубических сегмента используются для аппроксимации круга. Желательно найти длину контрольных точек, которые приводят к наименьшей ошибке аппроксимации для заданного количества кубических сегментов.

Использование четырех кривых

[ редактировать ]

90 градусов Рассматривая только единичную дугу окружности в первом квадранте , мы определяем конечные точки и с контрольными точками и соответственно, как:

Из определения кубической кривой Безье имеем:

С точки зрения в качестве средней точки дуги мы можем написать следующие два уравнения:

Решение этих уравнений для координаты x (и тождественно для координаты y) дает:

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

величина отклонения радиуса до 1 уменьшается примерно в 3 раза, до 0,000068 (за счет выводимости аппроксимируемой окружной кривой в конечных точках).

Общий случай

[ редактировать ]

Мы можем аппроксимировать круг радиуса из произвольного числа кубических кривых Безье. Пусть дуга начинается в точке и закончить в точке , расположенный на равных расстояниях выше и ниже оси X, охватывающий дугу угла :

Контрольные точки могут быть записаны как: [11]

В шрифтах TrueType используются составные кривые Безье, состоящие из квадратичных кривых Безье (кривые 2-го порядка). Чтобы описать типичный дизайн шрифта в виде компьютерного шрифта с любой заданной точностью, для Безье 3-го порядка требуется меньше данных, чем для Безье 2-го порядка; а для этого, в свою очередь, требуется меньше данных, чем для серии прямых линий. Это верно, даже несмотря на то, что любой сегмент прямой требует меньше данных, чем любой сегмент параболы; и этот параболический сегмент, в свою очередь, требует меньше данных, чем любой сегмент кривой 3-го порядка.

См. также

[ редактировать ]
  1. ^ Евгений Владимирович Шикин; Александр Иванович Плис (14 июля 1995 г.). Руководство по сплайнам для пользователя . ЦРК Пресс. п. 96. ИСБН  978-0-8493-9404-1 .
  2. ^ API-интерфейс Microsoft Polybezier
  3. ^ Справочник по API Papyrus beziergon
  4. ^ "Лучшая коробка с мелками" . ИнфоМир. 1991.
  5. ^ Ребаза, Хорхе (24 апреля 2012 г.). Первый курс прикладной математики . Джон Уайли и сыновья. ISBN  9781118277157 .
  6. ^ (Фирма), Wolfram Research (13 сентября 1996 г.). Стандартные дополнительные пакеты Mathematica® 3.0 . Издательство Кембриджского университета. ISBN  9780521585859 .
  7. ^ Гудман, TNT (9 декабря 1983 г.). «Свойства β-сплайнов» . Журнал теории приближения . 44 (2): 132–153. дои : 10.1016/0021-9045(85)90076-0 .
  8. ^ ДеРоуз, Энтони Д. (1 августа 1985 г.). «Геометрическая непрерывность: независимая от параметризации мера непрерывности для компьютерного геометрического проектирования» .
  9. ^ Станислав, Г. Адам. «Рисование круга с помощью кривых Безье» . Проверено 10 апреля 2010 г.
  10. ^ «Оцифровка буквенных конструкций» . Яблоко . Проверено 26 июля 2014 г.
  11. ^ ДеВенеза, Ричард. «Рисование круга с помощью кривых Безье» (PDF) . Проверено 10 апреля 2010 г.
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: db87be8f06d58d161a9170602c622040__1708796280
URL1:https://arc.ask3.ru/arc/aa/db/40/db87be8f06d58d161a9170602c622040.html
Заголовок, (Title) документа по адресу, URL1:
Composite Bézier curve - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)