DrawPathEvenOdd

Grafica vettoriale, definizione e disegno dei tracciati

Descrizione

Dipinge il tracciato con la regola even-odd anziché non-zero di DrawPath. Un punto è "inside" se un raggio attraversa il tracciato un numero dispari di volte — i sottotracciati alternano riempimento senza considerarne la direzione

Sintassi

Delphi

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

ActiveX

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

DLL

int DLDrawPathEvenOdd(int InstanceID, int PathOptions);

Parametri

PathOptionsModalità di disegno:

0 — Solo contorno.
1 — Solo riempimento (regola pari-dispari).
2 — Riempimento e contorno.

Valori restituiti

0Operazione non riuscita — PathOptions fuori intervallo, nessun documento aperto o nessun tracciato avviato
1Il tracciato è stato disegnato correttamente

Note

Usare la regola pari-dispari per costruire forme come anelli, rondelle o qualsiasi figura che pratichi un foro in un contorno più grande. Con la regola di avvolgimento diverso da zero usata da DrawPath, la stessa costruzione funziona solo se il sottotracciato interno viene disegnato nella direzione opposta; con la regola pari-dispari la direzione è irrilevante

Esempio

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

Vedere anche

DrawPath, StartPath, AddArcToPath, ClosePath