Xamarin.Forms Shapes: Polyline

Beispiel herunterladen Das Beispiel herunterladen

Die Polyline -Klasse leitet sich von der Shape -Klasse ab und kann verwendet werden, um eine Reihe verbundener gerader Linien zu zeichnen. Eine Polylinie ähnelt einem Polygon, mit der Ausnahme, dass der letzte Punkt in einer Polylinie nicht mit dem ersten Punkt verbunden ist. Informationen zu den Eigenschaften, die die Polyline -Klasse von der Shape -Klasse erbt, finden Sie unter Xamarin.Forms Shapes.

Polyline definiert die folgenden Eigenschaften:

  • Points, vom Typ PointCollection, bei dem es sich um eine Auflistung von Point Strukturen handelt, die die Scheitelpunkte der Polylinie beschreiben.
  • FillRule, vom Typ FillRule, der angibt, wie die sich überschneidenden Bereiche in der Polylinie kombiniert werden. Der Standardwert dieser Eigenschaft ist FillRule.EvenOdd.

Diese Eigenschaften werden durch BindableProperty-Objekte gestützt, was bedeutet, dass sie Ziele von Datenbindungen sein können, und geformt.

Der PointsCollection Typ ist ein ObservableCollection von Point -Objekten. Die Point Struktur definiert X die Eigenschaften und Y vom Typ double, die ein x- und y-Koordinatenpaar im 2D-Raum darstellen. Daher sollte die Points -Eigenschaft auf eine Liste von x-Koordinaten- und y-Koordinatenpaaren festgelegt werden, die die polylinen Vertexpunkte beschreiben, die durch ein einzelnes Komma und/oder ein oder mehrere Leerzeichen getrennt sind. Beispielsweise sind "40,10 70,80" und "40 10, 70 80" gültig.

Weitere Informationen zur FillRule Enumeration finden Sie unter Xamarin.Forms Shapes: Füllregeln.

Erstellen einer Polylinie

Um eine Polylinie zu zeichnen, erstellen Sie ein Polyline Objekt, und legen Sie dessen Points Eigenschaft auf die Scheitelpunkte einer Form fest. Um der Polylinie eine Gliederung zu geben, legen Sie ihre Stroke Eigenschaft auf ein -abgeleitetes BrushObjekt fest. Die StrokeThickness -Eigenschaft gibt die Stärke des polylinen Umrisses an. Weitere Informationen zu Brush Objekten finden Sie unter Xamarin.Forms Brushes.

Wichtig

Wenn Sie die Fill Eigenschaft eines Polyline auf ein -abgeleitetes BrushObjekt festlegen, wird der Innenbereich der Polylinie gezeichnet, auch wenn sich Start- und Endpunkt nicht überschneiden.

Das folgende XAML-Beispiel zeigt, wie eine Polylinie gezeichnet wird:

<Polyline Points="0,0 10,30, 15,0 18,60 23,30 35,30 40,0 43,60 48,30 100,30"
          Stroke="Red" />

In diesem Beispiel wird eine rote Polylinie gezeichnet:

Polyline

Das folgende XAML-Beispiel zeigt, wie eine gestrichelte Polylinie gezeichnet wird:

<Polyline Points="0,0 10,30, 15,0 18,60 23,30 35,30 40,0 43,60 48,30 100,30"
          Stroke="Red"
          StrokeThickness="2"
          StrokeDashArray="1,1"
          StrokeDashOffset="6" />

In diesem Beispiel ist die Polylinie gestrichelt:

Gestrichelte Polylinie

Weitere Informationen zum Zeichnen einer gestrichelten Polylinie finden Sie unter Zeichnen gestrichelter Formen.

Das folgende XAML-Beispiel zeigt eine Polylinie, die die Standardfüllregel verwendet:

<Polyline Points="0 48, 0 144, 96 150, 100 0, 192 0, 192 96, 50 96, 48 192, 150 200 144 48"
          Fill="Blue"
          Stroke="Red"
          StrokeThickness="3" />

In diesem Beispiel wird das Füllverhalten der Polylinie mithilfe der EvenOdd Füllregel bestimmt.

EvenOdd Polyline

Das folgende XAML-Beispiel zeigt eine Polylinie, die die Nonzero Füllregel verwendet:

<Polyline Points="0 48, 0 144, 96 150, 100 0, 192 0, 192 96, 50 96, 48 192, 150 200 144 48"
          Fill="Black"
          FillRule="Nonzero"
          Stroke="Yellow"
          StrokeThickness="3" />

Nonzero Polyline

In diesem Beispiel wird das Füllverhalten der Polylinie mithilfe der Nonzero Füllregel bestimmt.