AddArcToPath
Vektör grafikleri, Yol tanımlama ve çizim
Açıklama
Geçerli yola dairesel bir yay ekler. Yay, (CenterX, CenterY) merkez noktası çevresinde çizilir; yarıçapı merkezden yolun geçerli noktasına olan uzaklığa eşittir ve TotalAngle derece boyunca ilerler. Çağrıdan sonraki geçerli nokta yayın bitiş noktasıdır; bu nedenle sonraki AddLineToPath veya AddArcToPath çağrıları buradan devam eder
Sözdizimi
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);
Parametreler
| CenterX | Yay merkezinin yatay koordinatı |
|---|---|
| CenterY | Yayın merkezinin dikey koordinatı |
| TotalAngle | Derece cinsinden açısal tarama. Pozitif değerler saat yönünde, negatif değerler saat yönünün tersine tarar. Değer sıfır dışı olmalıdır. 360 (veya -360) tam daire çizer |
Dönüş değerleri
| 0 | Başarısız — açık belge veya başlatılmış yol yok ya da TotalAngle sıfır |
|---|---|
| 1 | Yay geçerli yola eklendi |
Açıklamalar
Yarıçap, geçerli nokta (en son StartPath, AddLineToPath, AddCurveToPath veya önceki AddArcToPath tarafından ayarlanır) ile bu çağrıya geçirilen merkez arasındaki uzaklıktan örtük olarak türetilir. Tam bir daire çizmek için çevredeki herhangi bir noktaya StartPath uygulayın ve istenen merkez ile AddArcToPath çağrısını 360 taramayla yapın
Yay, tipik PDF sayfa boyutlarında alt piksel toleransı içinde doğru olan bir kübik Bézier bölümleri zinciri olarak işlenir
Örnek
// 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);Ayrıca bkz
StartPath, AddLineToPath, AddCurveToPath, AddBoxToPath, DrawPath, DrawPathEvenOdd