AddArcToPath
Vector graphics, Path definition and drawing
Description
Aggiunge un arco circolare al tracciato corrente; l'arco viene disegnato attorno al punto centrale (CenterX, CenterY), il suo raggio è pari alla distanza dal centro al punto corrente del tracciato ed effettua una rotazione di TotalAngle gradi; il punto corrente dopo la chiamata è il punto finale dell'arco, in modo che le successive chiamate a AddLineToPath o AddArcToPath continuino da lì
Syntax
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);
Parameters
| CenterX | La coordinata orizzontale del centro dell'arco |
|---|---|
| CenterY | La coordinata verticale del centro dell'arco |
| TotalAngle | The angular sweep in degrees. Positive values sweep clockwise; negative values sweep anti-clockwise. The value must be non-zero. 360 (or -360) draws a full circle. |
Return values
| 0 | Non riuscito — nessun documento è aperto, nessun tracciato è stato iniziato o TotalAngle è zero |
|---|---|
| 1 | L'arco è stato aggiunto al percorso corrente |
Remarks
Il raggio deriva implicitamente dalla distanza tra il punto corrente (impostato dal più recente StartPath, AddLineToPath, AddCurveToPath o dal precedente AddArcToPath) e il centro passato a questa chiamata; per disegnare un cerchio completo, effettuare una chiamata a StartPath su qualsiasi punto della circonferenza del cerchio e chiamare AddArcToPath con il centro desiderato e un angolo di sweep di 360
L'arco viene renderizzato come una catena di segmenti Bézier cubici, accurata entro la tolleranza dei sub-pixel per le dimensioni tipiche delle pagine PDF
Example
// 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);See also
StartPath, AddLineToPath, AddCurveToPath, AddBoxToPath, DrawPath, DrawPathEvenOdd