AddArcToPath

ベクターグラフィックス、パスの定義と描画

説明

現在のパスに円弧を追加する。円弧は中心点 (CenterX, CenterY) の周囲に描画され、半径は中心からパスの現在点までの距離、掃引角は TotalAngle 度。呼び出し後の現在点は円弧の終点となるため、後続の AddLineToPath または AddArcToPath 呼び出しはそこから続行する

構文

Delphi

Function TPDFlib.AddArcToPath(CenterX, CenterY, TotalAngle: Double): Integer;

ActiveX

Function PDFlib::AddArcToPath(CenterX As Double, CenterY As Double, TotalAngle As Double) As Long

DLL

int DLAddArcToPath(int InstanceID, double CenterX, double CenterY, double TotalAngle);

パラメータ

CenterX円弧中心の水平座標
CenterY円弧の中心の垂直座標
TotalAngle角度スイープ(度単位)。正の値は時計回り、負の値は反時計回りにスイープします。値は 0 以外でなければなりません。360(または -360)で完全な円を描画します

戻り値

0失敗しました — 文書が開かれていない、パスが開始されていない、または TotalAngle がゼロです
1円弧が現在のパスに追加されました

備考

半径は、現在のポイント(直近の StartPath、AddLineToPath、AddCurveToPath、または前の AddArcToPath で設定)と、この呼び出しに渡す中心との距離から暗黙的に導出されます。完全な円を描画するには、円周上の任意のポイントまで StartPath を実行し、目的の中心と AddArcToPath を呼び出し、スイープに 360 を指定します

円弧は 3 次ベジエセグメントの連鎖としてレンダリングされ、一般的な PDF ページサイズではサブピクセル許容差内の精度となる

例

// A pie slice — straight edge, arc, straight edge back to centre
PDF.SetFillColor(0.7, 0.2, 0.2);

PDF.StartPath(200, 200);               // pie centre
PDF.AddLineToPath(280, 200);           // out to circle (radius 80, angle 0°)
PDF.AddArcToPath(200, 200, 90);        // sweep 90° clockwise
PDF.ClosePath;                         // back to the centre
PDF.DrawPath(2);                       // 2 = fill and outline

// A complete circle drawn as a single arc
PDF.StartPath(300, 100);
PDF.AddArcToPath(250, 100, 360);
PDF.ClosePath;
PDF.DrawPath(0);

関連項目

StartPath、AddLineToPath、AddCurveToPath、AddBoxToPath、DrawPath、DrawPathEvenOdd