Практическое руководство. Создание эллиптической дуги

В этом примере показано, как нарисовать эллиптическую дугу. Чтобы создать эллиптическую дугу, используйте классы PathGeometry, PathFigure и ArcSegment.

Пример

В следующих примерах отрисовывается эллиптическая дуга от (10,100) до (200,100). Дуга имеет Size 100 на 50 независимых от устройства пикселей, RotationAngle 45 градусов, параметр IsLargeArc, равный true, и SweepDirection, равный Counterclockwise.

В языке XAML можно использовать синтаксис атрибута для описания пути.

<Path Stroke="Black" StrokeThickness="1"  
  Data="M 10,100 A 100,50 45 1 0 200,100" />

(Обратите внимание, что этот синтаксис атрибута фактически создает StreamGeometryупрощенную версию PathGeometry. Дополнительные сведения см. на странице Синтаксис разметки пути.)

В XAML можно также нарисовать эллиптическую дугу, явно используя теги объектов. Следующее эквивалентно предыдущей разметке XAML.

<Path Stroke="Black" StrokeThickness="1">
  <Path.Data>
    <PathGeometry>
      <PathGeometry.Figures>
        <PathFigureCollection>
          <PathFigure StartPoint="10,100">
            <PathFigure.Segments>
              <PathSegmentCollection>
                <ArcSegment Size="100,50" RotationAngle="45" IsLargeArc="True" SweepDirection="CounterClockwise" Point="200,100" />
              </PathSegmentCollection>
            </PathFigure.Segments>
          </PathFigure>
        </PathFigureCollection>
      </PathGeometry.Figures>
    </PathGeometry>
  </Path.Data>
</Path>

Данный пример является частью большого примера. Полный пример см. в разделе Пример геометрических объектов.

См. также