Dom > Vijesti > Sadržaj

Započnite crtanje primitivne grafike

Apr 26, 2019

4.5 BEGIN

Počnite crtati primitiv grafike

image

image

Opis

Svi primitivi koje podržava FT800 definirani su u gornjoj tablici. Primitivni

koju povlači odabire naredba BEGIN. Kada je primitiv odabran, bit će

vrijede dok se ne odabere novi primitiv naredbom BEGIN.

Imajte na umu da primitivna operacija crtanja neće biti izvršena sve dok

VERTEX2II ili VERTEX2F se izvršava.

image

image

parametri

rukovati

Ručica za bitmapu. Početna vrijednost je 0. Valjani raspon vrijednosti je od 0 do 31.

Opis

Ručke 16 do 31 definirane su pomoću FT800 za ugrađeni font, a ručica 15 je

definirano u naredbama ko-procesora motora CMD_GRADIENT, CMD_BUTTON i

CMD_KEYS. Korisnici mogu definirati nove bitmape koristeći ručke od 0 do 14. Ako postoji

nema naredbe strojeva za procesor CMD_GRADIENT, CMD_BUTTON i CMD_KEYS u

trenutni popis prikaza, korisnici mogu čak definirati bitmapu pomoću ručice 15.

Grafički kontekst

Vrijednost handle je dio grafičkog konteksta, kao što je opisano u odjeljku 4.1

Vidi također

BITMAP_LAYOUT, BITMAP_SIZE


image

image

Različiti podržani bitmapni formati su:

image

image

BARGRAPH - prikaz podataka kao stupčasti grafikon. Potom traži koordinate x u nizu bajtova

daje neproziran piksel ako je vrijednost bajta manja od y, u suprotnom prozirni piksel.

Rezultat je stupčasti grafikon bitmap podataka. Maksimalna bitmapa veličine 256x256 može biti

nacrtana pomoću BARGRAPH formata. Orijentacija, širina i visina grafa mogu biti

mijenjati pomoću matrice bitmap transformacije.

TEXT8X8 - pretraživanje u fiksnom 8x8 fontu. Bitmapa je niz bajtova prisutan u grafici

ram i svaki bajt indeksira unutarnji font 8x8 CP437 [2] (ugrađeni font bitmape

ručke 16 i 17 se koriste za crtanje TEXT8X8 formata). Rezultat je bitmap

djeluje poput mreže znakova. Može se nacrtati jedna bitmapa koja pokriva sve ili dio

prikaz; svaki bajt u podacima bitmapa odgovara jednoj znakovnoj ćeliji 8x8 piksela.

TEXTVGA - pretraživanje u fiksnom 8x16 fontu s TEXTVGA sintaksom. Bitmapa je TEXTVGA

polje prisutno u grafičkom ramu, svaki element indeksira unutarnji 8x16 CP437 [2]

font (ugrađene ručice bitova 18 i 19 za fontove koriste se za crtanje TEXTVGA formata s

kontrolne informacije kao što su boja pozadine, boja prednjeg plana i pokazivač itd.).

Rezultat je da bitmapa djeluje kao TEXTVGA mreža. Može se nacrtati jedna bitmapa koja

pokriva cijeli zaslon ili njegov dio; svaki tip podataka TEXTVGA u bitmapi odgovara

jedna znakovna ćelija veličine 8x16 piksela.

PALETTED - bitne karte su indeksi u tablici paleta. Pomoću tablice paleta -

koja sadrži 32-bitne RGBA boje - može se spremiti značajna količina memorije.

256 paleta boja pohranjuje se u namjenski 1K (256x4) bajt RAM_PAL.

linestride

Bitmap linestride, u bajtovima. Imajte na umu zahtjev za usklađivanje koji je

opisano u nastavku.

visina

Visina bitmapa u redovima

Opis

Podržani bitmapni formati su L1, L4, L8, RGB332, ARGB2, ARGB4, ARGB1555,

RGB565 i Palette.

Za L1 format, linija crta mora biti višestruka od 8 bitova; Za L4 formatirajte liniju

korak mora biti višestruki od 2 grickalice. (Usklađeno s bajtom)

Više pojedinosti o poravnanju potražite na sljedećim slikama:

image

image

image

Grafički kontekst

nijedan

Vidi također

BITMAP_HANDLE, BITMAP_SIZE, BITMAP_SOURCE

image

parametri

filtar

Bitmap način filtriranja, jedan od NEAREST ili BILINEAR

Vrijednost NEAREST je 0, a vrijednost BILINEAR je 1.

wrapx

