DrawPath
Vektorska grafika, definiranje putanja i crtanje
Opis
Iscrtava trenutačnu putanju — sastavljenu od StartPath, AddLineToPath, AddCurveToPath, AddArcToPath i ClosePath — pravilom ispune ne-nultog namatanja. Nakon što se putanja iscrtava, stanje putanje resetira se, pa sljedeći StartPath započinje novi 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 | Način iscrtavanja: 0 — samo obrub (iscrtavanje uz trenutačne postavke linija). 1 — samo ispunjavanje (trenutačnom bojom ispune i pravilom ne-nultog namatanja). 2 — ispunjavanje i obrub. |
|---|
Povratne vrijednosti
| 0 | Failed — PathOptions is out of range, no document is open, or no path has been started. |
|---|---|
| 1 | Putanja je uspješno nacrtana |
Napomene
Boje poteza i ispuna te atribute linije (SetLineWidth, SetLineCap, SetLineDash) postavite prije poziva DrawPath. Trenutačno se stanje grafike uzorkuje na mjestu poziva
Kod preklopnih ili samopresijecajućih putanja pravilo ne-nultog namatanja svaku podputanju smatra dijelom iste regije: rupa izrezana iz većeg oblika zahtijeva da se unutarnja podputanja crta u suprotnom smjeru od vanjske. Kada to nije praktično, pozovite umjesto toga DrawPathEvenOdd — pravilo parno-nepravog pri svakom presijecanju jednostavno naizmjenično mijenja unutrašnjost i vanjštinu, što izrezivanje rupa čini trivijalnim.
Primjer
// 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đer
DrawPathEvenOdd, StartPath, AddLineToPath, AddCurveToPath, AddArcToPath, ClosePath, SetLineWidth