折線(Polyline)、多邊形(Polygon)

singhwong發表於2020-12-07
  • Polyline

Playline所繪製的圖形由多個線段組成,因此它公開Points屬性,它表示一系列座標點的集合。這些點將用於描述Polyline圖形中各線段相接處的頂點(包括起點和終點)。

Points集合在XAML中可以直接用字串寫上多個點,書寫方法有兩種:

  1. 每個座標點之間使用至少一個空格開分隔,橫座標和縱座標用英文的逗號分隔。
  2. 一個座標點的橫座標與縱座標用一個空格來分隔,這時候點與點之間就不能用單個空格來分隔了,因為這樣書寫會很混亂,編譯器無法識別,因此點與點之間至少要用兩個空格來分隔。

示例如下,折線的起點是(50,0),終點是(-50,100):

            <Polyline Stroke="SkyBlue" StrokeThickness="10" Width="260" Height="200"
                      Points="50,0 100,50 50,100 0,50 -50,100" Stretch="Uniform"/>

  • Polygon

與Polyline不同,Polygon會把折線段的起點與終點用一根直線連線起來,形成一個閉合的圖形區域。

對於Polygon來說,無論Points集合中定義了多少個頂點,最後都會把起點與終點連線起來。

StrokeDashCap屬性用來指定每一條線段的兩個端點的形狀,即錨點(線帽)的形狀。例如下面示例中,將StrokeDashCap屬性設定為Triangle,表示組成圖形的線段的兩端將呈現為三角形。StrokeDashCap屬性的值由PenLineCap列舉提供。

            <Polygon Width="200" Height="200" Stroke="DeepPink" StrokeThickness="9"
                     Points="100,0 200,100 100,200 0,100" StrokeDashCap="Triangle" Stretch="Uniform"/>

 

相關文章