23.10.2014 Views

WinApi-grafika 2D

WinApi-grafika 2D

WinApi-grafika 2D

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

5. Grafika 10/20<br />

BOOL Chord(HDC hdc, int xLeft, int yTop, int xRight,<br />

int yBottom, int xStart, int yStart, int xEnd, int yEnd)<br />

– kreli łuk jak w funkcji Arc, oraz odcinek łczc koniec i pocztek łuku przy pomocy<br />

biecego pióra i wypełnia obszar pomidzy łukiem a odcinkiem za pomoc biecego<br />

pdzla.<br />

BOOL Pie(HDC hdc, int xLeft, int yTop, int xRight,<br />

int yBottom, int xStart, int yStart, int xEnd, int yEnd)<br />

– kreli łuk jak w funkcji Arc, oraz odcinki łczc koniec i pocztek łuku z rodkiem elipsy<br />

przy pomocy biecego pióra i wypełnia obszar pomidzy łukiem a odcinkami za pomoc<br />

biecego pdzla.<br />

BOOL PolyBezier(HDC hdc, Const POINT *lppt, DWORD cPoints)– kreli<br />

jedn lub wicej krzywych Beziera.<br />

lppt – wskanik na tablic punktów<br />

Pierwsza krzywa jest krelona od pierwszego do czwartego punktu, przy uyciu 2 i 3 punktu<br />

jako punktów kontrolnych ( które pełni rol magnesów odcigajcych lini od odcinka<br />

łczcego punkty kocowe). Kada kolejny segment krzywej potrzebuje trzech punktów.<br />

Punkt kocowy wczeniejszego segmentu jest punktem pocztkowym nastpnego.<br />

CPoints – ilo punktów w tablicy (3*ilo krzywych +1)<br />

BOOL PolyBezierTo(HDC hdc, Const POINT *lppt, DWORD cPoints)–<br />

kreli jedn lub wicej krzywych Beziera. Róni si od PolyBezier tym, e pierwszy punkt<br />

pocztkowy odpowiada biecej pozycji pióra. Funkcja ustawia biec pozycj w jej punkcie<br />

kocowym.<br />

BOOL Polygon(HDC hdc, CONST POINT *lppt, int cPoint) – funkcja kreli<br />

linie łczce kolejne punkty z tablicy punktów. Jeeli ostatni punkt z tablicy nie pokrywa si z<br />

pierwszym Windows dodaje odcinek zamykajcy figur. Nastpnie system wypełnia figur<br />

korzystajc z pdzla biecego w sposób zaleny od ustawionego trybu wypełniania<br />

wieloktów.<br />

cPoint – okrela ilo punktów w tablicy; musi by wikszy od 1.<br />

int SetPolyFillMode(HDC hdc, int iMode) – zmienia tryb wypełniania<br />

wieloktów w biecym DC.<br />

iMode – tryb wypełniania wieloktów:<br />

ALTRNATE – domylny. Obszar zostanie wypełniony jeli półprosta wyprowadzona z<br />

dowolnego punktu obszaru przetnie nieparzyst liczb krawdzi. Pozostałe obszary pozostan<br />

niewypełnione.<br />

WINDING – Windows wypełni wszystkie domknite obszary.<br />

int FillRect(HDC hdc, CONST RECT * rect, HBRUSH hBrush) –<br />

wypełnia obszar prostokta wskazany<br />

przez rect za pomoc podanego pdzla. Zawiera lew i górn krawd prostokta, nie zawiera<br />

krawdzi prawej i dolnej.<br />

int FrameRect(HDC hdc, CONST RECT * rect, HBRUSH hBrush) – maluje<br />

pdzlem prostoktn ramk,<br />

rodek pozostawiajc nie wypełniony.<br />

BOOL InvertRect(HDC hdc, CONST RECT * rect) – odwraca barw pikseli<br />

wewntrz prostokta.<br />

Copyright © 2001-2003 Ewa Lach

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!