DrawPath
Vektorska grafika, definisanje i crtanje putanja
Opis
Iscrtava trenutnu putanju — sklopljenu pozivima StartPath, AddLineToPath, AddCurveToPath, AddArcToPath i ClosePath — primenom pravila popunjavanja nenultog uvijanja. Kada se putanja iscrta, njeno stanje se resetuje, tako da sledeći StartPath počinje nov oblik.
Sintaksa
Delphi
Function TPDFlib.DrawPath(PathOptions: Integer): Integer;
ActiveX
Function PDFlib::DrawPath(PathOptions As Long) As Long
DLL
int DLDrawPath(int InstanceID, int PathOptions);
Parametri
| PathOptions | Režim iscrtavanja: 0 — Samo kontura (potez trenutnim podešavanjima linije). 1 — Samo popuna (trenutnom bojom popune i pravilom nenultog uvijanja). 2 — Popuna i kontura. |
|---|
Povratne vrednosti
| 0 | Failed — PathOptions is out of range, no document is open, or no path has been started. |
|---|---|
| 1 | Putanja je uspešno nacrtana |
Napomene
Postavite boje poteza i ispune i atribute linija (SetLineWidth, SetLineCap, SetLineDash) pre poziva DrawPath. Trenutno grafičko stanje se uzorkuje na mestu poziva
Za preklopne ili samoukrštajuće putanje pravilo nenultog uvijanja tretira svaku potputanju kao deo iste oblasti: rupa izrezana iz većeg oblika zahteva da se unutrašnja potputanja uvija u suprotnom smeru od spoljašnje. Kada to nije zgodno, pozovite DrawPathEvenOdd — pravilo par-nepar pri svakom ukrštanju jednostavno naizmenično prelazi između unutrašnjosti i spoljašnjosti, pa je izrezivanje rupa trivijalno.
Primer
// Filled outlined diamond
PDF.SetStrokeColor(0, 0, 0);
PDF.SetFillColor(0.6, 0.8, 1);
PDF.SetLineWidth(1.5);
PDF.StartPath(150, 100);
PDF.AddLineToPath(200, 150);
PDF.AddLineToPath(150, 200);
PDF.AddLineToPath(100, 150);
PDF.ClosePath;
PDF.DrawPath(2); // 2 = fill and outlineVidi takođe
DrawPathEvenOdd, StartPath, AddLineToPath, AddCurveToPath, AddArcToPath, ClosePath, SetLineWidth