【wpf】Path畫扇形以及Path的Data屬性的理解


                                <Path x:Name="PathFillColor" Fill="{TemplateBinding Property=Button.Background}">
                                    <Path.Data>
                                        <PathGeometry>
                                            <PathFigure StartPoint="1,24" IsClosed="True">
                                                <LineSegment Point="35,58"/>
                                                <ArcSegment Size="55,20" Point="59,48" SweepDirection="Clockwise"/>
                                                <LineSegment Point="59,1"/>
                                                <ArcSegment Size="80,80" Point="1,24" SweepDirection="Counterclockwise"/>
                                            </PathFigure>
                                        </PathGeometry>
                                    </Path.Data>
                                </Path>

  

PathFigure派生自 PathSegment 的類(例如 ArcSegmentBezierSegment 和 LineSegment),表示特定類型的幾何圖形段。

常這些包括:ArcSegment

BezierSegment , LineSegmentPolyBezierSegmentPolyLineSegmentPolyQuadraticBezierSegmentQuadraticBezierSegment.

1,LineSegment 是最簡單的線段類型。 線條的起點是前一個線段的起點或最后一點。

2,ArcSegment表示兩點之間的一條橢圓弧。Size代表圓弧的X,Y軸半徑,例子中Size="55,20"表示X半徑為55,Y軸半徑為20的橢圓。

  SweepDirection獲取或設置一個值,該值指定是以 Clockwise[指定按順時針(正角)方向繪制圓弧。] 方向還是以 Counterclockwise [指定按逆時針(負角)方向繪制圓弧。]方向繪制弧

3,BezierSegment 由四個點定義:一個起點、一個終點 (Point3) 和兩個控制點(Point1 和 Point2)。 BezierSegment 類不包含用於曲線起點的屬性;它只定義終點。 曲線的起點是 PathFigure 的當前點,向該點添加了 BezierSegment。

 

 

[UWP]實用的Shape指南

 

Path的Data屬性詳解

出處:http://blog.csdn.net/johnsuna/article/details/1885597

<Path Stroke="Black" Data="M 100,240 C 510,300 80,100 300,160 H40 v80" />

1. 移動指令:Move Command(M):M 起始點  或者:m 起始點
比如:M 100,240或m 100,240
使用大寫M時,表示絕對值; 使用小寫m時; 表示相對於前一點的值,如果前一點沒有指定,則使用(0,0)。

2. 繪制指令(Draw Command):
我們可以繪制以下形狀:
(1) 直線:Line(L)格式:L 結束點坐標 或: l 結束點坐標。
(2) 水平直線: Horizontal line(H)格式:H x值 或 h x值(x為System.Double類型的值)
(3) 垂直直線: Vertical line(V)格式:V y值 或 v y值(y為System.Double類型的值)
(4) 三次方程式貝塞爾曲線: Cubic Bezier curve(C)格式:C 第一控制點 第二控制點 結束點 或 c 第一控制點 第二控制點 結束點
(5) 二次方程式貝塞爾曲線: Quadratic Bezier curve(Q)格式:Q 控制點 結束點 或 q 控制點 結束點
(6) 平滑三次方程式貝塞爾曲線: Smooth cubic Bezier curve(S)格式:S 控制點 結束點 或 s 控制點 結束點
(7) 平滑二次方程式貝塞爾曲線: smooth quadratic Bezier curve(T)格式:T 控制點 結束點 或 t 控制點 結束點
(8) 橢圓圓弧: elliptical Arc(A) 

Z指令,它就是一個關閉指令(close Command),表示封閉指定形狀,即將首尾點連接起來形成封閉的區域。

上面每種形狀后用括號括起的英文字母為命令簡寫的大寫形式,但你也可以使用小寫。使用大寫與小寫的區別是:大寫是絕對值,小寫是相對值。

當我們重復使用同一種類型時,就可以省略前面的命令。比如:L 100, 200 L 300,400簡寫為:L 100, 200 300,400。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2026 CODEPRJ.COM