AddArcToPath
Grafica vettoriale, definizione e disegno dei tracciati
Descrizione
Aggiunge un arco circolare attorno a (CenterX, CenterY); il raggio è la distanza dal punto corrente e percorre TotalAngle gradi. Il punto corrente diventa l'estremità, da cui proseguono AddLineToPath o AddArcToPath
Sintassi
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);
Parametri
| CenterX | La coordinata orizzontale del centro dell'arco |
|---|---|
| CenterY | La coordinata verticale del centro dell'arco |
| TotalAngle | Ampiezza angolare in gradi. I valori positivi procedono in senso orario; quelli negativi in senso antiorario. Il valore deve essere diverso da zero. 360 o -360 disegna un cerchio completo |
Valori restituiti
| 0 | Operazione non riuscita — nessun documento è aperto, nessun tracciato è stato avviato oppure TotalAngle è zero |
|---|---|
| 1 | L'arco è stato aggiunto al tracciato corrente |
Note
Il raggio viene ricavato implicitamente dalla distanza tra il punto corrente, impostato dalla chiamata più recente a StartPath, AddLineToPath, AddCurveToPath o da un precedente AddArcToPath, e il centro passato a questa chiamata. Per disegnare un cerchio completo, chiamare StartPath su un punto qualsiasi della circonferenza e quindi AddArcToPath con il centro desiderato e un'ampiezza di 360
L'arco viene renderizzato come una catena di segmenti Bézier cubici, con precisione entro la tolleranza subpixel per le dimensioni tipiche delle pagine PDF.
Esempio
// 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);Vedere anche
StartPath, AddLineToPath, AddCurveToPath, AddBoxToPath, DrawPath, DrawPathEvenOdd