首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> Delphi

Delphi GDI+ 學習筆記 (18):DrawClosedCurve 閉合樣條曲線

     編輯:Delphi

自動閉合的 Cardinal Spline:張力控制、填充模式

DrawClosedCurve 依給定點陣列繪製平滑閉合曲線 (Cardinal Spline),自動連接首尾點。tension 參數 (0.0~1.0,預設 0.5) 控制曲線緊繃度:0=多邊形直線,1=最圓滑。FillClosedCurve 支援 FillModeAlternate (交替/奇偶) 與 FillModeWinding (繞數) 兩種填充規則。

範例:繪製與填充


pts[0] := (77,44); pts[1] := (66,111); pts[2] := (88,222);
pts[3] := (111,88); pts[4] := (222,66);
g.DrawClosedCurve(p, PGPPoint(@pts), Length(pts), 2.5); // tension=2.5 (較緊)
g.FillClosedCurve(sb, PGPPoint(@pts), Length(pts), FillModeAlternate, 2.5);

FillMode 差異

  • Alternate (奇偶):射線與路徑交點為奇數則填充。適合簡單圖形。
  • Winding (繞數):依路徑方向累加繞數,非零則填充。適合自相交、複雜圖形。

閉合曲線常用於有機形狀繪製、氣泡對話框、流體模擬視覺化。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved