DrawPathEvenOdd

Vektorinė grafika, kelio apibrėžimas ir braižymas

Aprašymas

Nupiešia dabartinį kelią naudodama lyginio-nelyginio užpildymo taisyklę vietoj nulinio vijimo taisyklės, kurios naudoja DrawPath. Su lyginio-nelyginio taisykle taškas laikomas "viduje" kelio, kada nuo jo nubrėžtas spindulys kerta kelią nelyginį kartų skaičių – persidengiantys pakeliai todėl kaitaliojasi tarp užpildytų ir neužpildytų juostų, nevertinant pakelio krypties.

Sintaksė

Delphi

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

ActiveX

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

DLL

int DLDrawPathEvenOdd(int InstanceID, int PathOptions);

Parametrai

PathOptionsPiešimo režimas:

0 — tik kontūras.
1 — tik užpildymas (nelyginumo-lyginumo taisyklė).
2 — užpildymas ir kontūras

Grąžinamos reikšmės

0Failed — PathOptions is out of range, no document is open, or no path has been started.
1Kelias nupieštas sėkmingai

Pastabos

Naudokite nelyginumo-lyginumo taisyklę statydami figūras, tokias kaip spurgos, poveržlės arba bet kokia figūra, išpjaunanti skylę pro didesnįjį kontūrą. Su nenulinejo apvyniojimo taisykle, kurią naudoja DrawPath, tas pats statymas veikia tik tada, kai vidinis po-kelis piešiamas priešinga kryptimi; su nelyginumo-lyginumo taisykle kryptis nesvarbi

Pavyzdys

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

Taip pat žiūrėkite

DrawPath, StartPath, AddArcToPath, ClosePath