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각도 스윕(도 단위)입니다. 양수는 시계 방향, 음수는 반시계 방향이며 0일 수 없습니다. 360(또는 -360)은 완전한 원을 그립니다

반환 값

0실패 — 열린 문서가 없거나 경로가 시작되지 않았거나 TotalAngle이 0입니다
1원호를 현재 경로에 추가했습니다

비고

반지름은 현재 지점(가장 최근의 StartPath, AddLineToPath, AddCurveToPath 또는 이전 AddArcToPath로 설정)과 이 호출에 전달된 중심 사이의 거리에서 암시적으로 산출됩니다. 완전한 원을 그리려면 원주의 임의 지점에서 StartPath를 호출하고 원하는 중심과 AddArcToPath, 360의 회전 각도를 사용하십시오

원호는 일반적인 PDF 페이지 크기에서 서브픽셀 허용 오차 이내로 정확한 3차 Bézier 세그먼트 체인으로 렌더링됩니다

예제

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