typedef unsigned int u32_t;
typedef unsignet int handle;
typedef unsigned int color_t;
handle CreateHatchBrush(int hatch, color_t bkcolor, color_t fcolor);
Ñîçäàòü øòðèõîâàííóþ êèñòü ðàçìåðîì 8õ8 ïèêñåëåé
hatch òèï øòðèõîâêè:
HS_HORIZONTAL -------
HS_VERTICAL |||||||
HS_FDIAGONAL \\\\\\\
HS_BDIAGONAL ///////
HS_CROSS +++++++
HS_DIAGCROSS xxxxxxx
bkcolor öâåò "0"
fcolor öâåò "1"
Âîçâðàùàåìîå çíà÷åíèå: ëîãè÷åñêèé íîìåð êèñòè èëè 0
handle CreateMonoBrush(color_t bkcolor, color_t fcolor,
u32_t bmp0, u32_t bmp1);
Ñîçäàòü ìîíîõðîìíóþ êèñòü ðàçìåðîì 8õ8 ïèêñåëåé
bkcolor öâåò "0"
fcolor öâåò "1"
bmp0 bmp1 ìîíîõðîìíûé áèòìàï 8õ8 ïèêñåëåé
Âîçâðàùàåìîå çíà÷åíèå: ëîãè÷åñêèé íîìåð êèñòè èëè 0
void DestroyBrush(handle brush);
Óíè÷òîæèòü êèñòü.
brush ëîãè÷åñêèé íîìåð êèñòè.
Êèñòü äîëæíà áûòü ñîçäàíà âûçîâîì CreateHatchBrush èëè CreateMonoBrush
handle CreatePixmap(unsigned width, unsigned height, u32_t format, u32_t flags);
Ñîçäàòü áèòìàï
width øèðèíà â ïèêñåëÿõ. Ìàêñèìóì 2048
height âûñîòà â ïèêñåëÿõ. Ìàêñèìóì 2048
format ôîðìàò ïèêñåëåé. Ñåé÷àñ ïîääåðæèâàåòñÿ òîëüêî ARGB32
flags äîïîëíèòåëüíûå ôëàãè:
PX_MEM_SYSTEM = 0 áèòìàï â ñèñòåìíîé ïàìÿòè
PX_MEM_LOCAL = 1 áèòìàï â ëîêàëüíîé âèäåîïàìÿòè
PX_MEM_GART = 2 çàðåçåðâèðîâàíî
îñòàëüíûå áèòû çàðåçåðâèðîâàíû è äîëæíû áûòü 0
Âîçâðàùàåìîå çíà÷åíèå: ëîãè÷åñêèé íîìåð áèòìàïà â ñëó÷àå óñïåõà èëè 0
int DestroyPixmap( handle pixmap)
Óíè÷òîæèòü áèòìàï.
pixmap ëîãè÷åñêèé íîìåð áèòìàïà.
Áèòìàï äîëæåí áûòü ñîçäàí CreatePixmap.
Âîçâðàùàåìîå çíà÷åíèå: ERR_OK â ñëó÷àå óñïåõà èëè ERR_PARAM â ñëó÷àå íåóäà÷è.
void* LockPixmap(handle pixmap)
Ïîëó÷èòü äîñòóï ê äàííûì áèòìàïà.
pixmap ëîãè÷åñêèé íîìåð áèòìàïà. SCR_PIXMAP äëÿ ïåðâè÷íîãî ýêðàíà.
Áëîêèðîâàíèå áèòìàïà ìîæåò ñíèçèòü áûñòðîäåéñòâèå åñëè áèòìàï
ñîçäàí ñ ôëàãàìè PX_MEM_LOCAL èëè PX_MEM_GART.
Âîçâðàùàåìîå çíà÷åíèå: óêàçàòåëü íà íà÷àëî äàííûõ áèòìàïà
èëè NULL â ñëó÷àå íåóäà÷è.
int GetPixmapPitch(handle pixmap)
Ïîëó÷èòü øèðèíó ñòðîêè áèòìàïà â áàéòàõ.
pixmap ëîãè÷åñêèé íîìåð áèòìàïà. SCR_PIXMAP äëÿ ïåðâè÷íîãî ýêðàíà.
Áèòìàï äîëæåí áûòü çàáëîêèðîâàí âûçîâîì LockPixmap
Âîçâðàùàåìîå çíà÷åíèå: øèðèíà ñòðîêè áèòìàïà â áàéòàõ èëè 0 â ñëó÷àå íåóäà÷è.
int UnlockPixmap(handle pixmap)
Âîçâðàùàåìîå çíà÷åíèå: ERR_OK â ñëó÷àå óñïåõà èëè ERR_PARAM â ñëó÷àå íåóäà÷è.
int ClearPixmap(handle pixmap, color_t color)
Çàïîëíÿåò áèòìàï óêàçàííûì öâåòîì;
pixmap ëîãè÷åñêèé íîìåð áèòìàïà. SCR_PIXMAP äëÿ ïåðâè÷íîãî ýêðàíà.
color öâåò â ôîðìàòå ARGB32
Âîçâðàùàåìîå çíà÷åíèå: ERR_OK â ñëó÷àå óñïåõà èëè ERR_PARAM â ñëó÷àå íåóäà÷è.
int Line(handle pixmap, int x0, int y0, int x1, int y1, color_t color)
Íàðèñîâàòü ñïëîøíóþ ëèíèþ óêàçàíîãî öâåòà òîëùèíîé â 1 ïèêñåëü.
pixmap ëîãè÷åñêèé íîìåð áèòìàïà â êîòîðûé áóäåò ïðîèçâîäèòñÿ îòðèñîâêà.
SCR_PIXMAP äëÿ ïåðâè÷íîãî ýêðàíà
x0,y0 x1,y1 êîîðäèíàòû íà÷àëüíîé è êîíå÷íîé òî÷åê ëèíèèè
color öâåò â ôîðìàòå ARGB32
Âîçâðàùàåìîå çíà÷åíèå: ERR_OK â ñëó÷àå óñïåõà èëè ERR_PARAM â ñëó÷àå íåóäà÷è.
int DrawRect(handle pixmap, int xorg, int yorg,
int width, int height,
color_t dst_color, color_t border)
Íàðèñîâàòü ñïëîøíîé ïðÿìîóãëüíèê óêàçàíîãî öâåòà c îêàíòîâêîé.
pixmap ëîãè÷åñêèé íîìåð áèòìàïà â êîòîðûé áóäåò ïðîèçâîäèòñÿ îòðèñîâêà.
SCR_PIXMAP äëÿ ïåðâè÷íîãî ýêðàíà
xorg,yorg êîîðäèíàòû ëåâîãî âåðõíåãî óãëà ïðÿìîóãîëüíèêà â ïèêñåëÿõ
width øèðèíà ïðÿìîóãîëüíèêà â ïèêñåëÿõ
height âûñîòà ïðÿìîóãîëüíèêà â ïèêñåëÿõ
color öâåò ïðÿìîóãîëüíèêà â ôîðìàòå ARGB32
border öâåò îêàíòîâêè â ôîðìàòå ARGB32. Òîëùèíà îêàíòîâêè 1 ïèêñåë.
Âîçâðàùàåìîå çíà÷åíèå: ERR_OK â ñëó÷àå óñïåõà èëè ERR_PARAM â ñëó÷àå íåóäà÷è.
int FillRect(handle pixmap, int xorg, int yorg,
int width, int height,
brush_t *brush, color_t border)
Íàðèñîâàòü ïðÿìîóãîëüíèê èñïîëüçóÿ êèñòü
pixmap ëîãè÷åñêèé íîìåð áèòìàïà â êîòîðûé áóäåò ïðîèçâîäèòñÿ îòðèñîâêà.
SCR_PIXMAP äëÿ ïåðâè÷íîãî ýêðàíà
xorg,yorg êîîðäèíàòû ëåâîãî âåðõíåãî óãëà ïðÿìîóãîëüíèêà â ïèêñåëÿõ
width øèðèíà ïðÿìîóãîëüíèêà â ïèêñåëÿõ
height âûñîòà ïðÿìîóãîëüíèêà â ïèêñåëÿõ
brush ìîíîõðîìíàÿ êèñòü ðàçìåðîì 8õ8 ïèêñåëåé
border öâåò îêàíòîâêè â ôîðìàòå ARGB32. Òîëùèíà îêàíòîâêè 1 ïèêñåë.
Îêàíòîâêà íå ðèñóåòñÿ åñëè àëüôà êîìïîíåí öâåòà ðàâåí 0.
Êèñòü äîëæíà áûòü ñîçäàíà CreateHatch èëè CreateMonoBrush.
Âîçâðàùàåìîå çíà÷åíèå: ERR_OK â ñëó÷àå óñïåõà èëè ERR_PARAM â ñëó÷àå íåóäà÷è.
int Blit(handle dst_pixmap, int dst_x, int dst_y,
handle src_pixmap, int src_x, int src_y,
int width, int height)
Ñêîïèðîâàòü ïðÿìîóãîëüíóþ îáëàñòü ïèêñåëåé.
dst_pixmap ëîãè÷åñêèé íîìåð áèòìàïà â êîòîðûé áóäåò ïðîèçâîäèòñ
êîïèðîâàíèå. SCR_PIXMAP äëÿ ïåðâè÷íîãî ýêðàíà.
dst_x, dst_y êîîðäèíàòû ëåâîãî âåðõíåãî óãëà îáëàñòè íàçíà÷åíè
src_pixmap ëîãè÷åñêèé íîìåð áèòìàïà - èñòî÷íèêà ïèêñåëåé.
SCR_PIXMAP äëÿ ïåðâè÷íîãî ýêðàíà.
src_x,src_y êîîðäèíàòû ëåâîãî âåðõíåãî óãëà êîïèðóåìîé îáëàñòè
width øèðèíà êîïèðóåìîé îáëàñòè
height âûñîòà êîïèðóåìîé îáëàñòè
Âîçâðàùàåìîå çíà÷åíèå: ERR_OK â ñëó÷àå óñïåõà èëè ERR_PARAM â ñëó÷àå íåóäà÷è.
int TransparentBlit(handle dst_pixmap, int dst_x, int dst_y,
handle src_pixmap, int src_x, int src_y,
int width, int height, color_t key)
Ñêîïèðîâàòü ïðÿìîóãîëüíóþ îáëàñòü ïèêñåëåé èñïîëüçóÿ ïðîçðà÷íûé öâåò.
dst_pixmap ëîãè÷åñêèé íîìåð áèòìàïà â êîòîðûé áóäåò ïðîèçâîäèòñ
êîïèðîâàíèå. SCR_PIXMAP äëÿ ïåðâè÷íîãî ýêðàíà.
dst_x, dst_y êîîðäèíàòû ëåâîãî âåðõíåãî óãëà îáëàñòè íàçíà÷åíè
src_pixmap ëîãè÷åñêèé íîìåð áèòìàïà - èñòî÷íèêà ïèêñåëåé.
SCR_PIXMAP äëÿ ïåðâè÷íîãî ýêðàíà.
src_x,src_y êîîðäèíàòû ëåâîãî âåðõíåãî óãëà êîïèðóåìîé îáëàñòè
width øèðèíà êîïèðóåìîé îáëàñòè
height âûñîòà êîïèðóåìîé îáëàñòè
key ïðîçðà÷íûé öâåò â ôîðìàòå ARGB32
Ôóíêöèÿ íå êîïèðóåò ïèêñåëè öâåò êîòîðûõ ñîâïàäàåò ñ key.
Âîçâðàùàåìîå çíà÷åíèå: ERR_OK â ñëó÷àå óñïåõà èëè ERR_PARAM â ñëó÷àå íåóäà÷è.