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Η γωνιακή σάρωση σε μοίρες. Οι θετικές τιμές σαρώνονται δεξιόστροφα· οι αρνητικές αριστερόστροφα. Η τιμή πρέπει να είναι μη μηδενική. Το 360 (ή -360) σχεδιάζει πλήρη κύκλο

Τιμές επιστροφής

0Αποτυχία — δεν είναι ανοικτό κανένα έγγραφο, δεν έχει ξεκινήσει διαδρομή ή το TotalAngle είναι μηδέν
1Το τόξο προστέθηκε στην τρέχουσα διαδρομή

Παρατηρήσεις

Η ακτίνα προκύπτει έμμεσα από την απόσταση του τρέχοντος σημείου (που ορίζεται από το πιο πρόσφατο StartPath, AddLineToPath, AddCurveToPath ή προηγούμενο AddArcToPath) από το κέντρο που δίνεται στην κλήση. Για πλήρη κύκλο, καλέστε StartPath σε οποιοδήποτε σημείο της περιφέρειας και μετά AddArcToPath με το επιθυμητό κέντρο και σάρωση 360.

Το τόξο αποδίδεται ως αλυσίδα τμημάτων κυβικής Bézier καμπύλης, ακριβές μέσα σε ανοχή υπο-_PIXEL για τυπικά μεγέθη 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