GDI+ 中的貝茲曲線
Bézier 曲線是由四個點所指定的曲線:兩個終點(p1 和 p2)和兩個控制點(c1 和 c2)。 曲線從 p1 開始,在 p2 結束。 曲線不會通過控制點,但控制點會作為磁石,以特定方向拉扯曲線,並影響曲線彎曲的方式。 下圖顯示 Bézier 曲線及其端點和控制點。
曲線從 p1 開始,朝控制點 c1 移動。 曲線在 p1 的切線是從 p1 繪製到 c1 的線條。 端點 p2 的切線是從 c2 繪製到 p2 的線條。
繪製 Bézier 曲線
若要繪製 Bézier 曲線,您需要 Graphics 類別的實例和 Pen。 Graphics 類別的實例會提供 DrawBezier 方法,而 Pen 會儲存用來呈現曲線之線條的寬度和色彩等屬性。 Pen 會作為其中一個引數傳遞至 DrawBezier 方法。 傳遞至 DrawBezier 方法的其餘引數是端點和控制點。 下列範例會繪製具有起點 (0, 0)、控制點 (40, 20) 和 (80, 150) 和終點 (100, 10) 的 Bézier 曲線 :
myGraphics.DrawBezier(myPen, 0, 0, 40, 20, 80, 150, 100, 10);
myGraphics.DrawBezier(myPen, 0, 0, 40, 20, 80, 150, 100, 10)
下圖顯示曲線、控制點和兩條切線。
Bézier 曲線最初由 Pierre Bézier 開發,用於汽車產業的設計。 此後,它們已證明在許多類型的電腦輔助設計中很有用,也用來定義字型的外框。 Bézier 曲線可以產生各種不同的圖形,其中一些如下圖所示。