FillPoly

Z Delphi & Pascal (česká wiki)
Verze z 5. 10. 2012, 21:38, kterou vytvořil Zdeno Sekerák (diskuse | příspěvky)
(rozdíl) ← Starší verze | zobrazit aktuální verzi (rozdíl) | Novější verze → (rozdíl)
Skočit na navigaci Skočit na vyhledávání

Nakreslí a vyplní mnohoúhelník, přičemž použije snímací převaděč (scan converter).

Deklarace
procedure FillPoly(NumPoints: Word; var PolyPoints);
Režim
Reálný, Chráněný
Poznámky
PolyPoints je parametr bez typu, který obsahuje souřadnice všech průsečíků v mnohoúhelníku. NumPoints určuje počet souřadnic v PolyPoints. Každá souřadnice sestává z dvou slov - z hodnoty X a hodnoty Y. FillPoly vypočítá všechny horizontální průsečíky a pak vyplní mnohoúhelník aktuálním vyplňovacím stylem a barvou, definovanými pomocí SetFillStyle a SetFileColor. Obrys mnohoúhelníka se nakreslí čárou aktuálního stylu a barvy, tak jak je nastavila procedura SetLineStyle.
Pokud během vyplňování mnohoúhelníka dojde k chybě, vrátí funkce GraphResult hodnotu grNoScanMem.
Omezení
Je nutno být v grafickém režimu.
Viz také
DrawPoly
GetFillSettings
GetLineSettings
GraphResult
SetFillPattern
SetFillStyle
SetLineStyle


Vzorový příklad

{FillPoly.PAS}
{Vzorový příklad pro proceduru FillPoly.}
uses Graph;
const
  Triangle: array[1..3] of PointType = ((X:  50; Y: 100),
    (X: 100; Y: 100), (X: 150; Y: 150));
var Gd, Gm: Integer;
begin
  Gd := Detect;
  InitGraph(Gd, Gm, ' ');
  if GraphResult <> grOk then
    Halt(1);
  FillPoly(SizeOf(Triangle) div SizeOf(PointType), Triangle);
  Readln;
  CloseGraph;
end.