Klasa GraphicsContext
Klasa używana to wydawania poleceń rysowania na canvas
z użyciem bufora.
Każde polecenie umieszcza niezbędne parametry w buforze, gdzie później są renderowane do obrazu w węźle Canvas
przez wątek renderujący na końcu cyklu.
Każdy obiekt Canvas
zawiera jeden GraphicsContext
i jeden bufor. Kontekst nie jest związany z żadną konkretną sceną i może być modyfikowany w jakimkolwiek wątku, o ile jest używany przez jeden wątek naraz. Gdy Canvas
jest umieszczone na scenie, może być modyfikowany wyłącznie z głównego wątku aplikacji JavaFX.
Wywołanie jakiejkolwiek metody GraphicsContext
oznacza modyfikowanie canvas
i podlega tym samy regułom działania w wątku.
GraphicsContext
zarządza także stosem stanów obiektów, które można zapamiętać lub odtworzyć w dowolnym momencie.
GraphicsContext
posiada zestaw atrybutów renderowania, które mogą być rozumiane jako zestaw opcji narzędzia do rysowania.