SK294A3 - Graphics processing method and apparatus - Google Patents

Graphics processing method and apparatus Download PDF

Info

Publication number
SK294A3
SK294A3 SK2-94A SK294A SK294A3 SK 294 A3 SK294 A3 SK 294A3 SK 294 A SK294 A SK 294A SK 294 A3 SK294 A3 SK 294A3
Authority
SK
Slovakia
Prior art keywords
edge
point
window
formation
line
Prior art date
Application number
SK2-94A
Other languages
English (en)
Inventor
John A Herrod
Original Assignee
Ibm
Ibm Deutschland
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ibm, Ibm Deutschland filed Critical Ibm
Publication of SK294A3 publication Critical patent/SK294A3/sk

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • G06T15/30Clipping

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Geometry (AREA)
  • Computer Graphics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Digital Computer Display Output (AREA)
  • Image Generation (AREA)
  • Processing Or Creating Images (AREA)
  • Image Analysis (AREA)

Description

Oblas£ techniky
Vynález sa týka spôsobu ohraničenia grafického útvaru majúceho okraj útvaru vzhľadom k zobrazovaciemu oknu majúcemu okraj okna v grafickom spracovacom systéme, zahrňujúceho stopovanie okraja útvaru na zistenie výstupného bodu (EX), v ktorom okraj útvaru pretína okraj okna a vystupuje z okna, a stopovanie okraja útvaru na zistenie vstupného bodu (EN), v ktorom okraj útvaru pretína okraj okna a vstupuje do okna. Vynález sa d'alej týka zariadenia na vykonávanie spôsobu definovaného vyššie, ktoré zahrňuje displej na zobrazovanie grafických útvarov a obmedzovaciu logiku na obmedzenie grafického útvaru majúceho okraj útvaru vzhľadom k zobrazovaciemu oknu majúcemu okraj okna, pričom táto obmedzovacia logika obsahuje prostriedok pre stopovanie okolo okraja útvaru na zistenie nejakého výstupného bodu, v ktorom okraj útvaru pretína okraj okna a vystupuje zo zobrazovacieho okna a prostriedok pre stopovanie okolo okraja útvaru na zistenie nejakého vstupného bodu, v ktorom okraj útvaru pretína okraj okna a vstupuje do zobrazovacieho okna.
Doterajší stav techniky
Potreba ohraničovania grafických útvarov sa vyskytuje vo väčšine systémov zobrazovania grafiky. Príklad takéhoto systému je program spoločnosti IBM s názvom Graphical Data Display Manager (GDDM). (GDDM a IBM sú ochranné známky spoločnosti International Bussines Machines Corporation). Program GDDM pracuje v systéme obsahujúcom hlavný počítač, ku ktorému je pripojených niekoľko terminálov. Hlavný počítač uschováva a spracováva grafiku a potom ju posiela do vhodného terminálu na zobrazenie. Tieto operácie systému sa vykonávajú pri riadení programom GDDM. Jednou z funkcií, ktorú takýto program ako GDDM musí vykonávať:, je ohraničovanie grafických útvarov.
Je známy rad spôsobov ohraničovania grafických útvarov tvaru plôch obmedzených ich okrajom vzhľadom k tzv. zobrazovacím oknám, napríklad algoritmus Sutherland - Hodgeman alebo algoritmus Weiler - Atherton. Diskusia týchto techník je obsiahnutá v knihe Fundamentals of Interactive Computer Graphics, str. 450-457, vydanej 1982 nakladateľstvom Addison Wesley, autori knihy sú J. D. Foley a A. Van Dam.
Algoritmus Sutherland - Hodgeman pracuje na princípe spracovania zobrazovacieho okna, akoby bolo zložené z množstva neobmedzene prebiehajúcich ohraničovacích čiar. Úloha ohraničenia predmetného polygónu vzhľadom k jednej neobmedzene prebiehajúcej ohraničovacej čiare je pomerne jednoduchý. Zhrnutím výsledkov postupných ohraničení vzhľadom k týmto ohraničovacím čiaram môže byt určená čast polygónu, ktorá má byt zobrazená. Zvláštny problém, ktorý vzniká, sa týka zistenia, ako zobrazit tzv. obrysové čiary medzi bodmi na hranici polygónu, kde pretína zobrazovacie okno. Štandardný algoritmus Sutherlan - Hodgeman vytvára cudzie obrysové čiary, ktoré sa musia odstránit prídavnými krokmi procesu. Potreba tohto zvláštneho spracovania na odstránenie cudzích okrajov znižuje účinnost ohraničenia.
Alternatívne je možné použit algoritmus Weiler - Atherton.
Tento algoritmus pracuje stopovaním polygónu v zmysle pohybu ručičiek priesečníka so zobrazovacím oknom zobrazovacieho okna, algoritmus okolo okraja predmetného hodín až do zistenia Ak okraj vstupuje do pokračuje pozdĺž okraja predmetného polygónu. Ak okraj opustí zobrazovacie okno, algoritmus vykoná obrat a sleduje okraj zobrazovacieho okna. V každom prípade je priesečník zapamätaný a použitý na zaistenie, že všetky cesty sú stopované presne jedenkrát. Hoci algoritmus Weiler - Atherton nie je zaťažený problémom vytvárania cudzích obrysových čiar, má nevýhodu väčšej zložitosti ako algoritmus Sutherland - Hodgeman.
Úlohou predloženého vynálezu je vyriešiť technický problém, ktorý vzniká v zariadeniach na spracovanie grafiky a spočíva v zaistení zobrazenia vhodnej obrysovej čiary pozdĺž okraja zobrazovacieho okna medzi dvoma bodmi, pri ktorých okraj plochy, ktorý má byt zobrazený, pretína zobrazovacie okno bez zavedenia nevýhodnej zložitosti.
Podstata vynálezu
Vynález rieši úlohu tým, že vytvára spôsob ohraničenia grafického útvaru majúceho okraj útvaru vzhíadom k zobrazovaciemu oknu majúcemu okraj okna, v grafickom spracovacom systéme, zahrňujúci stopovanie okraja útvaru na zistenie výstupného bodu (EX), v ktorom okraj útvaru pretína okraj okna a vystupuje z okna, a stopovanie okraja útvaru na zistenie vstupného bodu (EN), v ktorom okraj útvaru pretína okraj okna a vstupuje do okna, ktorého podstata spočíva v tom, že sa zisťuje, či pomyselná čiara neobmedzenej dĺžky vychádzajúca z vopred určeného bodu (P) na okraji okna pretína časť okraja grafického útvaru ležiaceho mimo zobrazovacieho okna medzi výstupným bodom a vstupným bodom v nepárnom počte priesečníkov alebo v párnom počte priesečníkov, a či (1) keď pomyselná čiara pretína časť okraja útvaru v nepárnom počte priesečníkov, nakreslí sa obrysová čiara pozdĺž okraja okna medzi výstupným bodom a vstupným bodom prechádzajúca vopred určeným bodom na okraji okna, alebo (2) keď pomyselná čiara pretína časť okraja útvaru v párnom počte priesečníkov, nakreslí sa obrysová čiara pozdĺž okraja zobrazovacieho okna medzi výstupným bodom a vstupným bodom neprechádzajúca vopred určeným bodom.
Vynález vytvára spôsob, ktorým môže byť vytvorená správna obrysová čiara, ak boli zistené výstupný bod a vstupný bod. Môže sa použiť niektorá verzia algoritmu Sutherland - Hodgeman na zistenie výstupného bodu a vstupného bodu a potom použiť vynález na zistenie cesty, ktorou má byt zobrazená obrysová čiara pozdĺž okraja okna. Takýto ohraničovací proces by nebol zatažený nevýhodou normálneho algoritmu Sutherland - Hodgeman spočívajúcou vo vytváraní chybných obrysových čiar, ktoré musia byt odstránené nasledujúcimi prídavnými krokmi procesu. Naviac takýto spôsob ohraničenia nie je zatažený nevýhodnou zložitosťou vznikajúcou pri použití algoritmu Weiler - Atherton. Žiadna z techník ohraničenia podía doterajšieho stavu techniky nepoužíva vopred určený bod na okraji okna na zistenie, ako má byt zobrazená obrysová čiara.
Je treba uviest, že zobrazovacie okno a grafické útvary môžu mat rozličné tvary a vynález nie je vo svojom použití obmedzený na nijaké zvláštne tvary ako obdĺžnikové zobrazovacie okná a grafické útvary tvaru polygónu. Myšlienka pomyselnej čiary neobmedzenej dĺžky vyžaduje vysvetlenie. Požaduje sa, aby pomyselná čiara mala rozsah do vzdialenosti dostatočnej pre zaistenie·, aby koncový bod čiary ležal mimo grafického útvaru, ktorý má byt ohraničený, a je teda treba uviest, že pomyselná čiara nemusí mat rozsah až do nekonečna v prísnom zmysle matematickom. Rovnako sa podotýka, že sa má čítat a potom skúšat celkový počet priesečníkov, aby sa zistilo, či je párny alebo nepárny, rovnako je však možné pri každom krížení nastaviť alebo zrušiť jediný príznak, a tým len zisťovať paritu čísla predstavujúceho počet krížení. Podobne je podotýka, že zmienená pomyselná čiara neobmedzenej dĺžky môže byť priamka, krivka alebo slučka rôzneho tvaru, v najvýhodnejšom uskutočnení to však bude priamka.
Ďalšie výhodné vyhotovenie spočíva v tom, že zmienený nepárny alebo párny počet priesečníkov sa určí stopovaním okolo vopred určenej časti. To má tu výhodu, že keď sa stopuje okolo úplne vopred určenej časti, je tu istota, že bol zaznamenaný každý priesečník. Alternatívne by sa vykonávalo stopovanie pozdĺž pomyselnej čiary neobmedzenej čiary, pri ktorom by nebolo isté, že sú zaznamenané všetky priesečníky po dosiahnutí konca tejto pomyselnej čiary. To by malo za následok nevýhodne dlhý čas a bolo by možné zachytiť priesečníky, ktoré nie sú medzi vstupným bodom a výstupným bodom bežne uvažovaným.
Vo väčšine prípadov je zobrazovacie okno obdĺžnikové a za takýchto okolností je žiaduce, aby zmienený vopred určený bod bol na zvislici v okraji okna a aby pomyselná čiara, bola predĺžením časti okraja okna tvoriaca zmienenú zvislicu. Toto opatrenie je žiaduce, pretože na zistenie výstupného bodu a vstupného bodu systém bude už ohraničený vzhladom k pomyselným čiaram neobmedzenej dĺžky zahrňujúcim rohy okna, ako je uvedené vo vzťahu k algoritmu Sutherland - Hodgeman. V súlade s tým môže byt skúška na zistenie, či vopred určený bod je vo vnútri alebo mimo okraja okna, vykonaná s minimom prídavného kódu.
Doteraz nebolo uvedené nič o ťažkostiach, ktoré vznikajú, keď sa vyskytujú zvláštne geometrické podmienky, napríklad keď vopred určený bod je totožný s výstupným bodom alebo so vstupným bodom, alebo keď pomyselná čiara neobmedzenej dĺžky sa dotýka, avšak nekríži vopred určenú časť. Bolo by možné takéto prípady zanedbať, lebo sú vzácne, a pripustiť, že niekedy môžu byt vytvorené chybné obrysové čiary, avšak výhodné vyhotovenie predloženého vynálezu obsahuje mechanizmus pre prácu s týmito výnimočnými podmienkami. Jedna cesta riešenia týchto problémov spočíva v tom, že zmienená vopred určená časť sa vyšetruje, či prekročila zmienenú čiaru, keď vopred určená časť vedie k a potom sa dotýka čiary alebo sa dotýka a potom vedie od čiary na prvej strane čiary a vopred určená časť vedie k a potom sa dotýka alebo sa dotýka a potom vedie od zmienenej čiary na druhej strane čiary sa vyšetruje, či neprekročila zmienenú čiaru. Ktorákoľvek strana pomyselnej čiary neobmedzenej dĺžky môže byť označená ako prvá alebo druhá strana.
Príkladom toho je, ak vopred určená časť sa blíži k pomyselnej čiare neobmedzenej dĺžky zo druhej strany, dotýka sa jej a potom opúšťa na druhej strane, čo nebude čítané ako priesečník.
Naopak, ak sa okraj útvaru približuje k pomyselnej čiare neobmedzenej dĺžky z prvej strany, dotýka sa jej a opúšťa na prvej strane, bude to čítané ako dva priesečníky. Ak okraj útvaru vstúpil do alebo vystúpil zo zobrazovacieho okna vopred určeným bodom, potom, keď okraj útvaru pretína pomyselnú čiaru neobmedzenej dĺžky, sa zisťuje tým, či vopred určená časť mimo zobrazovacieho okna, ktorá sa vzďaíuje od pomyselnej čiary neobmedzenej dĺžky, tak robí na prvej strane alebo na druhej strane. Ak sa vzďaíuje na prvej strane, je to zistené ako priesečník a ak sa vzd’aíuje na druhej strane, nie je to zistené ako priesečník.
Podobný problém vzniká, keď vopred určený bod je totožný s výstupným bodom, alebo so vstupným bodom a skúška na zistenie, či obrysová čiara spájajúca výstupný bod a vstupný bod prechádzajú vopred určeným bodom, je blízko analogická. Ak obrysová čiara sa vzďaíuje od vopred určeného bodu na prvej strane pomyselnej čiary neobmedzenej dĺžky, je to zistené, akoby prechádzala vopred určeným bodom. Naopak, ak obrysová čiara sa vzďaíuje od vopred určeného bodu na druhej strane pomyselnej čiary, je to zistené, akoby neprechádzala vopred určeným bodom.
Iné výhodné uskutočnenie predloženého vynálezu, ktoré vylučuje potrebu opakovania už vykonaných skúšok, spočíva v tom, že keď stopovanie začína v bode ležiacom mimo zobrazovacieho okna, potom prvý vstupný bod je spárovaný s posledným výstupným bodom a počet priesečníkov zmienenej čiary medzi začiatočným bodom a vstupným bodom je uložený a pričítaný k počtu priesečníkov zmienenej čiary medzi posledným výstupným bodom a začiatočným bodom.
Vynález ďalej vytvára zariadenie na vykonávanie spôsobu definovaného vyššie, ktoré zahrňuje displej na zobrazovanie grafických útvarov a obmedzovaciu logiku na obmedzenie grafického útvaru majúceho okraj útvaru vzhíadom k zobrazovaciemu oknu majúcemu okraj okna, pričom táto obmedzovacia logika obsahuje prostriedok pre stopovanie okolo okraja útvaru na zistenie nejakého výstupného bodu, v ktorom okraj útvaru pretína okraj okna a vystupuje zo zobrazovacieho okna, a prostriedok pre stopovanie okolo okraja útvaru na zistenie nejakého vstupného bodu, v ktorom okraj útvaru pretína okraj okna a vstupuje do zobrazovacieho okna, ktorého podstata spočíva v tom, že obsahuje prostriedok na zistenie, či pomyselná čiara neobmedzenej dĺžky vychádzajúc vopred určeného bodu na okraji okna kríži časť okraja útvaru mimo zobrazovacieho okna medzi výstupným bodom a vstupným bodom v nepárnom alebo párnom počte priesečníkov, a či buď (1) pomyselná čiara kríži časť okraja útvaru v nepárnom počte bodov, nakreslí obrysovú čiaru pozdĺž okraja okna medzi výstupným bodom a vstupným bodom a prejde vopred určeným bodom na okraji okna, alebo (2) pomyselná čiara kríži časť okraja útvaru v párnom počte bodov, nakreslí obrysovú čiaru pozdĺž okraja okna medzi výstupným bodom a vstupným bodom neprechádzajúcu vopred určeným bodom.
Podía výhodného uskutočnenia predloženého vynálezu vopred určený bod leží na zvislici (b) v okraji okna a zmienená pomyselná čiara je predĺžením časti okraja okna tvoriaca zvislicu (b).
Podía ďalšieho výhodného uskutočnenia predloženého vynálezu stopovanie začína v bode mimo zobrazovacieho okna, potom je prvý vstupný bod spárovaný s posledným výstupným bodom a počet krížení pomyselnej čiary medzi začiatočný bodom a vstupným bodom sa uloží a pričíta k počtu krížení pomyselnej čiary medzi posledným výstupným bodom a začiatočným bodom.
Prehíad obrázkov na výkresoch
Vynález je znázornený na výkresoch, kde:
obr. 1 znázorňuje činnosť jedného uskutočenia vynálezu, obr. 2 znázorňuje činnosť vynálezu s grafickým útvarom zložitejšieho tvaru ako v obr. 1, obr. 3 znázorňuje použitie pomyselnej čiary neobmedzenej dĺžky, ktorá je predĺžením jedného okraja zobrazovacieho okna, obr. 4 znázorňuje usporiadanie, v ktorom okraj útvaru sa dotýka, avšak nekríži pomyselnú čiaru neobmedzenej dĺžky, obr. 5 znázorňuje usporiadanie, v ktorom vstupný bod alebo výstupný bod je totožný s vopred určeným bodom, obr. 6 je vývojová schéma znázorňujúca jedno uskutočnenie vynálezu, a obr. 7 schematicky znázorňuje typický hardware, ktoré môže obsahovať vynález.
Príklady uskutočnenia vynálezu
V obr. 1 je znázornený grafický útvar 2 a zobrazovacie okno 4.. Grafický útvar 2 má okraj 6 útvaru. Zobrazovacie okno £ má okraj 8 okna. Časť okraja 6 útvaru, ktorá je vo vnútri zobrazovacieho okna 4, je rovnaká v oboch prípadoch A a B. Ak sa začne v niektorom bode na okraji 6 útvaru 2, ktorý je vo vnútri zobrazovacieho okna 4 a stopuje sa okolo okraja 6 útvaru, systém vopred zistí jeden výstupný bod EX, kde okraj 6 útvaru pretína okraj 8 okna a opustí zobrazovacie okno 4. Pri ďalšom stopovaní okolo okraja 6 útvaru systém zistí jeden vstupný bod EN, v ktorom okraj 6 útvaru pretína okraj 8 okna a vstupuje do zobrazovacieho okna 4.
Čast okraja (5 útvaru ležiaca vo vnútri zobrazovacieho okna 4 a poloha výstupného bodu EX a vstupného bodu EN sú rovnaké v prípadoch A i B. Systém musí určiť, kde má nakresliť obrysovú čiaru 10. Obrysová čiara 10 by mala byt nakreslená pozdĺž okraja 8. okna priamo z bodu EX do bodu EN, alebo by mohla byť nakreslená pozdĺž okraja .8 okna z bodu EX do bodu EN cez vrcholy b,c,d a a. Ako je zrejmé z prehliadky prípadu A, správna cesta je priamo z bodu EX do bodu EN, zatiaí čo v prípade B je správna cesta cez vrcholy b,c,d a a.
Za účelom rozhodnutia medzi týmito dvoma prípadmi systém skúša zistiť, koľkokrát pomyselná čiara neobmedzenej dĺžky 12. kríži čast okraja 6 útvaru mimo zobrazovacieho okna ^4 medzi výstupným bodom EX a vstupným bodom EN. V prípade A skúška ukazuje nulový počet (párne číslo) kríženia oznamujúce, že obrysová čiara nemá prechádzať bodom P, to znamená, že obrysová čiara 10 je nakreslená pozdĺž okraja 8 okna priamo z bodu EX do bodu EN. V prípade B skúška ukazuje jedno kríženie (nepárne číslo) oznamujúce, že by obrysová čiara 10 mala prechádzať bodom P, to znamená, že obrysová čiara 10 je nakreslená pozdĺž okraja 8 okna z bodu EX do bodu EN cez rohy b a c, bod P a roh d a a.
Keď bola obrysová čiara 10 nakreslená, ohraničená plocha vo vnútri zobrazovacieho okna 4 je definovaná a môže byť predmetom štandardnej techniky vyplňovania plôch tieňovaním v časti grafického útvaru 2, ktorý je viditeľný vo vnútri zobrazovacieho okna 4. Je treba uviesť, že obrysová čiara 10 znázornená v obr. 1 má prehnanú hrúbku a v praxi môže byť obrysová čiara 10 nakreslená v ľubovoľnej hrúbke. V niektorých prípadoch môže mat obrysová čiara 10 nulovú hrúbku a slúžiť len ako hranica pre techniku vyplnenia plochy.
Okraj 6 útvaru je definovaný ako zoznam inštrukcií/vektorov, napríklad začiatočná oblasť, vektor 1, vektor 2, ...., koncová oblasť. Vektory môžu byť vo forme začiatočných a koncových súradníc, kriviek predstavovaných začiatočným bodom, koncovým bodom a krivosťou alebo niektorým iným vhodným vyjadrením. Stopovanie pozdĺž okraja 6 útvaru spôsobuje spracovanie zoznamu vektorov a pre každý vektor určenia, či čiara definujúca vektor pretína okraj 8 okna. Postupné čítanie vektorov, ich ohraničenie proti zobrazovaciemu oknu 4. a ich zobrazenie v ohraničenej forme je známe v doterajšom stave techniky, napríklad program GDDM. Prídavné kroky spracovania na určenie správnej obrysovej čiary 10 sú pridané k známemu spôsobu ohraničenia. Keď bola správna obrysová čiara určená, pridá sa k čiare ohraničených vektorov na vyslanie z hlavného počítača do displeja.
Obr. 2 znázorňuje činnosť vynálezu s grafickým útvarom 2 zložitejšieho tvaru. Skúška pre systém spočíva v stopovaní okolo časti okraja 6 útvaru mimo zobrazovacieho okna 4 medzi výstupným bodom EX a vstupným bodom EN, aby sa zistil počet kríženia tejto časti okraja 6 útvaru a pomyselnou čiarou 12 neobmedzenej dĺžky prebiehajúcej od bodu P.
V znázornenom usporiadaní bodu P a čiary 12 sú tu tri priesečníky 11, 12 a 13.· Tento nepárny počet krížení znamená, že obrysová čiara 10 by mala prechádzať bodom P. Ako je zrejmé, je to správny výsledok pre tento vopred určený bod P. Tiež je tu znázornený bod P1 a čiara 121 . Sú tu dva priesečníky 14 a 15 čiary 121. To znamená, že obrysová čiary 10 by nemala prechádzať bodom P1 . Opäť je zrejmé, že je to správny výsledok pre bod P' .
Obr. 3 znázorňuje prednostnú formu skúšky znázornenej v obr. 2. Pomyselná čiara 12 neobmedzenej dĺžky je pokračovaním jedného z okrajov zobrazovacieho okna 4. Bod P je totožný s rohom b. Toto usporiadanie je prednostné, pretože pri zaisťovaní výstupného bodu a vstupného bodu v súlade so známymi spôsobmi kríženia okraja 6 útvaru a pomyselnej čiary 12 neobmedzenej dĺžky obsahujúcej okraj zobrazovacieho okna bola už zistená. V prípade okraja 6 útvaru spôsobujúceho priesečník 11 bude obrysová čiara prechádzať bodom P, zatiaí čo pre okraj 6 útvaru nespôsobujúce žiadne priesečníky nebude obrysová čiara prechádzať bodom P.
Obr. 4 znázorňuje, ako systém zaobchádza s okrajmi 6 útvaru, ktoré sa dotýkajú, avšak nekrížia čiaru 12. Časť okraja 6 útvaru buď približujúca sa a potom sa dotýkajúca, alebo sa dotýkajúca a potom opúšťajúca čiaru 12 na prvej strane 14 čiary 12., sa uvažuje ako križujúca čiaru. Tiež grafický útvar 22 sa uvažuje ako križujúci čiaru 12 dvakrát. Časť 18 okraja 6 útvaru, ktorá sa približuje a potom dotýka čiary 12, sa počíta ako kríženie a časť 20 okraja 6 útvaru, ktorá sa dotýka a potom opúšťa čiaru 12, sa počíta ako kríženie.
Naopak, časť okraja 6 útvaru buď približujúca sa a potom sa dotýkajúca alebo sa dotýkajúca a potom opúšťajúca čiaru 12 na druhej strane 16 čiary 12, sa uvažuje ako nekrižujúca čiaru 12. Grafický útvar 24 sa tiež uvažuje ako nekrižujúci čiaru 12.
Obr. 5 znázorňuje, ako systém pracuje s usporiadaním, v ktorom vopred určený bod P je totožný buď s výstupným bodom EX alebo so vstupným bodom EN. Uvažuje sa, že bod P je časťou čiary 12 a pravidlo, či čiara 12 je krížená okrajom 6 útvaru, je rovnaké ako vyššie. Pravidlo zistenia, či obrysová čiara 10 prechádza bodom P, sa musí učiniť konzistentným s pravidlom, či okraj 6 útvaru kríži čiaru 12. Obrysová čiara 10 s koncom totožným s bodom P sa uvažuje, že prechádza bodom P, ak obrysová čiara 10 má časť vedúcu k alebo od bodu P na prvej strane 14. čiary 12. Časť vedúca k alebo od bodu P na druhej strane 16 sa nepočíta ako prechádzajúca bodom P.
Teda v obr. 5 má grafický útvar 26 okraj 6 útvaru, ktorý sa uvažuje, že kríži čiaru 12 raz, pretože má časť okraja 6 útvaru, ktorá sa dotýka a potom opúšťa čiaru 12 na prvej strane 14. V znázornenom prípade skúška na zistenie, či bod P je vo vnútri grafického útvaru 26 zisťuje, že bod P je vo vnútri grafického útvaru 26 a obrysová čiara 10 by mala prechádzať bodom P. Obrysová čiara 10 kreslená priamo z bodu EX do bodu EN by mala byt uvažovaná, že prechádza bodom P, pretože časť obrysovej čiary 10 vedie z bodu P na prvej strane 14. Je teda vytvorená správna obrysová čiara 10.
Naopak, grafický útvar 28 má okraj 6 útvaru, ktorý sa uvažuje, že nekrižuje čiaru 12 , pretože časť okraja 6 útvaru, ktorá sa dotýka čiary 12 a potom ju opúšťa na druhej strane 16, sa uvažuje, že nekrižuje. Pri nulovom počte kríženia (párne číslo) je bod P zistený mimo grafického útvar 23 a mala by byť nakreslená obrysová čiara 10 neprechádzajúca bodom P. Obrysová čiara 10 prechádzajúca z bodu EX do bodu EN cez rohy b,c,d a a sa uvažuje, že neprechádza od P, pretože časť opúšťajúca bod P tak robí na druhej strane 16.. Opát je vytvorená správna obrysová čiara.
Obr. 6 je vývojová schéma, znázorňujúca, ako môže pracoval jedno uskutočnenie vynálezu. Krok 32 zisťuje body, kde existuje okraj útvaru a vstupuje do zobrazovacieho okna. Krok 33 skúša, aby zistil, či je tu nulový počet takýchto krížení. Ak tomu je tak, znamená to, že grafický útvar je buď celý vo vnútri zobrazovacieho okna, alebo že zobrazovacie okno je celé vo vnútri grafického útvaru. Tieto dva prípady sú rozoznané krokom 34, ktorý číta počet krížení pomyselnej čiary. Ten je buď rovný nule (párne číslo, grafický útvar celý vo vnútri zobrazovacieho okna) (pričítanie zobrazovacieho okna vo Ak je párny, nežiada sa žiadna alebo jednej, trom, piatim . vnútri grafického útvaru), obrysová čiara a grafický útvar obrazovacieho okna (krok 35) . Ak je nakreslený vo vnútri je nepárny, je nakreslená obrysová čiara pozdĺž celého okraja okna (krok 36.
Keď boli v kroku 33 zistené vstupný bod a výstupný bod, potom v kroku 37 sú nakreslené časti okraja útvaru vo vnútri okna. U kroku 38 sú identifikované výstupný bod a priamo ho nasledujúci vstupný bod. To je vykonané stopovaním okolo okraja útvaru zo začiatočného bodu na okraji, ktorý môže byt vo vnútri alebo mimo okraja útvaru. Ak je začiatočný bod vo vnútri zobrazovacieho okna, potom sa najprv zistí výstupný bod a zodpovedajúci vstupný bod. Krok 39 zistí počet krížení a kroky 40 a 41 alebo 42 zaistí nakreslenie správnej obrysovej čiary. Ak je však začiatočný bod mimo zobrazovacieho okna, potom prvé kríženie okraja okna bude vstupným bodom. Zodpovedajúci výstupný bod (pre účely obrysovej čiary) bude posledný výstupný bod dosiahnutý pred tým, ako je obrysová čiara dotiahnutá. Kvôli zamedzeniu zbytočných opakovaní sa zistuje počet krížení pomyselnej čiary medzi začiatočným bodom a prvým vstupným bodom, uložia sa a potom sa pripočíta k počtu krížení medzi posledným výstupným bodom a návratom k začiatočnému bodu. Skúška pre smer obrysovej čiary sa potom vykoná rovnakým spôsobom ako prv. Nakoniec sa u kroku 43 vykoná skúška pre zistenie, či boli nakreslené všetky obrysové čiary a keď nie, proces sa vráti na krok 38.
Poznamenáva sa, že vynález bude typicky použitý ako časť programu počítača, ako je zmienený program GDDM. Tento Software podía vynálezu môže byť v iubovoinom programovacom jazyku. Alternatívne by bolo možné zaviesť vynálezu vo zvláštnom účelovom hardware. Iná alternatíva zrejmá odborníkovi by mohla spočívať na použití bežnej techniky na problém určenia smeru obrysovej čiary pri kreslení tej časti grafickej oblasti ležiacej mimo daného zobrazovacieho okna. Môže byť použitá v podstate rovnaká technika. Príklad takéhoto diferencovaného ohraničeného prostredia je popísaný v európskom patentovom spise číslo podanom v rovnaký deň ako predložená prihláška vynálezu rovnakým prihlasovateiom.
Obr. 7 schematicky znázorňuje príklad počítačového systému, v ktorom môže byt zabudovaný predložený vynález. Zoskupenie znázornené v obr. 7 môže byt označené ako zariadenie 48 pre grafiku.
Toto zariadenie pozostáva z hlavného počítača 68, ktorý riadi niekolko displejov a terminálov 50, 52. Hlavný počítač 68 obsahuje ústrednú procesorovú jednotku 54, uložený grafický program (GDDM) 56 a uložené grafické dáta (grafické útvary zložené zo zoznamov vektorov) 58, ktoré majú byt spracované a zobrazené na displeji. Ústredná procesorová jednotka 54 , keď pôsobí pod riadeným programom 56., slúži ako ohraničovacia logika k vykonávaniu požadovaných ohraničení grafických útvarov 64., 66, ktoré majú byt zobrazené na displejoch 50, 52. Ako bolo ukázané, rozličné grafické útvary 64., 66 sú ohraničené ohraničovacou logikou 54 , 56 , takže sa zobrazia len tie časti, ktoré sú viditeľné vo vnútri zobrazovacích okien 60, 62.

Claims (10)

  1. PATENTOVÉ NÁROKY
    1. Spôsob ohraničenia grafického útvaru majúceho okraj útvaru vzhíadom k zobrazovaciemu oknu majúcemu okraj okna, v grafickom spracovacom systéme, zahrňujúci stopovanie okraja útvaru na zistenie výstupného bodu (EX), v ktorom okraj útvaru pretína okraj okna a vystupuje z okna, a stopovanie okraja útvaru na zistenie vstupného bodu (EN), v ktorom okraj útvaru pretína okraj okna a vstupuje do okna, vyznačujúci sa tým, že sa zisťuje, či pomyselná čiara neobmedzenej dĺžky vychádzajúca z vopred určeného bodu (P) na okraji okna pretína čast okraja grafického útvaru ležiaceho mimo zobrazovacieho okna medzi výstupným bodom a vstupným bodom v nepárnom počte priesečníkov alebo v párnom počte priesečníkov, a či (1) keď pomyselná čiara pretína čast okraja útvaru v nepárnom počte priesečníkov, nakreslí sa obrysová čiara pozdĺž okraja okna medzi výstupným bodom a vstupným bodom prechádzajúci vopred určeným bodom na okraji okna, alebo (2) keď pomyselná čiara pretína čast okraja útvaru v párnom počte priesečníkov, nakreslí sa obrysová čiara pozdĺž okraja zobrazovacieho okna medzi výstupným bodom a vstupným bodom neprechádzajúca vopred určeným bodom.
  2. 2. Spôsob podía bodu 1, vyznačujúci sa tým, že pomyselná čiara je priamkou.
  3. 3. Spôsob podía bodu 2, 'vyznačujúci sa tým, že vopred určený bod je na zvislici (b) v okraji zobrazovacieho okna a pomyselná čiara je predĺženie časti okraja zobrazovacieho okna tvoriace zvislicu (b).
  4. 4. Spôsob podía ktoréhokoívek z bodov 1 až 3, vyznačujúci sa tým, že nepárny alebo párny počet sa zistí stopovaním okolo časti okraja grafického útvaru.
    15
  5. 5. Spôsob podía ktoréhokoľvek z bodov 1 až 4, vyznačujúci sa tým, že čast okraja útvaru sa vyšetruje, či prekročila pomyselnú čiaru, či vedie k a potom sa dotýka časti (18) pomyselnej čiary alebo sa dotýka a potom vedie od časti (20) pomyselnej čiary na prvej strane (14) pomyselnej čiary a čast okraja grafického útvaru sa vyšetruje, či neprekročila pomyselnú čiaru, ak časť okraja vedie k a potom sa dotýka alebo sa dotýka a potom vedie od pomyselnej čiary na druhej strane (16) pomyselnej čiary.
  6. 6. Spôsob podľa bodu 5, vyznačujúci sa tým, že obrysová čiara sa vyšetruje, či prechádza vopred určeným bodom, ak obrysová čiara prebieha od vopred určeného bodu na prvej strane pomyselnej čiary a obrysová čiara sa vyšetruje, či neprebieha vopred určeným bodom, ak obrysová čiara prebieha od vopred určeného bodu na druhej strane pomyselnej čiary.
  7. 7. Spôsob podľa ktoréhokoľvek z bodov 1 až 6, vyznačujúci sa tým, že stopovanie začína v začiatočnom bode ležiacom mimo zobrazovacieho okna, potom je prvý vstupný bod spárovaný s posledným výstupným bodom a počet krížení čiary medzi začiatočným bodom a vstupným bodom je uschovaný a pripočítaný k počtu krížení čiary medzi posledným výstupným bodom a začiatočným bodom.
  8. 8. Zariadenie na spracovanie grafiky spôsobom podľa bodu 1 až 7, zahrňujúce displej pre zobrazovanie grafických útvarov a obmedzovaciu logiku na obmedzenie grafického útvaru majúceho okraj útvaru vzhľadom k zobrazovaciemu oknu majúcemu okraj okna, pričom táto obmedzovacia logika obsahuje prostriedok pre stopovanie okolo okraja útvaru na zistenie nejakého výstupného bodu, v ktorom okraj útvaru pretína okraj okna a vystupuje zo zobrazovacieho okna, a prostriedok pre stopovanie okolo okraja útvaru na zistenie nejakého vstupného bodu, v ktorom okraj útvaru pretína okraj okna a vstupuje do zobrazovacieho okna, vyznačujúce sa tým, že obsahuje prostriedok na zistenie, či pomyselná čiara neobmedzenej dĺžky vychádzajúca z vopred určeného bodu na okraji okna kríži časť okraja útvaru mimo zobrazovacieho okna medzi výstupným bodom a vstupným bodom v nepárnom alebo párnom počte priesečníkov a či buď:
    (1) pomyselná čiara kríži časť. okraja útvaru v nepárnom počte bodov, nakreslí obrysovú čiaru pozdĺž okraja okna medzi výstupným bodom a vstupným bodom a prejde vopred určeným bodom na okraji okna, alebo (2) pomyselná čiara kríži časť okraja útvaru v párnom počte bodov, nakreslí obrysovú čiaru pozdĺž okraja okna medzi výstupným bodom a vstupným bodom neprechádzajúcej vopred určeným bodom.
  9. 9. Zariadenie podía bodu 8, vyznačujúce sa tým, že vopred určený bod leží na zvislici (b) v okraji okna a pomyselná čiara je predĺženie časti okraja okna tvoriace zvislicu (b).
  10. 10. Zariadenie podía bodu 8 alebo 9, vyznačujúce sa tým, že stopovanie začína v bode mimo zobrazovacieho okna, potom je prvý vstupný bod spárovaný s posledným výstupným bodom a počet krížení pomyselnej čiary medzi začiatočným bodom a vstupným bodom sa uloží a pripočíta k počtu krížení pomyselnej čiary medzi posledným výstupným bodom a začiatočným bodom.
SK2-94A 1991-07-05 1992-05-20 Graphics processing method and apparatus SK294A3 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP91306143A EP0521209B1 (en) 1991-07-05 1991-07-05 Graphics processing method, apparatus and computer program
PCT/EP1992/001123 WO1993001562A1 (en) 1991-07-05 1992-05-20 Graphics processing method and apparatus

Publications (1)

Publication Number Publication Date
SK294A3 true SK294A3 (en) 1994-05-11

Family

ID=8208340

Family Applications (1)

Application Number Title Priority Date Filing Date
SK2-94A SK294A3 (en) 1991-07-05 1992-05-20 Graphics processing method and apparatus

Country Status (10)

Country Link
US (1) US5384903A (sk)
EP (1) EP0521209B1 (sk)
JP (1) JPH0812701B2 (sk)
CA (1) CA2069117A1 (sk)
DE (1) DE69132007T2 (sk)
HU (1) HU214795B (sk)
PL (1) PL171287B1 (sk)
RU (1) RU2117331C1 (sk)
SK (1) SK294A3 (sk)
WO (1) WO1993001562A1 (sk)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8368719B2 (en) 2008-07-03 2013-02-05 Research In Motion Limited Method and system for fast clipping of polygons
WO2010000057A1 (en) 2008-07-03 2010-01-07 Research In Motion Limited Method and system for fast clipping of line segments
US10026204B2 (en) 2015-01-27 2018-07-17 Splunk Inc. Efficient point-in-polygon indexing technique for processing queries over geographic data sets
US9836874B2 (en) 2015-01-27 2017-12-05 Splunk Inc. Efficient polygon-clipping technique to reduce data transfer requirements for a viewport
US9916326B2 (en) 2015-01-27 2018-03-13 Splunk, Inc. Efficient point-in-polygon indexing technique for facilitating geofencing operations
US9607414B2 (en) 2015-01-27 2017-03-28 Splunk Inc. Three-dimensional point-in-polygon operation to facilitate displaying three-dimensional structures

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB8411579D0 (en) * 1984-05-05 1984-06-13 Ibm Graphic display systems
JPS62159283A (ja) * 1986-01-08 1987-07-15 Hitachi Ltd 塗り潰し多角形クリツピング方式
JPS62209675A (ja) * 1986-03-11 1987-09-14 Canon Inc 画像認識装置
US5231696A (en) * 1987-05-14 1993-07-27 France Telecom Process and circuitry for implementing plotting of overextending curves inside a display window
JPH077456B2 (ja) * 1988-11-11 1995-01-30 大日本スクリーン製造株式会社 重合度による図形の認識装置
US5195177A (en) * 1989-09-08 1993-03-16 Matsushita Electric Industrial Co., Ltd. Clipping processor

Also Published As

Publication number Publication date
JPH05151362A (ja) 1993-06-18
HUT67428A (en) 1995-04-28
DE69132007T2 (de) 2000-09-14
CA2069117A1 (en) 1993-01-06
EP0521209B1 (en) 2000-03-01
JPH0812701B2 (ja) 1996-02-07
HU9400035D0 (en) 1994-05-30
US5384903A (en) 1995-01-24
PL171287B1 (pl) 1997-03-28
HU214795B (hu) 1998-05-28
EP0521209A1 (en) 1993-01-07
RU2117331C1 (ru) 1998-08-10
DE69132007D1 (de) 2000-04-06
WO1993001562A1 (en) 1993-01-21

Similar Documents

Publication Publication Date Title
EP0112942B1 (en) Graphics display system and method
US4958305A (en) Polygon edge clipping
US8446409B2 (en) Method and apparatus for rendering computer graphic images of translucent and opaque objects
JP3066599B2 (ja) コンピュータ出力表示装置で表示するための多角形をクリップする方法
SK294A3 (en) Graphics processing method and apparatus
US6172682B1 (en) Detecting insideness of a rectangle to an arbitrary polygon
JPH07109629B2 (ja) 多角形の識別方法、多角形を識別するシステム
JPH07104966A (ja) 長方形の相対位置を素早く判定するためのシステムおよび方法
WO2001048588A1 (en) Display for a graphical user interface
EP0156052A1 (en) An interactive discharge system
US5231695A (en) Generalized clipping in an extended frame buffer
JPH06103013A (ja) ウィンドウの拡大縮小方法
US5384905A (en) Method for tracing a line image by monitoring the distance between two trace base points
JP2625612B2 (ja) 画像処理方法および画像処理装置
RU94014618A (ru) Способ отсечения графического материала в системе обработки графических данных и устройство обработки графических данных
CN113501030B (zh) 一种用于ats系统的车次窗遮挡处理装置
JP3293157B2 (ja) 点の閉領域検索処理装置
JPH0573002A (ja) カーソル制御方式
JP2000122787A (ja) イメージデータ表示装置
JP2721364B2 (ja) 図編集装置
CN114546174A (zh) 笔迹处理方法、显示设备及可读存储介质
JP3028543B2 (ja) 図形の再表示方式
JPH09204166A (ja) 文書編集装置
JPH0778192A (ja) 画像処理方法及び装置
JPS63181028A (ja) ウインドウの認識・表示方式