DrawPathEvenOdd

Vektorska grafika, definisanje i crtanje putanja

Opis

Iscrtava trenutnu putanju primenom pravila popunjavanja par-nepar umesto pravila nenultog uvijanja koje koristi DrawPath. Po pravilu par-nepar, tačka se smatra "unutrašnjom" ako je zrak povučen iz nje preseca putanju neparan broj puta — preklopne potputanje se stoga naizmenično smenjuju između popunjenih i nepopunjenih traka, bez potrebe da se vodi računa o smeru potputanje.

Sintaksa

Delphi

Function TPDFlib.DrawPathEvenOdd(PathOptions: Integer): Integer;

ActiveX

Function PDFlib::DrawPathEvenOdd(PathOptions As Long) As Long

DLL

int DLDrawPathEvenOdd(int InstanceID, int PathOptions);

Parametri

PathOptionsRežim iscrtavanja:

0 — Samo kontura.
1 — Samo popuna (pravilo par-nepar).
2 — Popuna i kontura.

Povratne vrednosti

0Failed — PathOptions is out of range, no document is open, or no path has been started.
1Putanja je uspešno nacrtana

Napomene

Koristite even-odd pravilo pri izradi oblika poput krafni, podlošaka ili bilo koje figure koja probija rupu kroz veći obris. Sa non-zero winding pravilom koje koristi DrawPath ista konstrukcija radi samo ako se unutrašnji pod-put crta u suprotnom smeru; uz even-odd pravilo smer nije bitan

Primer

// A filled square with a circular hole cut through it (donut)
PDF.SetFillColor(0, 0.4, 0.7);

PDF.StartPath(100, 100);
PDF.AddLineToPath(200, 100);
PDF.AddLineToPath(200, 200);
PDF.AddLineToPath(100, 200);
PDF.ClosePath;

// Inner circle — direction does not matter under even-odd
PDF.StartPath(170, 150);            // start on the right side of the circle
PDF.AddArcToPath(150, 150, 360);    // centre (150, 150), full revolution
PDF.ClosePath;

PDF.DrawPathEvenOdd(1);                // 1 = fill

Vidi takođe

DrawPath, StartPath, AddArcToPath, ClosePath