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

Дъгата се изобразява като верига от кубични сегменти на Безие, с под-пикселна точност за типични размери на 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