AddArcToPath
Đồ họa vector, Định nghĩa và vẽ đường dẫn
Mô tả
Thêm một cung tròn vào path hiện tại. Cung được vẽ quanh điểm tâm (CenterX, CenterY); bán kính của nó bằng khoảng cách từ tâm tới điểm hiện tại của path, và nó quét trong TotalAngle độ. Điểm hiện tại sau lời gọi là điểm cuối của cung, nên các lần gọi AddLineToPath hay AddArcToPath tiếp theo nối tiếp từ đó
Cú pháp
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);
Tham số
| CenterX | Tọa độ ngang của tâm cung |
|---|---|
| CenterY | Tọa độ dọc của tâm cung |
| TotalAngle | Góc quét tính bằng độ. Giá trị dương quét theo chiều kim đồng hồ; giá trị âm quét ngược chiều kim đồng hồ. Giá trị phải khác 0. 360 (hay -360) vẽ trọn một đường tròn |
Giá trị trả về
| 0 | Failed — no document is open, no path has been started, or TotalAngle is zero. |
|---|---|
| 1 | Cung đã được thêm vào path hiện tại |
Ghi chú
Bán kính suy ngầm từ khoảng cách giữa điểm hiện tại (đặt bởi StartPath, AddLineToPath, AddCurveToPath, hay AddArcToPath trước đó) và tâm truyền vào lời gọi này. Để vẽ trọn một đường tròn, hãy StartPath tới một điểm bất kỳ trên đường tròn rồi gọi AddArcToPath với tâm mong muốn và góc quét 360
The arc is rendered as a chain of cubic Bézier segments, accurate to within sub-pixel tolerance for typical PDF page sizes.
Ví dụ
// 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);Xem thêm
StartPath, AddLineToPath, AddCurveToPath, AddBoxToPath, DrawPath, DrawPathEvenOdd