DrawPathEvenOdd

Vektör grafikleri, Yol tanımlama ve çizim

Açıklama

Geçerli yolu çift-tek dolgu kuralıyla, DrawPath tarafından kullanılan sıfır olmayan sarım kuralı yerine boyar. Çift-tek kuralında, bir noktadan çizilen ışın yolu tek sayıda keserse nokta yolun "içinde" kabul edilir — böylece örtüşen alt yollar, alt yol yönünü dikkate almaya gerek kalmadan dolgulu ve dolgusuz bantlar arasında dönüşümlü olur

Sözdizimi

Delphi

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

ActiveX

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

DLL

int DLDrawPathEvenOdd(int InstanceID, int PathOptions);

Parametreler

PathOptionsBoyama modu:

0 — Yalnızca dış çizgi
1 — Yalnızca dolgu (çift-tek kuralı)
2 — Dolgu ve dış çizgi

Dönüş değerleri

0Başarısız — PathOptions aralık dışında, açık belge yok veya yol başlatılmamış
1Yol başarıyla boyandı

Açıklamalar

Halka, pul veya daha büyük bir dış çizgide delik açan herhangi bir şekil oluştururken çift-tek kuralını kullanın. DrawPath tarafından kullanılan sıfır olmayan sarım kuralında aynı yapı yalnızca iç alt yol ters yönde çizilirse çalışır; çift-tek kuralında yön önemli değildir

Örnek

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

Ayrıca bkz

DrawPath, StartPath, AddArcToPath, ClosePath