Mis on Z-Order?

Z-Order on nimetus protsessile, mis on seotud sorteerimisega, millised arvutirakenduses olevad üksused peaksid visuaalselt teiste objektide ees ilmuma. Üks levinud z-järjestuse kasutusviis on see, kui graafilises kasutajaliideses (GUI) on avatud mitu akent ja z-järjestus määrab, millised aknad joonistatakse täielikult ja millised varjavad nende kohal olevad aknad. Nimetus z-järg tuleneb traditsioonilistest nimetamiskokkulepetest, mida kasutatakse kolmemõõtmeliste (3D) ruumide kirjeldamisel, kus X viitab paremale-vasakule suunale, Y üles-alla suunale ja Z edasi-tagasi suunale. Peaaegu kõik 3D-rakendused kasutavad mingit z-järjestust, et kiiresti määrata, milliseid objekte tuleks või mitte, et stseeni kuvamiskiirust suurendada.

Tegelikku telge, mida kirjeldatakse z-järjekorraga, võib käsitleda nii, et see ulatub kuvaväljale, liikudes kas monitori vaatava vaataja poole või sellest eemale. Mida kaugemal objekt asub, seda suurem on selle number järjestuses, samas kui lähemate objektide numbrid on väiksemad. Lihtsaid sortimisalgoritme kasutades saab vaatajast kaugemal olevad objektid vaateväljast välja jätta või neid saab joonistada vaid osaliselt, kuna neid varjavad lähemal asuvad objektid.

Üks levinud z-järjestuse kasutusala on avatud akende või muude GUI elementide oleku säilitamine rakenduses. Kui aken või muu element luuakse, määratakse sellele tellimuse number, mis näitab, et see on täisvaates. Kui avatakse mõni muu aken või element, nihutatakse z-järjestust, nii et uut aktiivset akent peetakse lähimaks. Lisaks näpunäidete pakkumisele, mis muudavad graafilise kasutajaliidese elementide joonistamise tõhusamaks, kasutavad mõned operatsioonisüsteemid või rakendused seda ka tabeldusjärjestuse määramiseks, nii et kui kasutaja kasutab GUI-s ringi liikumiseks klaviatuuri, valitakse fookuse saanud elemendid nende z-järjekorras.

Graafikatöötlusprogrammid kasutavad mitmekihiliste piltide joonistamiseks z-järjestusmeetodeid, tagades, et kihid renderdatakse õiges järjestuses. Sama põhimõtet rakendatakse ka avaldamiseks või küljendamiseks kasutatavate programmide puhul, kus saab liite loomiseks virnastada mitu elementi. Mõnes olukorras, nagu vektorgraafika puhul, kasutatakse järjekorda ka objektide geomeetriliste toimingute arvutamiseks, näiteks kihiliste geomeetriate vahelise ühenduse või erinevuse loomiseks.

3D-rakendustes nimetatakse z-järku mõnikord ka z-puhvriks või sügavuspuhvriks. Lisaks sellele, et see pakub optimeeritud viisi objektide sorteerimiseks stseenis, võimaldab see ka tõhusalt peidetud pinda eemaldada. Objekte, mille arv on z-järjestuses piisavalt kaugel, saab ignoreerida ja üldse mitte renderdada, samas kui objektide puhul, mis on kaetud lähemate kujunditega, võivad terved geomeetria segmendid jääda renderdamata, kuna neid pole näha.