Bitmap x wrap mod, jedan od REPEAT ili BORDER

Vrijednost BORDER je 0, a vrijednost REPEAT je 1.

wrapy

Bitmap y wrap mod, jedan od REPEAT ili BORDER

širina

Izvučena širina bitmapa, u pikselima

visina

Izvučena visina bitmapa, u pikselima


Opis

Ova naredba kontrolira crtanje bitmape: veličinu bitmapa na zaslonu,

ponašanje za omatanje i funkciju filtriranja. Imajte na umu da ako wrapx ili

wrapy je REPEAT zatim odgovarajuća dimenzija rasporeda memorije

(BITMAP_LAYOUT korak ili visina linije) mora biti snaga dva, u suprotnom rezultat je

nedefiniran.

Za širinu i visinu parametra, vrijednost od 1 do 511 znači širinu bitmape

i visinu u pikselima. Vrijednost nula znači 512 piksela u širini ili visini.


Primjeri

Crtanje 64 x 64 bitne slike:

image

image

Koristeći REPEAT način prelamanja za iscrtavanje bitmapa: dl (BITMAP_SO

image

image

image

Grafički kontekst

nijedan

Vidi također

BITMAP_HANDLE, BITMAP_LAYOUT, BITMAP_SOURCE


image

parametri

adr

Bitmap adresa u grafici SRAM FT800, usklađena s obzirom na bitmapu

format.

Na primjer, ako je bitmap format RGB565 / ARGB4 / ARGB1555, bitmapa

izvor mora biti usklađen s 2 bajta.

Opis

Izvorna bitmap adresa je normalno adresa u glavnoj memoriji gdje je

učitavaju se grafički podaci bitmapa.

Primjeri

Crtanje 64 x 64 bitne slike, učitane na adresi 0:

image

Koristeći iste grafičke podatke, ali s promjenom izvora i veličine prikazuju se samo a

32 x 32 detalja:

image

Grafički kontekst

nijedan

Vidi također

BITMAP_LAYOUT, BITMAP_SIZE


image

parametri

Koeficijent A matrice bitmap transformacije, u potpisanoj 8,8-bitnoj fiksnoj točki

oblik. Početna vrijednost je 256.

Opis

BITMAP_TRANSFORM_A-F koeficijenti koriste se za izvođenje bitmap transformacije

funkcionalnosti kao što su skaliranje, rotacija i prevođenje. Oni su slični openGL-u

funkcionalnost transformacije.

Primjeri

Vrijednost od 0,5 (128) uzrokuje pojavljivanje dvostruke širine bitmapa:

image

image

Grafički kontekst

Vrijednost a je dio grafičkog konteksta, kao što je opisano u odjeljku 4.1

Vidi također

nijedan


image

parametri

b

Koeficijent B matrice bitmap transformacije, u potpisanoj 8,8-bitnoj fiksnoj točki

oblik. Početna vrijednost je 0

Opis

BITMAP_TRANSFORM_A-F koeficijenti koriste se za izvođenje bitmap transformacije

funkcionalnosti kao što su skaliranje, rotacija i prevođenje. Oni su slični openGL-u

funkcionalnost transformacije.

Grafički kontekst

Vrijednost B je dio grafičkog konteksta, kao što je opisano u odjeljku 4.1

Vidi također

nijedan

image

parametri

c

Koeficijent C matrice bitmap transformacije, u potpisanoj 15,8-bitnoj fiksnoj točki

oblik. Početna vrijednost je 0

Opis

BITMAP_TRANSFORM_A-F koeficijenti koriste se za izvođenje bitmap transformacije

funkcionalnosti kao što su skaliranje, rotacija i prevođenje. Oni su slični openGL-u

funkcionalnost transformacije.

Grafički kontekst

Vrijednost c je dio grafičkog konteksta, kao što je opisano u odjeljku 4.1

Vidi također

nijedan


image

parametri

d

Koeficijent D matrice bitmap transformacije, u potpisanoj 8,8-bitnoj fiksnoj točki

oblik. Početna vrijednost je 0

Opis

BITMAP_TRANSFORM_A-F koeficijenti koriste se za izvođenje bitmap transformacije

funkcionalnosti kao što su skaliranje, rotacija i prevođenje. Oni su slični openGL-u

funkcionalnost transformacije.

Grafički kontekst

Vrijednost d je dio grafičkog konteksta, kao što je opisano u odjeljku 4.1

Vidi također

nijedan


image

parametri

e

Koeficijent E matrice bitmap transformacije, u potpisanoj 8,8-bitnoj fiksnoj točki

oblik. Početna vrijednost je 256

Opis

BITMAP_TRANSFORM_A-F koeficijenti koriste se za izvođenje bitmap transformacije

funkcionalnosti kao što su skaliranje, rotacija i prevođenje. Oni su slični openGL-u

funkcionalnost transformacije.

Primjeri

Vrijednost od 0,5 (128) uzrokuje dvostruku visinu rasterske karte:


image

Grafički kontekst

Vrijednost e je dio grafičkog konteksta, kao što je opisano u odjeljku 4.1

Vidi također

nijedan


image

parametri

f

Koeficijent F matrice bitmap transformacije, u potpisanoj 15,8-bitnoj fiksnoj točki

oblik. Početna vrijednost je 0

Opis

BITMAP_TRANSFORM_A-F koeficijenti koriste se za izvođenje bitmap transformacije

funkcionalnosti kao što su skaliranje, rotacija i prevođenje. Oni su slični openGL-u

funkcionalnost transformacije.

Grafički kontekst

Vrijednost f je dio grafičkog konteksta, kao što je opisano u odjeljku 4.1

Vidi također

nijedan


image

parametri

src

Određuje kako se izračunava faktor miješanja izvora. Jedan od ZERO, JEDNOG,

SRC_ALPHA, DST_ALPHA, ONE_MINUS_SRC_ALPHA ili

ONE_MINUS_DST_ALPHA. Početna vrijednost je SRC_ALPHA (2).

DST

Određuje kako se izračunava faktor miješanja odredišta, jedan od istih

konstante kao src. Početna vrijednost je ONE_MINUS_SRC_ALPHA (4)

image

Opis

Funkcija miješanja kontrolira kako se nove vrijednosti boja kombiniraju s vrijednostima

već u spremniku boja. S obzirom na izvor vrijednosti piksela i prethodnu vrijednost u

odredište međuspremnika boja, izračunata boja je:

izvor × src + odredište × dst

za svaki kanal boje: crvena, zelena, plava i alfa.

Primjeri

Zadana funkcija miješanja (SRC_ALPHA, ONE_MINUS_SRC_ALPHA) uzrokuje

crtež za prekrivanje odredišta pomoću alfa vrijednosti:

image

image

Grafički kontekst

Vrijednosti src i dst dio su grafičkog konteksta, kao što je opisano u odjeljku

4.1

Vidi također

COLOR_A

image

parametri

odred

Odredišna adresa u RAM_DL koju će naredba za prikaz biti

uključen. FT800 ima stog za pohranu povratne adrese. Da se vratim

narednom naredbom izvora adrese, naredba RETURN može pomoći.

Opis

CALL i RETURN imaju 4 stupanjska stupa uz trenutni pokazivač. bilo koji

Dodatni CALL / RETURN će dovesti do neočekivanog ponašanja.

Grafički kontekst

nijedan

Vidi također

JUMP, POVRATAK


image

parametri

ćelija

broj ćelija bitmapa. Početna vrijednost je 0

Grafički kontekst

Vrijednost ćelije dio je grafičkog konteksta, kao što je opisano u odjeljku 4.1

Vidi također

nijedan


image

parametri

c

Očistite spremnik boja. Postavljanjem ovog bita na 1 izbrisat će se spremnik za boju FT800

do zadane vrijednosti. Postavljanjem tog bita na 0 zadržat će se međuspremnik boja

FT800 s nepromijenjenom vrijednosti. Zadana vrijednost je definirana u naredbi

CLEAR_COLOR_RGB za RGB kanal i CLEAR_COLOR_A za alfa kanal.

a

Čisti odbojnik matrice. Postavljanjem tog bita na 1 izbrisat će se bafer šablona

FT800 na zadanu vrijednost. Postavljanjem tog bita na 0 zadržat ćete matricu

tampon FT800 s nepromijenjenom vrijednosti. Zadana vrijednost je definirana u

naredbu CLEAR_STENCIL.

t

Očisti spremnik oznaka. Postavljanjem ovog bita na 1 izbrisat će se međuspremnik oznaka FT800

zadanu vrijednost. Postavljanjem tog bita na 0 zadržat će se spremnik oznaka za

FT800 s nepromijenjenom vrijednosti. Zadana vrijednost je definirana u naredbi

CLEAR_TAG.


Opis

Testiranje škarama i maske pisanja na međuspremniku utječu na rad prozirne ploče. Radne

ograničava izbrisani pravokutnik, a maske pisanja međuspremnika ograničavaju utjecajne međuspremnike.

Stanje alfa funkcije, funkcije miješanja i stencilinga ne utječu na čistoću.

Primjeri

Za brisanje plavog zaslona:

image

image

Grafički kontekst

nijedan

Vidi također

CLEAR_COLOR_A, CLEAR_STENCIL, CLEAR_TAG, CLEAR_COLOR_RGB


image

parametri

alfa

Alfa vrijednost koja se upotrebljava kada se obriše međuspremnik boja. Početna vrijednost je 0

Grafički kontekst

Vrijednost alfa je dio grafičkog konteksta, kao što je opisano u odjeljku 4.1

Vidi također

CLEAR_COLOR_RGB, CLEAR


image

parametri

Crvena

Crvena vrijednost koristi se kada je odbačen spremnik boja. Početna vrijednost je 0

zelena

Zelena vrijednost koja se koristi kada se obriše međuspremnik boja. Početna vrijednost je 0

plava

Plava vrijednost se upotrebljava kada se prazni spremnik boje. Početna vrijednost je 0

Opis

Postavlja vrijednosti boja koje koristi sljedeći CLEAR.

Primjeri

Za brisanje plavog zaslona:

image

image

Grafički kontekst

Vrijednosti crvene, zelene i plave su dio grafičkog konteksta, kao što je opisano u

odjeljak 4.1

Vidi također

CLEAR_COLOR_A, CLEAR


image

parametri

a

Vrijednost koja se upotrebljava kada se isprazni međuspremnik matrice. Početna vrijednost je 0

Grafički kontekst

Vrijednost s je dio grafičkog konteksta, kao što je opisano u odjeljku 4.1

Vidi također

ČISTO


image

parametri

t

Vrijednost koja se upotrebljava prilikom brisanja spremnika oznaka. Početna vrijednost je 0.

Grafički kontekst

Vrijednost s je dio grafičkog konteksta, kao što je opisano u odjeljku 4.1

Vidi također

TAG, TAG_MASK, CLEAR


image

parametri

alfa

Alfa za trenutnu boju. Početna vrijednost je 255

Opis

Postavlja alfa vrijednost primijenjenu na nacrtane elemente - točke, linije i bitmape. Kako

alfa vrijednost utječe na piksele slike ovisno o BLEND_FUNC; zadano ponašanje

je prozirna mješavina.

Primjeri

Crtanje tri znaka s transparentnošću 255, 128 i 64:

image

Grafički kontekst

Vrijednost alfa je dio grafičkog konteksta, kao što je opisano u odjeljku 4.1

Vidi također

COLOR_RGB, BLEND_FUNC

image

parametri

r

Omogućite ili onemogućite ažuriranje crvenog kanala u međuspremniku boja FT800. Početni

vrijednost je 1 i znači omogućiti.

g

Omogućite ili onemogućite ažuriranje zelenog kanala u međuspremniku boja FT800.

početna vrijednost je 1 i znači omogućiti.

b

Omogućite ili onemogućite ažuriranje plavog kanala u međuspremniku boja FT800. Početni

vrijednost je 1 i znači omogućiti.

Omogućite ili onemogućite ažuriranje alfa kanala u međuspremniku boja FT800.

početna vrijednost je 1 i znači omogućiti.

Opis

Maska boja kontrolira ažuriranje vrijednosti boja piksela. Ponekad

koristi se za selektivno ažuriranje samo crvenih, zelenih, plavih ili alfa kanala

slika. Češće se koristi za potpuno onemogućivanje ažuriranja boja tijekom ažuriranja

tampon i matrice matrice.

Primjeri

Nacrtajte '8' znamenku u sredini zaslona. Zatim naslikajte nevidljivi kružni oblik od 40 piksela

dodirni područje u međuspremnik oznaka:


image

Grafički kontekst

Vrijednosti r, g, b i a dio su grafičkog konteksta, kao što je opisano u odjeljku

4.1

Vidi također

TAG_MASK


image

parametri

Crvena

Crvena vrijednost za trenutnu boju. Početna vrijednost je 255

zelena

Zelena vrijednost za trenutnu boju. Početna vrijednost je 255

plava

Plava vrijednost za trenutnu boju. Početna vrijednost je 255

Opis

Postavlja crvene, zelene i plave vrijednosti boje FT800 bafera koji će se primijeniti na

nakon operacije izvlačenja.

Primjeri

Crtanje tri znaka različitih boja:

image

Grafički kontekst

Vrijednosti crvene, zelene i plave su dio grafičkog konteksta, kao što je opisano u

odjeljak 4.1

Vidi također

COLOR_A