Show / Hide Table of Contents

BéБезье сплайны в GDI +

Сплайн Безье — кривой, определяемый четырьмя точками: двумя конечными точками (p1 и p2) и двумя контрольными точками (c1 и c2). Кривая начинается с p1 и заканчивается в точке p2. Кривая проходит через контрольные точки, но контрольные точки действуют как магниты, который извлекает кривой определенные инструкции и влияние на способ изгиба кривой. Ниже показан кривую Безье, а также его конечные точки и точки управления.

Сплайны Безье

Кривая начинается в точке p1 и переходит к контрольной точки c1. Касательной к кривой в p1 — это линия, проведенная через p1 до c1. Касательной в конечной точке p2 — это линия, проведенная через c2 на p2.

Рисование сплайнов Безье

Чтобы нарисовать сплайн Безье, вам потребуется экземпляр Graphics класс и Pen. Экземпляр Graphics класс предоставляет DrawBezier метод и Pen сохраняет атрибуты, например, ширина и цвет линии, используемый для отображения кривой. Pen Передается в качестве одного из аргументов для DrawBezier метод. Остальные аргументы, передаваемые DrawBezier метод: конечные точки и точки управления. В следующем примере рисуется сплайн Безье с начальной точки (0, 0), управлять точками (40, 20) и (80, 150) и конечную точку (100, 10):

myGraphics.DrawBezier(myPen, 0, 0, 40, 20, 80, 150, 100, 10);

Кривой, контрольные точки и две касательные на следующем рисунке.

Сплайны Безье

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

Пути

См. также

  • System.Drawing.Graphics
  • System.Drawing.Pen
  • Прямые и кривые линии и фигуры
  • Построение и рисование кривых
  • Практическое руководство. Создание графических объектов для рисования
  • Практическое руководство. Создание пера
Back to top Неофициальная документация по .NET на русском языке. Лицензия: CC-BY 4.0. Основано на документации по .NET с Microsoft Docs
Generated by DocFX