AddArcToPath

Vektorgrafik, Bandefinition och ritning

Beskrivning

Lägger till en cirkelbåge till aktuellt path. Bågen ritas runt mittpunkten (CenterX, CenterY); dess radie är avståndet från mittpunkten till pathens aktuella punkt, och den sveper TotalAngle grader. Den aktuella punkten efter anropet är bågens slutpunkt, så efterföljande AddLineToPath- eller AddArcToPath-anrop fortsätter därifrån

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);

Parametrar

CenterXBågens mittpunkts horisontella koordinat
CenterYBågens mittpunkts vertikala koordinat
TotalAngleVinkelsvepet i grader. Positiva värden sveper medurs; negativa värden sveper moturs. Värdet måste vara skilt från noll. 360 (eller -360) ritar en hel cirkel

Returvärden

0Misslyckades — inget dokument är öppet, ingen path har påbörjats, eller TotalAngle är noll
1Bågen lades till aktuellt path

Anmärkningar

Radien härleds implicit från avståndet mellan den aktuella punkten (satt av den senaste StartPath, AddLineToPath, AddCurveToPath eller tidigare AddArcToPath) och mittpunkten som detta anrop lämnar. För att rita en hel cirkel, StartPath till valfri punkt på cirkelns rand och anropa AddArcToPath med önskad mittpunkt och ett svep på 360Bågen renderas som en kedja av kubiska Bézier-segment, korrekt inom subpixeltolerans för typiska PDF-sidstorlekar

Bågen renderas som en kedja av kubiska Bézier-segment, med noggrannhet inom subpixeltolerans för typiska PDF-sidstorlekar.

Exempel

// 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);

Se även

StartPath, AddLineToPath, AddCurveToPath, AddBoxToPath, DrawPath, DrawPathEvenOdd