NO318160B1 - Skal±rbar visualisering for interaktiv geometrimodellering - Google Patents

Skal±rbar visualisering for interaktiv geometrimodellering Download PDF

Info

Publication number
NO318160B1
NO318160B1 NO20013406A NO20013406A NO318160B1 NO 318160 B1 NO318160 B1 NO 318160B1 NO 20013406 A NO20013406 A NO 20013406A NO 20013406 A NO20013406 A NO 20013406A NO 318160 B1 NO318160 B1 NO 318160B1
Authority
NO
Norway
Prior art keywords
node
model
computer
level
vertices
Prior art date
Application number
NO20013406A
Other languages
English (en)
Other versions
NO20013406D0 (no
NO20013406L (no
Inventor
Richard P Hammersley
Hong-Qian Karen Lu
Original Assignee
Schlumberger Technology Bv
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 Schlumberger Technology Bv filed Critical Schlumberger Technology Bv
Publication of NO20013406D0 publication Critical patent/NO20013406D0/no
Publication of NO20013406L publication Critical patent/NO20013406L/no
Publication of NO318160B1 publication Critical patent/NO318160B1/no

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/05Geographic models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/20Finite element generation, e.g. wire-frame surface description, tesselation

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Geometry (AREA)
  • Software Systems (AREA)
  • Computer Graphics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Remote Sensing (AREA)
  • Image Generation (AREA)
  • Processing Or Creating Images (AREA)
  • Measurement And Recording Of Electrical Phenomena And Electrical Characteristics Of The Living Body (AREA)
  • Radar Systems Or Details Thereof (AREA)

Description

Oppfinnelsens område
Foreliggende oppfinnelse vedrører generelt områdene for interaktiv, tredimensjonal datagrafikk og geometrimodellering. Mer spesielt angår oppfinnelsen skalérbar visualisering for interaktiv geometrimodellering. Enda mer spesielt ved-rører oppfinnelsen skalérbar visualisering for interaktiv geometrimodellering i geovitenskaper.
Oppfinnelsens bakgrunn
Geologer, geofysikere og petroleumsingeniører benytter modeller, innbefattende datamodeller, av jordskorpen til å planlegge undersøkelser og produksjon av hydrokarboner, og i mindre grad, andre mineraler. Etter hvert som det blir mer knapphet på hydrokarboner, blir nøyaktigheten av datamodellene i økende grad viktig for å begrense omkostningene med å lokalisere og produsere hydrokarboner og de tilknyttede kostnader for hydrokarbonprodukter, slik som bensin og olje til oppvarming.
Interaktivitet er avgjørende for geovitenskapelige modellerings- og visuali-ser! n gs-a n ve n d e I se r. interaktive anvendelser må reagere hurtig på brukerkom-mandoer, tillate brukeren lett å styre hvordan en modell blir bygd og visualisert. Når modellene blir større, blir imidlertid anvendelsen vanligvis langsommere. Ved et visst punkt overskrider responstiden interaktivitetskriteriene. Selv om bruk av en hurtigere prosessor og grafikk-maskinvare kan gjenvinne tapt interaktivitet, kan brukere hurtig lage modeller som krever mer datakraft enn den som er tilgjengelig.
Adaptiv visualisering har vært gjenstand for betydelig forskning i de senere år i det visualiseringsmiljø som arbeider med visualiseringer av store modeller. Nylig har adaptiv visualisering opptrådt i noen produkter slik som f.eks. det aktive overflatedefinisjons-trekket i IRIS Performer 2.2 fra Silicon Graphics ® Inc. I disse arbeidene blir eksisterende geometri modeller visualisert som vist på fig. 1. Vanligvis blir dataene 2 brukt til å lage en overflaterepresentasjon for geometrimodellering 4, slik som NURBS. Geometrimodellen 6 er konstruert fra overflaterepresentasjonen for geometrimodellering. For interaktivt å visualisere en stor modell, blir overflaterepresentasjonen av modellen 4 omformet til representasjonen av den valgte grafikkpakke 8, som så blir visualisert 10. For interaktiv geometrimodellering tar denne løsningen ikke bare mer lagerplass, men det tar også tid å rekon-struere den adaptive visualiseringsrepresentasjon hvis den underliggende geometrimodell er blitt endret.
Europeisk patentsøknad EP 0 784 295 A2 med tittel "Mesh simplification and construction of meshes" beskriver en fremgangsmåte hvor et progressivt maskenett blir bygde fra en gitt triangelbasert modell. Patentsøknaden beskriver hvordan mange desimerte skisser av modellen, f.eks. desimering med hensyn til en betraktning av en avkortet kjegle, skal bygges. I mange domener forandres modellene konstant. Det krever at den progressive maskerepresentasjon må om-bygges hver gang modellen endres, noe som er uoverkommelig kostbart. Det er derfor ønskelig å ha en fremgangsmåte og et system som gjør det mulig å betrakte modellen mens modellen bygges.
Oppsummering av oppfinnelsen
Ifølge ett aspekt av oppfinnelsen angår den generelt en fremgangsmåte for visualisering av en modell som omfatter en første overflate, idet fremgangsmåten er særpreget ved de trinn som er angitt i den karakteriserende delen av krav 1. Fremgangsmåten blir implementert i et programmert datamaskinsystem omfatten-de en prosessor, et datalagringssystem, minst én innmatingsanordning og minst én utmatingsanordning, idet datamaskinsystemet er særpreget ved de trekk som er angitt i den karakteriserende delen av krav 21. Et ytterligere aspekt av oppfinnelsen en fremgangsmåte for interaktiv bygging og samtidig visualisering av en modell som omfatter en eller flere overflater, idet fremgangsmåten implementeres i en programmert datamaskin som omfatter en prosessor, et datalagringssystem, minst én innmatingsanordning og minst én utmatingsanordning, og der fremgangsmåte og modellen lagres på et datamaskinlesbart medium, idet fremgangsmåten er særpreget ved de trinn som er angitt i den karakteriserende delen av krav 54. Et enda ytterligere aspekt av oppfinnelsen er en fremgangsmåte for interaktiv bygging og samtidig visualisering av geologiske data som representerer geovitenskapelig modell av karakteristikker til et geologisk område, idet den geovitenskapelige modell omfatter ett eller flere geometriobjekter, og der fremgangsmåten implementeres i en programmert datamaskin som omfatter en prosessor, et datalagringssystem, minst én innmatingsanordning og minst én utmatingsanordning, og der fremgangsmåte og dataene lagres på et datamaskinlesbart medium, idet fremgangsmåten er særprege.t ved de trinn som er angitt i den karakteriserende delen av krav 55. Et aspekt ved oppfinnelsen er også en gjenstand for fremstilling av resultatene fra fremgangsmåtene ifølge foreliggende oppfinnelse samt datamaskinsystemet ifølge foreliggende oppfinnelse, idet denne gjenstanden for fremstilling er særpreget ved de trekk som er angitt i den karakteriserende delen av krav 38. Ytterligere fordelaktige utførelser og trekk er angitt i de uselvstendige kravene.
Implementeringer av oppfinnelsen kan innbefatte én eller flere av følgende utførelsesformer. Den første overflate kan omfatte ett eller flere toppunkter og én eller flere kanter. Bestemmelsen kan omfatte å velge, basert på den avkortede kjeglebetraktning, de toppunkter som skal gjengis blant det ene eller de flere topp-punkter og de kanter som skal gjengis blant den ene eller de flere kanter. De topp-punkter som skal gjengis og de kanter som skal gjengis, kan være tessellerte (mosaikkformede). Fremgangsmåten kan videre omfatte inndeling av overflaten i nj noder ved oppløsningsnivå-i ved bruke ett sett med grenser ved nivå-i; å inndele overflaten i nj+1 noder ved oppløsningsnivå-i+1 ved å bruke et sett med grenser ved nivå-i+1, idet oppløsningsnivå-i+1 har større oppløsning enn oppløsnings-nivå-i. Fremgangsmåten kan videre omfatte å tilordne hver node ved nivå-i+1 med en unik node ved nivå-i; å tilordne hver node ved nivå-i med de noder ved nivå-i+1 som er tilordnet noden; og hver node er tilordnet et grenseobjekt, der hvert grenseobjekt rommessig avgrenser sin tilordnede node.
Å velge de toppunkter som skal gjengis, kan omfatte å velge en nodefront blant nodene og samle toppunktene fra nodefronten. Å velge nodefronten kan omfatte frasortering av de noder som er utenfor en avkortet betraktningskjegle, idet den avkortede betraktningskjegle kan bestemmes ved hjelp av den avkortede betraktningskjegle hvorfra overflaten skal betraktes. Å velge nodefronten kan omfatte å velge noder blant de noder som har grenseobjekter som skjærer den avkortede betraktningskjegle. Utvelgelsen kan omfatte å projisere en node ved nivå-i på en skjerm. Projeksjonen av noden ved nivå-i på skjermen kan ha et areal. Utvelgelsen kan videre omfatte å tilføye en node ved nivå-i til nodefronten hvis arealet av projeksjonen er mindre enn en forutbestemt minimumsoppløsning; å tilføye noden
ved nivå-i til nodefronten hvis det ikke er noen noder ved nivå-i+1 tilordnet ved nivå-i; og ta i betraktning de noder ved nivå-i+1 som er tilordnet noden ved nivå-i for innbefatning i nodefronten hvis arealet av projeksjonen ved noden ved nivå-i er større enn en forutbestemt minste oppløsning.
Grenseobjektet for en nivå-i node kan være en kule. Noden ved nivå-i kan tilføyes nodefronten hvis følgende ligning er tilfredsstilt:
hvor
K er en konstant beregnet for den avkortede kjeglebetraktning; og D er avstanden fra midten av nivå-i nodens grenseobjekt til et betraktningspunkt tilknyttet den avkortede betraktningskjegle.
Projeksjonen kan være på et projeksjonsplan hvor projeksjonsplanet har en maksimal sidelengde, og hvor projeksjonen blir betraktet fra betraktningspunktet gjennom en betraktningsåpning, hvor betraktningsåpningen har en sidelengde som svarer til den minste sidelengde av projeksjonsområdet, hvor
hvor
L er forholdet mellom den minste sidelengde av projeksjonsområdet på projeksjonsplanet og den tilsvarende sidelengde av betraktningsåpningen;
Rmin(skjerm) er den forutbestemte radius av det minste projeksjonsområdet på skjermen; og
D er avstanden fra betraktningspunktet til projeksjonsplanet. Noden ved nivå-i kan omfatte én eller flere simplekser, hvor hver simpleks omfatter en overflatenormal, der
grenseobjektet for en node ved nivå-i er en kule;
noden ved nivå-i blir tilføyd nodefronten hvis følgende ligning er tilfredsstilt:
hvor
f(ø,Aø) er en skaléringsfunksjon for middelnormalen 0
og Aø er avviket til overflatenormalene ved nivå-i nodens simplekser
K er en konstant beregnet for den avkortede betraktningskjegle; og D er avstanden fra midten av en nivå-i nodes grenseobjekt til et betraktningspunkt tilordnet den avkortede betraktningskjegle;
f(0,AØ) kan være forhåndsberegnet og lagret i en oppslagstabell.
Fremgangsmåten kan videre omfatte fjerning av toppunkter som ikke lenger skal gjengis, fra listen over toppunkter som skal gjengis og tilføyelse av toppunkter til listen over toppunkter som skal gjengis når den avkortede betraktningskjegle blir endret. Fjerning av tesselleringen fra et parti som ikke lenger skal gjengis, innbefatter at de toppunkter som ikke lenger skal gjengis, kan innbefatte å benytte dekremental tessellering. Tessellering av en tilføyd del av overflaten som innbefatter de tilføyde toppunkter, kan utføres ved å benytte inkremental tessellering.
Overflaten kan omfatte én eller flere celler og et todimensjonalt kart, hvor det todimensjonale kart omfatter alle toppunktene i overflaten, idet det todimensjonale kart har et domene og et område. Tessellering kan omfatte tessellering av et delsett av toppunktene i domenet til det todimensjonale kart; og å frembringe et triangelmaskenett ved å bruke rekkeviddeverdiene til delsettet med toppunkter og domenets tessellering. Tessellering av delsettet med toppunkter i domenet til det todimensjonale kart, kan innbefatte en valgt samling av kanter.
Overflaten kan omfatte én eller flere 2-celler, én eller flere 1-celler som danner grensene til 2-cellene, og én eller flere 0-celler som utgjør grensene til 1-cellene. Gjengivelse kan omfatte å desimere 1-cellene; å identifisere de desimerte 1-celler som utgjør grensen til en 2-celle; å detektere en skjæring mellom 1-cellene som utgjør grensen til 2-cellen; og å fjerne skjæringen. Hver 1-celle kan omfatte én eller flere simplekser. Desimering av en 1-celle kan omfatte å bygge et tre for 1-cellen ved å tildele hver simpleks i 1-cellen til en unik bladnode i treet; og å tildele n sammenkoplede noder ved nivå-i+1 med en node ved nivå-i; å definere som kritiske toppunkter ved oppløsningsnivå-i, grensetoppunktene for nodene ved nivå-i; og å velge en nodefront for treet; å samle toppunktene fra nodefronten; å tilføye 0-cellene til samlingen av toppunkter; og å bygge en samling av kanter fra toppunktene i et domene for et todimensjonalt kart.
Den avkortede betraktningskjegle kan relateres til en kameraposisjon. Kameraposisjonen kan ha en historie og en aktuell fremtidig tidsposisjon ved et fremtidig tidspunkt. Fremgangsmåten kan videre omfatte å forutsi, før det fremtidige tidspunkt, kameraposisjonen ved det fremtidige tidspunkt basert på kameraposisjonens historie; å beregne, forut for det fremtidige tidspunkt, den fremtidige tidsandel av den første overflate som skal gjengis ved det fremtidige tidspunkt; å bestemme, forut for det fremtidige tidspunkt, den fremtidige gjengivelsesoppløsning av den fremtidige tidsdel basert på en avkortet betraktningskjegle hvorfra den første overflate skal betraktes ved det fremtidige tidspunkt; og å gjengi på utmatingsanordningen, når det fremtidige tidspunkt kommer, den fremtidige tidsandel av den første overflate ved å bruke gjengivelsesoppløsningen ved det fremtidige tidspunkt hvis den forutsagte, fremtidige tidsposisjon for kameraet i det vesentlige svarer til den aktuelle fremtidige tidsposisjon for kameraet. Forutsigelse kan gjen-nomføres ved hjelp av et Kalman-filter.
Fremgangsmåten kan ha ett eller flere ytelseskriterier og ett eller flere kvalitetskriterier. En bruker kan tillates å justere én eller flere parametere, hvor justering av minst én eller flere parametere resulterer i et kompromiss mellom minst ett ytelses kriterium og minst ett kvalitetskriterium.
Fremgangsmåten kan videre omfatte gjengivelse på utmatingsanordningen, ved å bruke gjengivelsesoppløsningen, av en representasjon av en materialegenskap tilknyttet den gjengitte del av den første overflate.
Ifølge et annet aspekt angår oppfinnelsen generelt en fremgangsmåte for visualisering av en modell som omfatter én eller flere overflater. Fremgangsmåten omfatter å bygge opp en fleroppløsningsrepresentasjon av én av den ene eller de flere overflater; å generere en grafisk modell basert på representasjonen av fler-oppløsningsoverflaten; og å gjengi den grafiske modell av overflaterepresentasjonen.
Implementeringer av oppfinnelsen kan innbefatte én eller flere av følgende utførelsesformer. Fremgangsmåten kan videre omfatte å generere en geometrimodell basert på representasjonen av fleroppløsningsoverflaten; å innbefatte geometrimodellen og representasjonen av fleroppløsningsflaten i en grafisk modell; og å gjengi den grafiske modell.
Ifølge et annet aspekt angår oppfinnelsen en fremgangsmåte for visualisering av geologiske data som representerer en geovitenskapelig modell av karakteri-stikkene ved et geologisk område, idet den geovitenskapelige modell omfatter ett eller flere geometriske objekter. Fremgangsmåten omfatter adaptiv visualisering av de geologiske data i den geovitenskapelige modell ved å modifisere visualiseringen av et geometrisk objekt i henhold til en avkortet betraktningskjegle hvorfra det geometriske objekt skal betraktes.
Kort beskrivelse av tegningene
Fig. 1 er et blokkskjema over et tidligere kjent system for visualisering av en geometrisk modell. Fig. 2 er et blokkskjema over et system for skalérbar visualisering for interaktiv geometrisk modellering i henhold til foreliggende oppfinnelse.
Fig. 3 er en illustrasjon av en celle.
Fig. 4 er en illustrasjon av celler med forskjellige dimensjoner.
Fig. 5 er en illustrasjon av klassifisering.
Fig. 6 er en illustrasjon av celler som deles etter klassifisering.
Fig. 7 er en illustrasjon av et gitter.
Fig. 8 er en illustrasjon av et firertre.
Fig. 9 er en illustrasjon av en grafisk representasjon av et firertre.
Fig. 10 er en illustrasjon som viser et toppunkt som forkastes fra en graf uten å endre grafens topologi.
Fig. 11 er en illustrasjon av kritiske toppunkter.
Fig. 12 viser integrasjon av geometri og grafikk.
Fig. 13 er et flytskjema over adaptiv visualisering i henhold til foreliggende oppfinnelse.
Fig. 14 illustrerer grensekule-projeksjon.
Fig. 15 illustrerer geometrien ved perspektivbetraktning.
Fig. 16 illustrerer transformasjonen av betraktningsåpningen.
Fig. 17 illustrerer virkningen på grensekule-projeksjon av bevegelse av grensekulen bort fra betraktningsretningen. Fig. 18 illustrerer synligheten av et orientert plan med hensyn til betraktningsretningen.
Fig. 19 er et flytskjema over en algoritme for utvelgelse av toppunkter.
Fig. 20 illustrerer dekremental Delaunay-tessellering.
Fig. 21 illustrerer bruk av begrenset Delaunay-tessellering ved dekremental Delaunay-tessellering. Fig. 22 illustrerer taktstyring av elementene ved adaptiv visualisering i henhold til foreliggende oppfinnelse. Fig. 23 illustrerer forholdet mellom kvalitet og ytelse av det adaptive visuali-seringssystem i henhold til foreliggende oppfinnelse.
Fig. 24a, 24b og 24c illustrerer det å gjøre en modell koherent.
Fig. 25 illustrerer en firertrenode som hviler på eller rir på to eller flere 2-celler. Fig. 26a, 26b og 26c illustrerer tessellering av en ikke-koherent modell.
Fig. 27a og 27b illustrerer tessellering av en ikke-koherent modell.
Fig. 28a og 28b illustrerer dannelse av en selvskjæring når et toppunkt blir utelatt fra en 1-celle. Fig. 29a, 29b, 29c og 29d illustrerer desimering av en 1-celle ved å bruke et binært tre. Fig. 30a, 30b, 30c og 30d illustrerer avkortet betraktningskonus-frasortering av en 1-celle. Fig. 31a, 31b, 31c og 31 d illustrerer virkningen av konvekse hull på den avkortede betraktningskjegle-frasortering av en 1-celle. Fig. 32 illustrerer en brukers mulighet til å kompromisse mellom kvalitet og ytelse. Fig. 33 illustrerer det samlede objekthierarki for et system i henhold til foreliggende oppfinnelse. Fig. 34 illustrerer en tilstandsmaskin i henhold til foreliggende oppfinnelse.
Beskrivelse av de foretrukne utførelsesformer
To av hovedformålene ved interaktiv geometrimodellering for store modeller er lagringsbruk og gjengivelsesytelse. Med den teknologi som for tiden er tilgjengelig for kommersiell geometrimodellering må hele modellen befinne seg i hoved-lageret. For å understøtte et bredt område med geovitenskapelige anvendelser er geometrimodelleringsmotoren og grafikkmotoren to separate programvarepakker fra forskjellige leverandører. Begge motorene representerer geometrimodellen på sine egne måter, noe som krever enda mer lagerplass. Det er millioner av triangler tilstede i en stor modell. Den eksisterende grafiske maskinvare i en middels arbeidsstasjon eller personlig datamaskin kan ikke gjengi slike modeller interaktivt. I en typisk seismisk oppløsningsmodell som f.eks. omfatter 25 overflater hver med 1000 x 1000 gitre hver, er det 50 millioner triangler. En middels arbeidsstasjon fra år 1998 kan tegne opp omkring 0,5 millioner triangler pr. sekund. Det tar omkring 100 sekunder å tegne scenariet. For å gjengi minst 10 delbilder pr. sekund (en vanlig angitt nedre grense for interaktiv visualisering), må den grafiske maskinvare være minst 1000 ganger hurtigere.
SIGMA, en skalérbar, interaktiv geometrimodelleringsarkitektur, beskrevet i US-patentsøknad, serienr. 09/163,075, med tittel MODELING AT MORE THAN ONE LEVEL OF RESOLUTION, som herved inntas som referanse, løser noen av disse problemene. SIGMA tilveiebringer en overflaterepresentasjon med flere opp-løsninger. Med denne representasjonen understøtter SIGMA effektive geometri-utregninger for oppbygging av geometrimodeller, tilveiebringer adaptiv desimering av modeller uten å bryte sammen, og muliggjør delvis lasting av modellen fra et varig lager.
Oppfinnelsen, et system for skalérbar visualisering for interaktiv geometrimodellering, tar for seg det visualiseringsaspektet ved SIGMA som muliggjør visualisering av store modeller. SIGMA's overflaterepresentasjon og dens desimering og delvise lastingsalgoritmer blir brukt i adaptiv visualisering for interaktiv geometrimodellering. For å oppnå den ønskede ytelse, blir den modell som visualiseres, dynamisk desimert i henhold til kameraposisjonen med varierende oppløsning over modellen. En effektiv projeksjonsmetode letter slik dynamisk oppførsel. Den samme representasjon av modellen blir brukt til både geometrimodell-bygging og visualisering. Visualiseringsalgoritmene gjelder både koherente modeller (som diskutert nedenfor) og ikke-koherente modeller. De materielle egenskapene til en modell blir også visualisert.
Implementeringer av systemet kan tilveiebringe én eller flere av følgende trekk: 1. Adaptive visualiseringsteknikker kan anvendes for interaktiv geometrimodellering. Geometrimodellen kan bygges opp fra skrap eller kan gjennomgå store strukturelle endringer. Den adaptive visualisering anvendes under modellkonstruksjonen og på en eksisterende modell. 2. Overflaterepresentasjonen kan benyttes til visualisering og geometriberegning. 3. Både geometrirepresentasjonen og visualiseringen kan oppdateres in-krementalt istedenfor å bli rekonstruert når modellen endres. 4. Visualiseringsteknikken kan anvendes på koherente geometrimodeller og
ikke-koherente geometrimodeller som har inkonsistente mikro- og makro-topologier (som vil bli forklart senere).
5. Den adaptive visualiseringsteknikk kan anvendes på et geovitenskapelig
modelleringsdomene som har store, ikke-mangfoldige geometrimodeller med høy oppløsning.
Systemet er illustrert på fig. 2. Dataene 12 blir brukt til å bygge SIGMA-overflaterepresentasjonen 14, som blir brukt til å bygge både en geometrimodell 16 og en grafikkmodell 18. Geometrimodellen 16 og den underliggende SIGMA-overflaterepresentasjon blir brukt til å generere grafikkmodellen til geometrimodellen 20. Grafikkmodellene 18 og 20 blir gjengitt på en fremvisningsanordning 22.
Selv om den følgende diskusjon fokuserer på anvendelse av systemet ved geovitenskapelig modellering, vil man forstå at det her beskrevne system kan anvendes på enhver geometrimodell. Medisinsk avbildning vil f.eks. ha nytte av den teknikk som beskrives her.
For å undersøke hydrokarboner blir forskjellige loggedata og seismiske un-dersøkelser tolket for å frembringe modeller som beskriver strukturen og egenskapene til bergarter og fluid- og gass-innhold i undergrunnen. For å lette hurtig, nøyaktig beslutningstakene bør aktiviteter eller anvendelser i undersøkelsen fra forskjellige disipliner sentreres omkring en felles modell. En slik modell blir kalt en felles jord modell (Shared Earth Model, SEM). Geometrimodeller som beskriver den tredimensjonale (3D) struktur av undergrunnen og egenskaper i denne, er nøkkelingredienser i den felles jordmodell.
GEOMETRIMODELLERING
Rammeverket for anvendelse av tredimensjonal geometrimodellering som er utviklet av foreliggende patentsøker, Common Model Bu ilder, benytter en geometrimotor kalt det geometriske søkegrensesnitt (Geometry Query Interface, GQI), beskrevet i US-patentsøknad, serienr. 08/772,082 med tittel MODELING GEOLOGICAL STRUCTURES AND PROPERTIES, som herved inntas som referanse. GQI er bygget på en kommersiell geometrikjerne, SHAPES®, fra XOX Corporation®. I tillegg tilveiebringer GQI egenskapsbasert modellering og et materialegenskap-rammeverk for geometrimodellering i geovitenskaper. Geometrimodellen inneholder geometriske, topologiske og materielle egenskapsfordelinger. GQI skjelner videre mellom makrotopologi og mikrotopologi.
Geometri
Geometri er den punktsatte representasjon av geometrimodellkomponen-ter, slik som punkter, kurver og flater. Geometri representerer med andre ord for-mene til disse komponentene. I en geometrimodell av undergrunnen representerer overflater diskontinuitetene for jordens matertalegenskaper. Den geometri som betraktes her, er stykkevis lineær, dvs. at kurver er polylinjer og overflater er triangel-masker. I en slik geometri blir et punkt kalt en 0-simpleks, et linjesegment blir kalt en 1-simpleks og et fylt triangel i det tredimensjonale rom blir kalt en 2-simpleks. Nøyaktige definisjoner av simplekser kan finnes i US-patentsøknad, serienr. 09/163,075 med tittel MODELING AT MORE THAN ONE LEVEL OF RESOLUTION.
Geometriobjekter i SHAPES® blir modellert som områder på kurver, overflater, eller i rommet. Denne kurven, overflaten eller rommet som definerer den underliggende hendelse for et objekt, blir modellert som bilde av en parametrisk funksjon, kalt et "kart". Et kart er en kontinuerlig funksjon fra et domenerom til et områderom. Områderommet må være det samme for alle kurver og overflater og er typisk et tredimensjonalt euklidisk rom. Domenerommet for en overflate er typisk et rektangel i planet, og når klassifiseringen fortsetter (diskutert nedenfor), blir domenet begrenset til delsett av rektangelet.
Makrotopologi
Makrotopologi beskriver forholdet mellom topologtske komponenter i en
geometrimodell. Makrotopologien er representert ved "celler" som er de grunnleggende byggeblokker for geometrimodellen som benytter SHAPES®. En celle er et baneforbundet delsett av et euklidrom med en fast dimensjon. Baneforbundet betyr at hvilke som helst to punkter i cellen kan forbindes med en bane eller vei i.cellen, som illustrert på fig. 3. Området 24 er en celle fordi hvilke som helst to punkter, slik som punktene 26 og 28, kan forbindes med en bane, slik som bane 30. Likeledes er området 32 en celle. Dimensjon refererer til dimensjonen av cellens geometri, en 0-celle er et punkt, en 1-celle er en kurve, en 2-celle er en overflate og en 3-celle er et volum. På fig. 4 er områdene 30 og 32 distinkte celler i likhet med linjesegmentene, f.eks. 34, mellom skjæringspunkter, f.eks. 36 og 38, og som skjæringspunktene selv, f.eks. 36 og 38. Cellene representerer forbundne områder eller kart som er avgrenset av celler med lavere dimensjon.
Makrotopologisk identifikasjon
For å tilveiebringe overflaterepresentasjonen er det nødvendig å kjenne hvilke toppunkter eller hjørner som ligger på grensen til en overflate. Denne infor-masjonen blir opprettholdt ved hjelp av geometrimotoren til SHAPES®, og SHAPES® tillater effektive søk for å identifisere om et toppunkt eller hjørne er identifisert til et 1-celletoppunkt eller et O-celletoppunkt. Dette er ekvivalent med å bestemme om toppunktet er på overflatens grense.
Klassifisering
Hvis to celler A og B er gitt, inndeler "klassifisering" de respektive punktsett i de to celler i en innsidedel og en utsidedel, og en del på grensen til den annen. Bygging av en geometrimodell er en prosess med klassifisering av geometriske objekter representert av et sett med forbundne celler. For bygging av jordmodeller starter man med overflater, slik som horisonter og forkastninger. Disse flatene blir klassifisert med et "volum av interesse". Overflatene inndeler effektivt volumet av interesse i "delvolumer". Denne prosessen blir kalt "irregulær rominndeling" (Irre-gular Space Partitioning, ISP), og resulterende modeller blir kalt ISP-modeller. På fig. 5 er f.eks. en forkastning 40 klassifisert med en jordmodell 42 ved den posisjon som indikeres av en prikket linje 44. Før klassifiseringen omfatter jord modellen et volum 46 og to horisonter 48 og 50. Klassifiseringen splitter celler som er inndelt i celler av lavere dimensjon. På fig. 6 er således forkastningen 40 delt i segmenter 52, 54 og 56 av skjæringene mellom horisonten 48 og forkastningen 44, og horisonten 50 og forkastningen 44. Kombinasjonen av horisonter 48 og 50 og forkastningen 40 splitter likeledes volumet 46 i to delvolumer 58 og 60.
Egenskapsbasert modellering
Selv om SHAPES® kan representere geometrier av vilkårlig kompleksitet, er det vanskelig for en anvendelse å holde rede på cellene og materialegenskap-tildelingene til cellene etter hvert som celler tilføyes, deles, smelter sammen og slettes som bivirkninger av geometriske operasjoner. GQI utvider SHAPES®-tek-nologien med konseptet "egenskaper", som kalles "egenskapsbasert modellering", beskrevet i US-patentsøknad, serienr. 08/772,082, med tittel MODELING GEOLOGICAL STRUCTURES AND PROPERTIES.
Egenskaper er hovedformålene med geometrimodellering. En egenskap er en gruppe av én eller flere celler. En egenskap kan også inneholde andre egenskaper. Egenskaper tjener to hovedformål. For det første representerer egenskaper objekter som er av interesse for anvendelsesområdet slik at anvendelsene tilpasses egenskaper istedenfor celler som utgjør egenskapene. For det andre er egenskaper vedvarende, dvs. at egenskaper inneholder forbindelsen mellom en applikasjonsdatabase og geometrimodell-databasen. I tillegg har egenskaper følg-ende begrepsmessige kjennetegn:
• Egenskaper bevarer deres punktsett. Når f.eks. forkastningen 40 på
fig. 5 blir definert som en egenskap, fortsetter forkastningen 40 å representere hele forkastningen selv om forkastningen blir delt i tre celler, som vist på fig. 6. • Egenskaper kan overlappe hverandre i rommet og kan være dis-kontinuerlige. • Egenskaper kan bære kjennetegn som arves av deres komponenter.
GQI forvalter egenskaper og materialegenskapstildelinger og evalueringer innenfor egenskaper. Applikasjoner bygger delflatemodeller ved å innsette overflateegenskaper, slik som horisonter og forkastninger, i volumet av interesse. De resulterende delvolumer blir organisert i egenskaper som er betydningsfulle for geovitenskapelige anvendelser. Marerialegenskaper kan være tildelt en hvilken som helst av egenskapene i modellen.
SIGMA
Som nevnt ovenfor er den skalérbare, interaktive geometrimodelleringsarkitektur (SIGMA) blitt utviklet for å ta for seg oppgaver ved bygging av store geometriske modeller med høy oppløsning. Den detaljerte beskrivelse av SIGMA kan finnes i US-patentsøknad, serienr. 09/163,075, med tittel MODELING AT MORE THAN ONE LEVEL OF RESULUTION. Følgende diskusjon skisserer kort SIGMA-overflaterepresentasjonen.
En hierarkisk overflaterepresentasjon Overflaterepresentasjonen er et fleroppløsningshierarki basert på en regulær inndeling. Hierarkiet blir implementert som et firertre og er fortrinnsvis bygget for et strukturert gitter. For å tilveiebringe topologisk fleksibilitet er overflaten en gitter/maske-hybrid. En gitterrepresentasjon blir brukt der hvor det er mulig. Hvor det er nødvendig med større fleksibilitet, f.eks. for å understøtte irregulære skjæringskurver, blir det brukt en triangelmaske.
Et firertre er en datatre-struktur med noder som har fire avkom, bortsett fra bladnodene som har to avkom. Hver node i firertreet har en unik dybde og posisjon i treet, og derved kan hver node tildeles en unik nøkkel.
Bygging av treet
For en gitt overflate blir simplekser tildelt en unik firertrebladnode. Hver firertrenode, bortsett fra bladnodene, blir tildelt simpleksene til sine etterkommere.
For et strukturert gitter kan en regulær inndeling anvendes på gitterets parameterrom. Hver gittercelle blir naturlig tildelt en unik firertrebladnode. En gittercelle inneholder når den deles opp i trekanter, et par simplekser hvor disse simpleksene blir tildelt firertrebladnoden til sin gittercelle. Fig. 7 viser et gitter og dets parameterrom med 16 gitterceller, f.eks. 62. Et firertre blir bygget ved hjelp av en regulær inndeling av gitteret. Rotnoden (som er den eneste node ved trenivå "0") representerer alle gittercellene og har en grense 64 som omslutter alle gittercellene, som vist på fig. 8 (grense 64 er vist med kraftige, sorte linjer på fig. 8). Hver av de fire nodene ved nivå 1, det neste oppløsningsnivå, representerer fire gitterceller (grensene for nodene ved nivå 1 er representert ved linjer 66, 68, 70 og 72 og tilsvarende deler av grensen 64). Hver bladnode har én gittercelle (hver av linjene på fig. 8 er en grense for minst én bladnode). En grafisk representasjon av et firertre er illustrert på fig. 9 hvor det er én rotnode 74, fire noder ved nivå 1, f.eks. 76, og seksten noder ved nivå 2 (også bladnoder), f.eks. 78.
Kritiske toppunkter
Hver firertrenode omfatter en samling av simplekser og har en veldefinert
grense. Grensen kommer fra simpleksene med full oppløsning. Det er mulig å for-enkle grensen uten å ødelegge dens topologi. Fig. 10 viser f.eks. at et toppunkt 80 kan sløyfes og den kant som det finerer 82 kan rettes uten å endre grafens grunnleggende struktur. (Mer nøyaktig er grafens topologi ikke blitt endret.)
Spesielt kan toppunkter av valens to fjernes uten å endre grafens topologi. Det følger at det er en samling av toppunkter som ikke kan fjernes uten å endre grafens topologi. Disse toppunktene er av interesse ettersom de koder overflatens topologi. Beregning av denne samlingen med toppunkter kan imidlertid være vanskelig. SIGMA definerer en samling av toppunkter, kalt de "kritiske toppunkter", som innbefatter de toppunkter som er beskrevet ovenfor og som er beregningsmessige billige å finne.
Et toppunkt er et kritisk toppunkt hvis det ved dybde i er
• identifisert med en 0-celle, eller
• identifisert med et 1-celletoppunkt og ligger ved grensen til to eller flere firertrenoder ved dybde i, eller • i det indre av overflaten og ved skjæringen mellom tre eller flere firertrenoder ved dybde i.
Hvis et toppunkt er kritisk ved dybde d, så er toppunktet etter definisjonen kritisk ved alle dybder. Kritiske toppunkter kan identifiseres effektivt ved å bruke firertrenøkler. Detaljene ved algoritmen er beskrevet i US-patentsøknad, serienr. 09/163,075 med tittel MODELING AT MORE THAN ONE LEVEL OF RESOLUTION. Fig. 11 viser et eksempel på kritiske toppunkter. Ved oppløsningsnivå 0 er bare toppunktene 84 (representert ved store sirkler) kritiske. Ved oppløsningsnivå 1 er toppunktene 86 (representert ved middels store sirkler) kritiske og toppunktene 84 er fremdeles kritiske. Ved oppløsningsnivå 2 er de gjenværende toppunkter (representert ved små sirkler) kritiske og toppunktene 84 og 86 er fremdeles kritiske.
Desimering
Det blir ofte bygget modeller som er meget større enn hva som kan gjengis ved bruk av nåværende maskinvare. Desimering er en prosess som undersampler modellen for å skape en redusert, men nøyaktig representasjon av hele modellen. En samling av noder, C, i treet T er en "nodefront" hvis hver bladnode i T har minst én forfader i C (en node er selv en forfader). En nodefront er en "komplett nodefront" hvis hver bladnode i T har nøyaktig én forfader i C.
De kritiske toppunkter fra nodene i en komplett nodefront beskriver en desimert skisse av overflaten. Ved å identifisere en felles samling med toppunkter på grensen til overflaten som deles med andre overflater i modellen, blir det sikret at oppsprekking av modellen ikke inntreffer. Hvis overflatene er parameterisert, kan en desimert skisse av overflaten bygges ved å påkalle en begrenset Delaunay-tessellator, som garanterer at kantene rundt grensen er tilstede ved trekantoppdelingen.
INTERAKTIV GEOMETRIMODELLERING
For å understøtte geometrimodellering og visualisering av en lang rekke geovitenskapelige data, benytter Common Model Builder GQI/SHAPES til geometrimodellering og en generell grafikkmotor, fortiden OPEN INVENTOR, til visualisering. Ved utforming av én anvendelse som innbefatter både et grafisk og et geometrisk system, er hovedoppgavene ved utformingen
• hvordan gjengi og visuelt vekselvirke med geometrimodellen; og
• hvordan få geometrimotoren og grafikkmotoren til å arbeide glatt sammen.
Et interaktivt geometrimodellerings-bibliotek (IGM-bibliotek), beskrevet i US-pat-entsøknad, serienr. 09/021,220, med tittel INTERACTIVELY CONSTRUCTING,
EDITING, RENDERING AND MANIPULATING GEOSCIENCE MODELS, som
herved inntas som referanse, integrerer GQI med OPEN INVENTOR for å frembringe en forenet grensesnittanordning for å konstruere, gjengi, redigere og manipulere tredimensjonale modeller. Integrasjonen må løse tre hovedoppgaver: Representasjonen av geometrisk form og grafiske objekter er for skjellige.
Representasjonen av geometriske og grafiske objektattributter er forskjellige.
Geometriberegninger er meget langsommere enn grafiske beregninger.
Både geometriske og grafiske motorer er selvstendige og styrer sine egne objekter og operasjoner. De benytter forskjellige interne representasjoner for ekvi-valente objekter for å beskrive deres geometri, topologiske forhold og fysiske egenskaper. Dette fører til inkonsistenser når det samme objekt blir operert på begge motorer; integrasjon må holde rede på og forene disse inkonsistensene.
Geometrisk og grafisk integrasjon
IGM implementerer den geometriske og grafiske integrasjon gjennom "ob-jektaggregasjon", som illustrert på fig. 12. En "aggregatobjekf-klasse 88 omslutter de felles aspekter ved geometriske og grafiske representasjoner av et objekt. Et "geometriobjekf-objektklassehierarki 90 innkapsler geometriske objekter og operasjoner på disse i det geometriske delsystem. Likeledes beskriver "grafikkobjekt"-klassehierarkiet 92 objekter som kan gjengis på skjermen. Endelig representerer aggregatobjekt-klassehierarkiet 88 integrerte objekter. De tre klassetrær er like, men blir fylt ut til forskjellige spesifikasjonsnivåer etter behov. En "Igm-handling" omslutter fremgangsmåter som er nødvendige for å gjennomgå en topologigraf og for å generere en riktig grafisk representasjon for gjengivelse. Dette tar hensyn til mistilpasningen av formrepresentasjon mellom geometriske og grafiske motorer.
Applikasjoner øyeblikksgjengir og styrer aggregatobjekter. Et aggregatobjekt tilveiebringer applikasjoner med en forenet grenseflate til de geometriske og grafiske delsystemer, og høynivå-metoder for interaktiv geometrimodell-bygging, redigering, og gjengivelse. Det delegerer grafiske og geometriske operasjoner til sine riktige delobjekter.
IGM definerer attributtkartleggingsobjekter for å løse mistilpasning mellom attributtrepresentasjoner. Disse objektene kartlegger attributter for geometriske objekter til grafiske attributter i Open Inventor, slik som farge, transparens eller tekstur, slik at egenskapen kan visualiseres. Igm-handling-klassen setter inn disse grafiske attributtene når den genererer en scenegraf for gjengivelse.
Konstistensstyring
Integrasjonslaget understøtter interaktivt arbeide med komplekse geometriske modeller selv om geometriske operasjoner kan være meget langsommere enn grafiske operasjoner. IGM har til hensikt å tillate inkonsistens mellom grafikk og geometri for varigheten av en utvidet redigeringsoperasjon for å forbedre ytelsen. Aggregatobjekter overvåker de endringer som brukere gjør på den grafiske representasjon av objekter. Brukere "overgir" endringer til den geometriske representasjon når det er ønskelig å gjøre den geometriske modell konsistent med den grafiske betraktning. Ved simulering og modelloptimalisering kommer endringer fra den geometriske siden. Grafikk blir oppdatert for å avspeile endringene i modellen.
For å styre konsistens mellom grafikk og geometri implementerer aggregat-objektet en endelig tilstandsmaskin. En tilstand har to variable, geometriobjekt og grafikkobjekt, som enten kan være "gyldig" eller "ugyldig", avhengig av om de representerer resultatet av siste brukerinteraksjon eller ikke. Aggregatobjekt styrer overgangen fra én tilstand til en annen.
ADAPTIV VISUALISERING
Den følgende diskusjon beskriver grunnleggende algoritmer for adaptiv visualisering. Diskusjonen fokuserer på overflaten for å bringe ut konseptene og de grunnleggende algoritmer. Visualisering av geometrimodeller, som vil bli beskrevet senere, er basert på visualisering av overflater med ytterligere begrensninger.
Diskusjonen begynner med det generelle adaptive visualiseringskonsept. Algoritmene for å bestemme toppunkter som skal gjengis, blir så presentert. Dette følges av fremgangsmåten for å trekantoppdele toppunktene. Diskusjonen beskriver så hvordan operasjonene kan organiseres i et flerbruksmiljø for å oppnå bedre interaktivitet. Til slutt blir det beskrevet en prediksjonsteknikk for å forbedre sys-temkvaliteten.
Metodologi
I mange anvendelser kan det være millioner av triangler på en stor overflate, mer enn antallet piksler eller bildeelementer på skjermen. Selv grafisk maskinvare av høy kvalitet kan ikke gjengi alle trianglene på en slik stor overflate interaktivt. Det er viktig å innse at for en interaktiv tredimensjonal grafikkanvendelse er det ikke nødvendig å gjengi alle trianglene i scenen. For en overflate med et stort antall triangler er det f.eks. bortkastet å gjengi alle trianglene når overflaten er langt fra kameraet, siden trianglene er mindre enn pikseloppløsningen på skjermen. Når overflaten er meget nær kameraet, kan et stort antall triangler falle ut av det synlige området. Disse trianglene behøver heller ikke gjengis.
Hvis den begrensede grafikkapasitet og behovet for interaktiv visualisering er gitt, er det viktig å være i stand til å endre den triangulære representasjon av overflaten når den relative posisjon mellom kameraet og overflaten endres. Når f.eks. overflaten er lenger vekk fra kameraet, kan et mindre antall triangler være godt nok til å representere overflaten; når overflaten er nær kameraet, blir flere triangler brukt til å frembringe finere oppløsning av overflaten. Noen eksisterende løsninger forhåndsberegner og lagrer forskjellige detaljnivåer (levels of details, LOD) for en overflate. Basert på avstanden fra overflaten til kameraet blir et valgt detaljnivå gjengitt. Denne løsningen forbruker lagerplass til å lagre LOD. Når overflaten videre blir redigert, må LOD beregnes på nytt.
Når overflaten har en stor utstrekning, er det også viktig å endre størrelsen av trianglene i den samme representasjon. Det overflateområde som f.eks. er nærmest kameraet, bør ha finere triangler enn de områder som er lenger vekk fra kameraet.
Adaptiv visualisering refererer til mekanismer som modifiserer visualiseringen av objekter i henhold til gitte kriterier. Systemet benytter algoritmer som genererer og gjengir triangler med variable oppløsninger over overflaten, tilpasset den relative posisjon mellom kameraet og overflaten. Denne løsningen innbefatter tre hovedtrinn: toppunkt- og kant-utvelgelse 94, tessellering 96 og gjengivelse 98, som vist på fig. 13.
Denne parallellutførelsen anvendes på geometrimodeller så vel som individuelle overflater. For å visualisere individuelle overflater er det i første trinn bare nødvendig med valg av toppunkt. Valg av kant er nødvendig for visualisering av en geometrimodell. For hver gitt kameraposisjon begynner parallellutførelsen med å gjennomgå firertre-representasjonen av overflaten for å bestemme de toppunkter som skal gjengis. Tesselleringsmodulen trekantdeler disse toppunktene for å generere en triangelmaske. Gjengivelsesmodulen gjengir triangelmasken. Prosessen gjentas når kameraposisjonen endres. Fortrinnsvis er overflateparameteriser-ingen ikke nødvendig for geometriberegning, men blir brukt ved adaptiv visualisering for å generere triangelmaskenett.
Toppunkt-utvelgelse
Hvis en overflate og en kameraposisjon er gitt, velger toppunkt-utvelgelsen et delsett med toppunkter på overflaten for adaptiv visualisering. Disse toppunktene er forbundet i triangler for å representere overflaten, og trianglene blir gjengitt. Følgende diskusjon beskriver algoritmen for utvelgelse av et slikt delsett med toppunkter ved kjøretiden.
Overflaten er representert av et firertre som beskrevet ovenfor. Med firertreet er toppunkt-utvelgelse å bestemme et sett med firertrenoder for visualisering. Dette settet med noder må være en nodefront i treet. De kritiske toppunkter for nodefronten utgjør delsettet med toppunkter som skal gjengis.
"Grensekulen" for en firertrenode er den minste kule som omslutter alle de simplekser som er tildelt noden.
Bestemmelsen av nodefronten blir gjort ved en gjennomgang av firertreet fra roten. To operasjoner inngår i gjennomgangen, avkortet betraktningskjegle-frasortering og grensekule-projeksjon, som blir beskrevet nedenfor.
Avkortet betraktningskjegle-frasortering
Avkortet betraktningskjegle-frasortering bestemmer de partier av overflaten som er utenfor den avkortede betraktningskjegle slik at de ikke behøver å bli gjen-i gitt. Hver firetrenode har et grenseobjekt definert slik at firertrenoden rommessig avgrenses av den. Objektet kan være en grensekule, en akseinnrettet avgrensningsboks, en orientert avgrensningsboks eller et grensepolyeder. Ved å starte fra rotnoden i firertreet gjennomløper algoritmen treet. Hvis grenseobjektet for en node skjærer den avkortede betraktningskjegle, så blir grensekule-projeksjonen påført (diskutert nedenfor) noden for å bestemme om gjennomgangen skal fortsette. Ellers behøver noden ikke å bli visualisert og gjennomgang fortsetter til neste node.
Grensekule-projeksjon
Hvis et grenseobjekt for en firertrenode skjærer den avkortede betraktningskjegle, blir noden projisert på skjermen. Hvis det projiserte areal er mindre enn en forutbestemt minste oppløsning, er firertrenoden i nodefronten. Eller fortsetter gjennomgangen til nodens avkom. Den minste oppløsning er spesifisert som en radius eller et areal i skjermrommet.
Projisering av et tredimensjonalt objekt på en todimensjonal skjerm er en kostbar operasjon. Vanligvis går koordinatene til et objekt gjennom en sekvens med transformasjoner fra modell til skjermrom. Transformasjonen kan kombineres i en enkelt homogen transformasjonsmatrise.
Systemet tilveiebringer en effektiv måte til projisering av en firertrenode og for å bestemme om tregjennomgangen skal fortsette ned fra denne noden. Grensekulen for firertrenoden blir projisert på skjermen og brukt som en tilnærmelse til den aktuelle firertrenode-projeksjon. På grunn av sfærisk symmetri gjelder de like trianglers prinsipp for perspektiv-projeksjonsgeometrien.
Systemet tilveiebringer en effektiv måte til å projisere en firertrenode på skjermen og et kriterium for å bestemme om toppunktutvelgelsen skal fortsette ned fra denne noden. Hver firertrenode har en grensekule 100 definert av et sentrum 102 og en radius 104, som vist på fig. 14. Anta at det benyttes et perspektiv-kamera. Når sentrum i kulen 100 er på betraktningsretningen til kameraet, er projeksjonen av kulen på et projeksjonsplan 106 en sirkel 108.
På fig. 14 er trianglene OAB og OEF like triangler. Bestem at d = OB er avstanden fra betraktningspunkt til projeksjonsplan; D = OF er avstanden fra betraktningspunktet til sentrum i kulen; R(circle) = AB er radius av projeksjonen av kulen, og R(sphere) = EF er kulens radius. Følgende relasjon finnes:
Legg merke til at projeksjonen gjøres i kamera-koordinatsystemet, mens grensekulen for en firertrenode er i verdens koordinatsystem. Oppgaven blir hvordan benytte ligning (1) uten å foreta en koordinattransformasjon?
Når man innser at ligning (1) gjelder avstander, blir det antatt at transformasjonen fra verdens koordinatsystem til kameraets koordinatsystem er en stiv trans-formasjon som bevarer vinkler og lengder. (En vilkårlig rotasjonssekvens og trans-lasjonsmatriser skaper en matrise av denne formen). Med denne antakelsen er det mulig å arbeide i det universelle koordinatsystem og benytte og beregne avstanden i kameraets koordinatsystem.
Kameraposisjonen i verdens eller det universelle koordinatsystem, projeksjonsplanet og grensekulen for en firertrenode er kjent. Avstanden d og R(sphere) er dermed kjent. D kan beregnes i det universelle koordinatsystem. Projeksjonsradien R(circle) kan beregnes ved å bruke ligning (1). Neste ting er å finne forholdet mellom R(circle) og dens bilde i skjermens koordinatsystem.
Grafikksystemet skalérer det projiserte bilde av objektene inn i betraktningsåpningen på skjermen. Siden systemet bare gjelder avstander, er det tilstrekkelig for å finne en slik skala, å finne bildet av R(circle). Fig. 15 illustrerer geometrien til perspektivbetraktningen. De fire skjæringspunktene 110 for de fire begrensende projeksjonsstråler 112 med projeksjonsplanet 106 danner de fire hjørner i det synlige rektangulære området 114 på projeksjonsplanet. Hvis den avkortede betraktning 116 (den heltrukne trapesoide mellom frontplanet 118 og bakplanet 120), er det mulig å beregne størrelsen av det synlige området 114. Anta at aspektforholdet for betraktningsåpningen 122 (se fig. 16) er den samme som for det betrakt-ede volum 116, da er det det samme som aspektforholdet for det synlige området 114 på projeksjonsplanet 106. Dette er tilfelle når betraktningsåpning-transformasjonen ikke medfører deformasjon.
Fig. 16 viser betraktningsåpning-transformasjonen. Projeksjonsområdet 124 er kartlagt til et område på skjermen, betraktningsåpningen 122. La AB og A'B' være lengdene av sidene til projeksjonsområdet 124 og betraktningsåpningen 122. Forholdet AB/A'B" = L definerer skalaen fra betraktningsåpningen 122 til projeksjonsplanet 106. La den minste projeksjonsradius på skjermen være Rmin(screen). Da er den minste projeksjonsradius på projeksjonsplanet lik
Fra ligning (4) og ligning (5), får vi følgende ligning for den kule hvis projeksjonsradius på skjermen er den minste radius Rmin(screen):
For hver kameraposisjon er (L x Rmjn(sphere))/d en konstant. Når radien av en grensekule ved avstand D er større enn R<D>min(sphere), er projeksjonsradien stør-re enn Rmjn(screen). Dette gir følgende kriterium:
Gitt en firertrenode, hvis betingelsen i ligning (4) er sann, skal gjennomgangen fortsette til denne nodens avkom. Ellers er denne noden en bladnode i det aktive tre.
Så langt er kulen antatt å være sentrert i betraktningsretningen. Det følg-ende undersøker situasjonen når kulen er forskjøvet fra betraktningsretningen. På grunn av kulens symmetri kan vi se relasjonen i to dimensjoner, som vist på
fig. 17, hvor r = R(circle) er radien av projeksjonen av kulen. I henhold til like trianglers prinsipp har vi følgende:
Siden d = b x cos6, er ligning (1) et spesialtilfelle av ligning (5) når sentrum i kulen er i betraktningsretningen (0 = 0) og dermed d ~ b. Generelt er d < b, derfor gjelder følgende betingelse:
Kriteriet i ligning (4) gjelder derfor også firertrenoder som er forskjøvet fra betraktningsretningen.
Hvis følgende betingelse er sann, skal følgelig gjennomgangen kort opp-summert fortsette til avkommet til noden N:
K blir bare beregnet én gang når en bruker endrer betraktningsåpningens størrelse, minimumsoppløsningen eller vinkelen til betraktningsfeltet, eller når avstanden d endres. Slike endringer er utenfor tregjennomgangen. Når betraktningsåpningens størrelse, avtar K og flere grensekuler tilfredsstiller betingelsen ovenfor. Flere triangler vil derfor bli gjengitt.
Under valg av toppunkt blir avstanden D beregnet ved hver node. Hvis betingelsen ovenfor er sann, fortsetter gjennomgangen til avkommene til nodene. Ellers blir noden tilføyet nodefronten, og avkommene til noden behøver ikke besø-kes. Som vist ovenfor er den tillatte projeksjonsstørrelse av en firertrenode som er forskjøvet fra betraktningsretningen litt større enn én i betraktningsretningen. Eff-ekten på skjermen er at trianglene er finere omkring sentrum av betraktningsåpningen og eventuelt grovere bort fra senteret. Dette er akseptabelt siden en bruker har en tendens til å se på betraktningsåpningens sentrum.
Grensekuleprojeksjonen muliggjør effektiv beslutningstagning under utvelgelse av firertreet. Bare én avstand, én ytterligere multiplikasjon og én sammenlign-ing er nødvendig for hver beslutning. Ulempen er at når mesteparten av overflatenormalene er perpendikulære til betraktningsretningen, blir det f.eks. ved å se langs et plan, generert flere triangler enn nødvendig. For å overvinne denne ulempen blir overflatens normal brukt til å hjelpe til med beslutningen om triangelopp-løsningen.
Fig. 18 viser synligheten av et orientert plan i forhold til synsretningen. La 6 være vinkelen mellom synsretningen og planets normal, som vist på fig. 18, med -180 < 0 < 180. Synligheten av frontflaten til planet er proporsjonal med cosø. Når cosø > 0, er planets frontflate synlig. Ellers er planet usynlig. Når 101 avtar, blir mer av planet synlig. En funksjon av cosø, f(0), som er invers proporsjonal med cosø, kan brukes til å skalére høyre side av ligning 7 for -90 < 0 < 90. f(0) = 1 for 0 = 0. f(0) > 1 for 101 > 0. Dette betyr at når en overflate er mindre synlig på grunn av overflateorienteringen, vil det bli generert et mindre antall med større triangler. For å minimalisere beregningen ved kjøretiden, kan f(0) implementeres som en liten oppslagstabell.
For å bruke ovennevnte trekk kan hver firertrenode beholde en gjennom-snittlig normal og et standardavvik for normalene til de simplekser som tilhører noden. Dette kan beregnes rekursivt fra bunnen og oppover fra bladnodene. Skaléringsfunksjonen f(0,AØ) er så en funksjon av både den gjennomsnittlige normal 0 og standardavviket AØ. Jo større avviket er, jo mindre er virkningen av normalen for projeksjonen. Med skaléringsfunksjonen blir ligning (7):
La g = f2 og C = K<2>. Ligning (8) blir ekvivalent med følgende ligning hvor kvadratrot-beregningen for avstanden D er unngått:
Algoritme for utvelgelse av toppunkt
Toppunkt-utvelgelse velger et delsett med toppunkter på en overflate som svarer til den gitte kameraposisjon. Utvalgsalgoritmen finner en nodefront i firertreet ved å gjennomgå eller traversere treet, og benytter de kritiske toppunktene i nodefronten som utvalgte delsett. De to grunnleggende kriterier som benyttes ved gjennomgangen av treet er avkortet betraktnings-frasortering og grensekule-projeksjon. Én utførelsesform av algoritmen for utvelgelse av toppunkter er illustrert på fig. 19. Algoritmen er hovedsakelig en førstedybde-gjennomgang.
Algoritmen begynner med et firertre 126. Rotnoden i firertreet blir valgt først [blokk 128]. Algoritmen går så inn i en sløyfe. Først utfører algoritmen frasortering av avkortet betraktningskjegle ved å bestemme om den valgte node er utenfor den avkortede betraktningskjegle [130]. Hvis så er tilfelle, bestemmer algoritmen om den valgte node har en ikke-gjennomgått søsken [132]. Hvis den ikke har det, bestemmer algoritmen om noden er rotnoden [blokk 134]. Hvis den er det, så avslut-tes algoritmen [blokk 136].
Ved å vende tilbake til blokk 134 hvis den utvalgte node ikke er rotnoden, blir foreldrenoden til den valgte node valgt [blokk 138] og algoritmen returnerer til blokk 132.
Hvis noden har et søsken som ikke er gjennomgått, ved retur til blokk 132, så blir den ikke gjennomgåtte søskennode valgt [blokk 140] og algoritmen returnerer til blokk 130.
Ved retur til blokk 130, hvis noden ikke er utenfor den avkortede betraktningskjegle, bestemmer algoritmen om noden er en bladnode [blokk 142]. Hvis så er tilfelle, blir noden tilføyd nodefronten [blokk 144] og algoritmen fortsetter med blokk 132.
Hvis noden ved retur til blokk 142, er en bladnode, utfører algoritmen en grensekule-projeksjon [blokk 146] ved å bestemme om betingelsen i ligning (9) er tilfredsstilt. Hvis dette ikke er tilfelle, så blir noden tilføyd nodefronten [blokk 144]. Hvis betingelsen i ligning (9) er tilfredsstilt, så blir det 0. avkom fra den valgte node utvalgt [blokk 148] og algoritmen returnerer til blokk 130.
Man vil innse at en mer sofistikert gjennomgangsstrategi kan benyttes for å oppnå bedre ytelse.
Tessellering
De utvalgte toppunkter blir forbundet med hverandre i et triangelmaskenett for visualisering. Denne prosessen blir kalt "tessellering" eller "trekantoppdeling". Det resulterende trekantmaskenett er en tilnærmelse til den opprinnelige overflate. Det området som er nærmest kameraet hårfinere oppløsning, og oppløsningen blir grovere etter hvert som området kommer lenger bort fra kameraet. Den foretrukne trekantoppdelingsteknikk er "Delaunay-trekantoppdeling". Én fordel ved denne løsningen er mindre lagerbruk siden trekantmaskenettet blir konstruert under Delaunay-trekantoppdelingen og ikke lagret. En Delaunay-trekantoppdeling av et punktsett er en trekantoppdeling av punktsettet med den egenskap at ikke noe punkt i punktsettet faller innenfor omkretssirkelen (en sirkel som passerer gjennom alle tre toppunkter) for noe triangel i trekantoppdelingen.
Tesselleringen blir utført i parameterrommet til overflaten. Foren overflate uten kurver, bortsett fra grensen, og uten hull, kan Delaunay-tesselleringen brukes direkte. Ellers kan det benyttes en "begrenset" Delaunay-tessellering.
I en interaktiv, tredimensjonal anvendelse kan kameraet bevege seg kontinuerlig. Når kameraet beveger seg fra én posisjon til en annen, er derfor mesteparten av punktene på overflaten som var tilstede i den foregående kameraposisjon, også synlige i den aktuelle kameraposisjon. Noen punkter er fjernet og noen punkter er tilføyd. I dette tilfelle kan den inkrementale og dekrementale Delaunay-tessellering benyttes. Selv om inkremental Delaunay-tessellering er godt under-søkt og i utstrakt bruk, finnes det få referanser, om noen, om dekremental Delaunay-tessellering. f
Ved en gitt Delaunay-trekantoppdeling T for et punktsett P og et delsett Q av P, er det ønskelig å konstruere en Delaunay-trekantoppdeling, U, av Q. Det er to muligheter. Anrop Delaunay-tessellatoren for Q eller utnytt den eksisterende Delaunay-triangulering, T, av P. Dekremental Delaunay-tessellering fjerner punktene R=P\Q (\er den fastsatte subtraksjonsoperator) fra den eksisterende Delaunay-trekantoppdeling, T, og oppretthold en Delaunay-trekantoppdeling på de gjenværende punkter, Q. Dekremental Delaunay-tessellering kan implementeres på følgende måte. Fjern alle trianglene i T som har et hjørnepunkt i R, og fjern R. Tesseller de resulterende hull ved å finne deres grensekanter og anvend begrenset Delaunay-tessellering. Legg merke til at retesselieringen er en lokal operasjon. For å fjerne et toppunkt 150, som illustrert på fig. 20, finnes f.eks. alle de triangler 152 i trekantoppdelingen som har toppunkt 150 som ett av sine hjørner. Disse trianglene blir eliminert fra trekantoppdelingen, noe som etterlater et hull 154, og det resulterende hull blir retessellert i triangler 156 for å tilfredsstille Delaunay-betingelsen. Alternativt kan man anvende ubegrenset Delaunay-tessellering til hvert hull og fjerne triangler utenfor hullet. Fjerning av et punkt på grensen til trekantoppdelingen krever forsiktighet ettersom ingen hull blir skapt. Den ubegrensede Delaunay-tessellator kan anvendes lokalt, og den korrekte samling av triangler kan velges.
Det er en lignende definisjon for begrenset dekremental Delaunay-tessellering. Når grensekanter imidlertid blir fjernet, blir de vanligvis erstattet med en grovere samling av grensekanter. Hvis f.eks. et punkt ligger på to grensekanter, kan for å fjerne dette punktet, de to grensekantene erstattes av én grensekant som forbinder de andre to punktene på de opprinnelige grensekanter. En dekremental Delaunay-tessellering kan bygges uten de nye begrensninger, og så kan de nye begrensningene innsettes. Hvis f.eks. et toppunkt 158, som vist på fig. 21, ligger på to grensekanter 160 og 162, kan, for å fjerne toppunktet 158, de to grensekantene 160 og 162 erstattes av én grensekant som forbinder de andre to toppunktene på de opprinnelige grensekanter. De triangler som har toppunkt 158 som toppunkt, kan fjernes 164, en dekremental Delaunay-tessellering kan bygges uten de nye begrensninger 166 og så kan de nye begrensninger innsettes 168.
La V1 være settet med toppunkter som visualiseres for kameraposisjon C1, og la T1 være den resulterende triangulering av det tilsvarende punktsett P1 for V1 i parameterrommet. La V2 være settet med toppunkter som skal visualiseres for kameraposisjon C2, og la P2 være det tilsvarende punktsett. Det er ønskelig å finne trekantoppdelingen T2 for P2. La D=P1\P2, E=P2 \P1. La ti(X) og td(X) være den tid som er nødvendig for inkremental og dekremental Delaunay-trekantoppdeling for punktsettet X. Hvis td(D) + ti(E) < ti(P2), så blir D fjernet fra T1 via dekremental Delaunay-tessellering, noe som resulterer i T1" og E blir addert til TV via inkremental Delaunay-tessellering, noe som resulterer i T2. Ellers blir P2 tessellert direkte for å generere T2.
Flerbruk
Som beskrevet tidligere og som illustrert på fig. 13, er det tre hovedtrinn i den adaptive visualiseringsutførelse. Disse tre trinnene kan operere sekvensielt,
det ene etter det annet. Bildefrekvensen for gjengivelsen er begrenset av den totale tid som er nødvendig for de tre trinn. For å øke interaktivitet blir en flerbrukstek-nikk anvendt med én eller flere gjenger som er ansvarlig for hvert trinn. For enkel-hets skyld antas i det følgende at hvert trinn har én gjenge. I dette tilfelle blir gjen-givelseshyppigheten begrenset av det lengste av de tre trinnene.
Innledningsvis gjennomgår toppunktutvalg-gjengen firertreet for å finne de toppunkter som skal gjengis. Toppunktene blir overført til tesselleringsgjengen. Tesselleringsgjengen genererer triangler som blir overført til gjengivelsesgjengen. Tesselleringstrinnet er den beregningsmessige flaskehalsen i parallellutførelsen. Gjengivelsesgjengen kan holde på å gjengi det samme sett med triangler inntil det neste sett med triangler er klart.
La V-i være settet med toppunkter som tesselleringsgjengen behandler, og la U-i e Vi være et delsett som er blitt behandlet. Gjengen for utvelgelse av topp-punkt velger et sett med toppunkter V2. Hvis tesselleringsgjengen er ferdig, blir V2 ført til tessellatoren. Ellers blir V2 sammenlignet med V-i, og tidsstyringen for behandling av disse toppunkter blir også beregnet. Delaunay-tessellering bruker en tid NIogN til å behandle et toppunktsett V av N toppunkter. La t(V) være tiden for tessellering av et toppunktsett V. Hvis t(V2) < t(V-i) - t(Ui), dvs. at tiden for å behandle V2 er mindre enn tiden for å behandle resten av Vi, så blir tesselleringspro-sessen avbrutt. V2 blir passert inn i tessellatoren. Ellers fortsetter tessellatoren å behandle VY
Dette er en direkte løsning for å holde alle gjenger opptatt. Det er imidlertid noe bortkastet beregning. For å bøte på problemet blir det benyttet en prediktiv beregningsteknikk.
Prediktiv beregning
Siden hvert trinn i parallellbehandlingen, illustrert på fig. 13, tar en viss tid til behandling av dataene, er det en forsinkelse i hva som virkelig blir gjengitt på skjermen med den gitte kameraposisjon. Dette er vist på fig. 22. Ved tiden t3 blir bildet på skjermen generert for kameraposisjonen ved t0. Forsinkelsen er At = t3-to. Brukeren vil ikke føle denne forsinkelsen hvis den er omtrent den samme for hvert delbilde. Men oppløsningen av det gjengitte bilde kan i virkeligheten være under eller overskride spesifikasjonen. Derimot er en del beregninger bortkastet. Dette har to grunner. For det første blir muligens valgte toppunkter fra toppunktutvelgelsen ikke benyttet siden de andre gjengene eller oppgavene kanskje ikke er ferdig med å behandle data fra den foregående kameraposisjon. For det annet kan beregningen i tesselleringsgjengen bli ugyldig når kameraposisjonen endres hurtigere. Systemet tar hensyn til disse problemene for å oppnå bedre ytelse og bedre kvalitet.
Se igjen på fig. 22, hvis vi ved tiden to kan forutsi kameraposisjonen ved tiden t3, så vil vi ved tiden t3 se bildet for t3 hvis prediksjonen er korrekt. Som beskrevet tidligere bestemmer toppunktutvelgelsen det endelige bilde, som bare er adaptivt for kameraposisjonen. Beregningene innbefatter avstandsberegninger og skaléringer. Den aktuelle matrise for den grafiske utførelse er ikke involvert. Vi kan derfor modellere kamerabanen og foreta forutsigelser om de fremtidige kamera-posisjoner. Modelleringsprosessen er uavhengig av den prosessbearbeidelse som er vist på fig. 22, og lite beregning inngår sammenlignet med parallellutførelsen. Vi kan derfor sample kameraposisjonen ved en meget høyere frekvens for å oppdatere kamerabanemodellen for å få bedre forutsigelser.
Noen velkjente filtreringsteknikker, f.eks. Kalmann-filtrering, kan benyttes for å modellere kameraposisjonens dynamikk.
Skalérbarhet
Fra ligning (7), justering av Rmin, den minste pikseloppløsning, justeres tri-angeloppløsningen og tesselleringsytelsen. for et område med data- og visualiser-ings-kraft fra bærbar datamaskin til superdatamaskin, kan man kompromisse om den visuelle kvalitet ved å justere Rmjn for å oppnå nesten konstant bildefrekvens som vist på fig. 23.
ADAPTIV VISUALISERING AV GEOMETRIMODELLER
Geovitenskapelige modeller er geometrimodeller laget av geologiske trekk, slik som forkastninger og horisonter. Geometrimodellen blir representert av en grenserepresentasjon som diskutert ovenfor. Visualiseringen av geometrimodellen er basert på den teknologi som er beskrives ovenfor. Systemet benytter ytterligere teknikker for å håndtere kompleksiteten til geometrimodellen og til å forbedre ytelsen.
Modellkoherens
Geometrimodellen blir konstruert via irregulær rominndeling (ISP). En enkel måte å gjengi en slik geometrimodell på, er å gjengi dens overflater. Dette er til-fredsstillende hvis modellen er koherent, hvis modellen gjengis ved sin fulle opp-løsning og hvis det er stor nok lagerplass og maskineffekt.
Anta først at modellen er koherent. Når modellen er stor, er det nødvendig med adaptiv visualisering for å oppnå interaktiv ytelse. Ett av kravene til visualisering av en geometrimodell, er å bevare modellens makrotopologi. Husk at med adaptiv visualisering blir en overflate desimert dynamisk med forskjellige oppløs-ninger over overflaten. Hvis hver overflate i modellen blir desimert uavhengig, kan det være sprekker mellom tilstøtende overflater siden de kan være desimert ved forskjellige oppløsninger. Dette kan endre modellens makrotopologi. For å forhin-dre dette problemet, benytter vi modelldesimeringsalgoritmen som anvender det samme sett med 1-celletoppunkter for overflaten som skjæres ved 1-cellen, beskrevet i US-patentsøknad serienr. 09/163,075, med tittel MODELING AT MORE THAN ONE LEVEL OF RESOLUTION. 1-celletoppunktene begrenser desimeringen av overflatene.
Det er en stor fordel å kunne arbeide på modellen som ikke er koherent, siden koherensgjøring er den dyreste operasjonen under modellkonstruksjon. En ikke-koherent modell utgjør imidlertid en større utfordring. I en ikke-koherent modell kan tilstøtende celler som er distinkte topologiske entiteter ikke atskilles geometrisk. Se f.eks. 24a, hvor et volum 170 er blitt tessellert i to triangler 172 og 174. Klassifisering av en overflate 176 inn i volumet 170 frembringer to celler 178 og 180, som vist på fig. 24b. Men vi kan ikke atskille cellene 178 og 180 fordi de ikke har sin egen geometriske representasjon. Trianglene 172 og 174 rir begge på de to cellene 178 og 180. Dette problemet blir løst ved å gjøre modellen koherent, . ved å retessellere de to cellene 178 og 180 for å respektere modellens makrotopologi, som vist på fig. 24c.
Det kan ses at for en ikke-koherent modell er det ikke én til én overens-stemmelse mellom celler og deres kart, som kartlegger fra parameterrom (1D eller 2D) til tredimensjonalt rom. For en stor modell med firertrerepresentasjoner betyr dette at 2-celler blir delt fra den samme overflate som deler det samme firertre. En firertrenode, og dermed dens foreldre, kan ri på to eller flere 2-celler. Firertre-nodene 182,184,186 og 188 rir f.eks. på 2-cellene 190 og 192 på fig. 25. Dette kan være fint hvis det ikke er nødvendig å skjelne 2-cellene for visualisering. Men anvendelser krever vanligvis at 2-cellene skal skjelnes fra hverandre for inter-aksjon.
Systemet gjengir effektivt ikke-koherente og koherente geometrimodeller ved bruk av algoritmer for å generere en desimert trekantoppdelt modell som bevarer skjæringskurvene i den opprinnelige modell, for å generere og gjengi den topologisk forenklede modellen og for å desimere og frasortere 1-celler.
Metodologi
Den adaptive visualiseringsbearbeidelse for overflater, illustrert på fig. 13, gjelder også geometrimodeller. En geometrimodell inneholder mange overflater og mange 1-celler som deles av mer enn én overflate. For en ikke-koherent modell kan mange overflateceller dele det samme firertre. Den adaptive visualisering av modellen må sikre at modellens topologi blir respektert. Spesielt bør skjæringskurvene og overflatene som deler kurvene, gjengis koherent. Det bør ikke være noen sprekker eller åpninger mellom slike overflater. Den følgende algoritme tar hensyn til disse oppgavene og kan anvendes på koherente modeller, ikke-koherente modeller og individuelle overflater.
Parallellutførelsen velger toppunkter og kanter fra hvert firertre og fra hver 1-celle i modellen, desimerer modellen ved å bruke den algoritme som er beskrevet i US-patentsøknad, serienr. 09/163,075, med tittel MODELING AT MORE THAN ONE LEVEL OF RESOLUTION, ved å bruke kanter som begrensning for desimeringen og så gjengi den desimerte modellen. Hvis modellen ikke er koherent, blir 1-cellene gjort koherente. Dette er ikke kostbart og må gjøres bare én gang.
1. Toppunkt- og kant-utvelgelse:
- For hver 2-celle i modellen, finn dens firertre. Hvis firertreet ikke er blitt gjennomgått, gjennomgå firertreet for å finne toppunkter som skal gjengis ved å benytte den ovenfor beskrevne algoritme. Hvis firertreet er blitt gjennomgått, gå til neste 2-celle. Legg merke til at mer enn én 2-celle kan dele det samme firertre for en ikke-koherent modell. Firertreet bør bare gjennomgås én gang.
- Fjern toppunkter som også tilhører 1-celler eller 0-celler.
- Finn alle de O-celletoppunkter som ligger på en 2-celle, og tilføy dem til den utvalgte toppunktliste for 2-cellen. - Ekstraher alle 1-celler fra modellen. Velg en samling av toppunkter og dermed kanter fra disse 1-cellene. (1-celledesimering vil bli beskrevet nedenfor.)
2. Tessellering. Samlingen av toppunkter og kanter fra en 1 -celle blir brukt som begrensninger i tesselleringen ved alle de 2-celler som deler denne 1-cellen. Tesseller for hver 2-celle, valgte toppunkter i parameterrommet til denne 2-cellen ved å bruke dens samlinger av 1-celletoppunkter som begrensninger. For en ikke-koherent modell er noen av de toppunkter som deltar i tesselleringen utenfor 2-cellen. Et eksempel er vist på fig. 26a. Toppunktene, f.eks. 194, blir valgt fra
det firertre som representerer den opprinnelige overflate. Overflaten er klassifisert i to celler 196 og 198. Toppunktene på cellen 198 er derfor utenfor cellen 196, og vice versa. Toppunktene utenfor en celle blir kastet ut under tessellering av vedkommende celle. Bare topp-punkter inne i 1-cellebegrensningene blir igjen. Med denne løsningen blir én gjennomgang for toppunktutvelgelse foretatt for hvert firertre, og tesselleringen kjøres så mange ganger som antallet 2-celler som
deler dette firertreet.
3. Bygg for hver 2-celle et triangelmaskenett i det tredimensjonale rom ved å benytte tredimensjonale koordinater for toppunktene til triang-elmaskenettet i parameterrommet, som vist på fig. 26b og 26c. 4. Visualisering. Visualiseringsmodulen gjengir triangelmaskenettene som genereres av tessellatoren for hver 2-celle. Siden den samme samling med 1-celletoppunkter blir brukt som begrensninger for de 2-celler som deler 1-cellen, er det ingen sprekker i den desimerte modellen.
Når kameraposisjonen endres, gjennomgås parallellutførelsen for den nye kameraposisjon.
Visualisering av ikke-koherente modeller
En alternativ algoritme for modelldesimering benytter beskaffenheten til den ikke-koherente modell. Toppunkter og kanter blir valgt ut. Istedenfor å tessellere hver 2-celle, anvendes tessellering på hvert todimensjonalt kart som skal visualiseres i modellen. På fig. 27a er det f.eks. to 2-celler 200 og 202 på det todimensjonale kart, dvs. at de to cellene deler det samme firertre. Istedenfor å tessellere hver 2-celle som beskrevet ovenfor, kan de toppunkter som er valgt fra det todimensjonale kart tesselleres én gang, som vist på fig. 27b. For hvert todimensjonalt kart blir de valgte 1-celletoppunkter som også er på dette todimensjonale kartet, begrensninger for tesselleringen. Ved å ta de valgte todimensjonale toppunkter på kartet og 1-celletoppunktene, blir begrenset Delaunay-tessellering utført.
Definer en forbundet maskekomponent for en trekantoppdeling som det største sett med forbundne triangler avgrenset av en lukket 1-cellekantsløyfe. Når et todimensjonalt kart har N 2-celler, resulterer den begrensede Delaunay-tessellering i N forbundne komponenter. Disse komponentene blir funnet ved å benytte triangel-til-toppunkt-konnektivitetene. Den underliggende geometrimotor bidrar til å finne korrespondanse mellom maskekomponenter og 2-celler. Siden toppunkter valgt fra 1-celler blir brukt til å begrense tesselleringen, og de deles av overflater, hindrer denne algoritmen sprekker mellom 2-celler. Fig. 27b viser et eksempel.
Ytelsessammenligningen mellom denne algoritmen og algoritmen for tessellering av koherente overflater kan avhenge av kompleksiteten til makrotopologien på et gitt todimensjonalt kart. La N være antall toppunkter. Kompleksiteten til Delaunay-trekantoppdelingen er NIogN. La Nt være det totale antall toppunkter som er valgt fra et firertre i et todimensjonalt kart. Anta at det er mere enn én 2-celle på det todimensjonale kart. La Nj være antall toppunkter på én av 2-cellene. Kompleksiteten til Delaunay-trekantoppdelingen for denne 2-cellen er da meget mer enn NJogNj siden alle Nt toppunkter blir besøkt under trekantoppdelingen. Den presenterte algoritme bør ha bedre ytelse ettersom antallet 2-celler på et todimensjonalt kart øker siden tesselleringen bare kjøres én gang. I praksis, siden parallellprosessen gjentas når betraktningsposisjonen endres, blir én desimer-ingsalgoritme benyttet for noen betraktningsposisjoner og den annen algoritme for andre posisjoner. Den gjentatte prosessen kan benytte den algoritme som har best ytelse.
Grensedesimering
Firertreet utgjør en god måte til desimering av overflater. Vi kunne etterlate 1-cellene udesimerte hvis individuelle overflater eller modeller med et lite antall overflater blir visualisert. Med modeller som består av et stort antall store overflater, vil imidlertid bruk av udesimerte 1-celler som begrensninger for tesselleringen, i alvorlig grad begrense ytelsen.
Hovedkravet for desimering av 1-celler er å hindre selvskjæringer og skjæringer mellom 1-celler, som danner grensen til en 2-celle, i 2-cellens parameterrom. Fig. 28a og 28b viser et eksempel på selvskjæring. Når et toppunkt 204 på en kurve 206 blir fjernet, skjærer kurven 206 seg selv ved punkt 208. Skjæringene som er et resultat av desimering, endrer ikke bare makrotopologien til geometrimodellen, men forårsaker også tesselleringsfeil. For å overvinne dette problemet blir 1-cellene desimert først. Denne desimeringen kan gjøres i 1-cellens parameterrom eller i bilderommet. Forfiningsmetoden som er beskrevet i W. Cho, T. Maekawa, og N. Patrikalakis, Topologicatly reliable approximation ofcomposite Bezier curves, Computer Aided Geometric Design, volum 13,1996, pp. 497-520, blir så anvendt for å finne skjæringer og forfine desimering lokalt inntil alle skjæringene er løst.
For hver 2-celle, finn de desimerte 1-celler som danner grensen til 2-cellen. Detekter og korriger 1-celleskjæringerved å forfine 1-cellens desimeringer. Skjær-ingsdeteksjon og forfining blir utført i 2-cellens parameterrom. En desimert 1-celle kan forfines med mer enn én 2-celle som deler denne 1-cellen.
Analogt med en 2-celle er det mulig å bygge et tre for en 1-celle. Selv om det naturlige tre å velge for en 2-celle var et firertre, er det naturlige tre for 1-celler å velge et binært tre. Man vil forstå at treet ikke behøver å være et binært tre, men kan være et tre med et hvilke som helst antall avkom for hver node, slik som et firertre. Et binært tre er et tre hvor hver node har to avkom, bortsett fra bladnodene som ikke har noen avkom. For hver 1-celle i geometrimodellen blir det bygget et binært tre ved å tildele hver simpleks i 1-cellen til en unik bladnode i treet. I det eksempel som er illustrert på fig. 29a blir simpleksene 210, 212, 214 og 216 tildelt henholdsvis bladnodene 218, 220, 224 og 226, som vist på fig. 29b. Akkurat som i firertreet arver foreldrenodene simpleksene til sine bladnoder. Foreldrenoden 228 arver således simpleksene til sine avkomstnoder 218 og 220; foreldrenoden 230 arver simpleksene til sine avkomstnoder 224 og 226; og foreldrenoden 232 arver simpleksene til sine avkomstnoder 228 og 230. For hver node må videre samlingen av simplekser topologisk være en enerskive, topologisk vil det si et linjesegment. Siden alle nodene er enerskiver eller plater, har hver node to endepunkter. Noden 218 har f.eks. endepunktene 234 og 236, og noden 232 har endepunktene 234 og 238.1 direkte analogi med overflater og firertreet er disse endepunktene de kritiske toppunkter for treet til 1 -cellen. Som med overflater og firertreet er det, for å garantere at det ikke finnes sprekker i en desimert betraktning, nødvendig å visualisere de kritiske toppunktene. Hvis f.eks. 1-cellen som er illustrert på fig. 29a blir gjengitt ved oppløsning ved nivå 0, slik at bare rotnoden blir gjengitt, så blir bare de kritiske toppunkter tilknyttet vedkommende node, 234 og 238, sammen med en kant som forbinder dem, gjengitt, som illustrert på fig. 29c og 29d. Hvis 1-cellen som er illustrert på fig. 29a blir gjengitt med oppløsning ved nivå-1 slik at bare nodene 228 og 230 gjengis, så blir de kritiske toppunkter tilknyttet disse nodene, 234, 238 og 240, sammen med de kanter som forbinder dem, gjengitt som illustrert på fig. 29c og 29d. Hvis 1-cellen som er illustrert på fig. 29a endelig blir gjengitt med oppløsning ved nivå 2 slik at nodene 218, 220, 224 og 226 blir gjengitt, så blir de kritiske toppunkter som er tilknyttet disse nodene 234, 236, 238, 240 og 242 gjengitt sammen med de 1-celler som forbinder dem, som illustrert på
fig. 29c og 29d.
Ved å bruke de kritiske toppunkter representerer, som i firertreet, hver komplett nodefront en uoppsprukket desimering av 1-cellen. Hver 1-celle har et for-bilde i parameterrommet til hver 2-celle som denne 1-cellen grenser til. Forbildet til den desimerte 1-celle kan ha selvskjæringer og skjæringer med forbilder av andre desimerte 1-celler i denne 2-cellens parameterrom. Cho's algoritme, som er nevnt ovenfor, blir anvendt på de desimerte 1-celler som avgrenser en 2-celle, for å løse opp de uønskede skjæringer. For hvert binært tre blir den resulterende desimering representert av en komplett nodefront for treet.
Det er tidkrevende å hindre skjæring. For en gitt modell vil flere 1-celledesi-meringer med forskjellige oppløsninger være forhåndsberegnet. Under den adaptive visualisering blir én av desimeringene valgt. Når modellen er nærmere kameraet, blir en finere oppløsning av 1-cellene valgt. Når modellen er lenger bort, blir en grovere oppløsning valgt.
Frasortering av 1-celler i den avkortede betraktningskjegle Frasortering i en avkortet betraktningskjegle for en overflate blir godt hånd-tert av firertreet, som beskrevet ovenfor. Hvis imidlertid en lignende frasorterings-algoritme blir anvendt på 1-celler, kan resultatet endre modellens makrotopologi. Systemet benytter algoritmer for betraktningskjegle-frasortering av 1-celler som bevarer makrotopologien i den avkortede betraktningskjegle.
Algoritmen for frasortering i den avkortede betraktningskjegle for den enk-eltgjengede implementering, innbefatter følgende trinn.
1. 1-cellene representeres av binære trær. En desimering av 1-celler blir
valgt som beskrevet ovenfor.
2. For hvert todimensjonalt kart som kan ha flere 2-celler,
- Firertreet blir gjennomgått, noe som resulterer i et sett med topp-punkter, f.eks. 244 som skal visualiseres, som vist på fig. 30a. Ubegrenset Delaunay-tessellering blir anvendt på toppunktene i deres parameterrom for å generere triangler, f.eks. 246. Disse trianglene er avgrenset av et konvekst skrog 248. - For hver 1-celle som ligger på dette todimensjonale kartet, slik som 1-cellen 250 på fig. 30b, finn parameterverdiene for toppunktene for den valgte desimering. Klem 1-cellen 30 mot det konvekse skrog i parameterrommet, som vist på fig. 30c. Dette kan gjøres effektivt ved å bruke 1-cellens binære tre. Toppunktene utenfor det konvekse skrog blir fjernet som vist på fig. 30c. Skjæringspunktene mellom 1-cellekanten og det konvekse skrog blir tilføyet kantlisten, som vist på fig. 30c.
- De fastklemte 1-celletoppunktene og kantene blir tilføyet tesselleringen ved å benytte inkremental begrenset Delaunay-tessellering, som vist på fig. 30d. Maskekomponenter som er forbundet med hverandre med 1 -celler eller de konvekse skrog og deres tilsvarende 2-celler, blir identifisert. De maskekomponenter som ikke har noen tilsvarende 2-celler, blir fjernet.
Algoritmen anvendes på både koherente og ikke-koherente modeller. Legg merke til at 1-cellene er delt av overflater. En 1-celle kan være på flere todimensjonale kart som har forskjellige konvekse skrog som et resultat av tesselleringen. Fastklemmingen av den samme 1-celle kan derfor være forskjellig fra et todimensjonalt kart til et annet. På fig. 31a kan f.eks. 1-cellen 252 være klemt mot ett av to konvekse skrog 254 og 256 for presentasjon på den avkortede betraktningskjegle 258. Hvis 1-cellen 252 er fastklemt ved hjelp av det konvekse skrog 256, blir resultatet et fragment 260 som vist på fig. 31b. Hvis 1-cellen 252 er fastklemt ved hjelp av det konvekse skrog 254, blir resultatet et fragment 262 som vist på fig. 31c. Dette utgjør ikke noe problem for visualisering siden bildet av det konvekse skrog i det tredimensjonale rom er utenfor den avkortede betraktningskjegle. Bildet av 1-cellen 252 opptrer følgelig på samme måte uansett hvilket konvekst skrog som står for fastklemmingen, som vist på fig. 31 d.
For en flergjenget implementering kan 1-celler ikke frasorteres siden en del av overflaten som er utenfor den avkortede betraktningskjegle i ett delbilde kan komme til syne i neste delbilde. Når modellprojeksjonen til skjermen i dette tilfelle overskrider betraktningsåpningen, blir det valgt et grovere oppløsningsnivå for 1-celler. Ved å gjennomgå det binære tre blir deler av 1-cellene som er inne i den avkortede betraktningskjegle, forfinet til en ønsket oppløsning som er bestemt fra den forhåndsbestemte minste pikseloppløsning. Legg merke til at forfiningen fremdeles kan forårsake nye skjæringer. Hvis dette skjer, må et finere oppløs-ningsnivå for 1-cellene velges, og forfining inne i den avkortede betraktningskjegle kan om nødvendig fortsette.
Forenklinger
Når behovet for den visuelle kvalitet er mindre viktig, kan det anvendes noen forenklinger for å oppnå høyere ytelse. Vanligvis kan forenklingene benyttes når kameraet er i bevegelse. Når vekselvirkningen stopper, tegner systemet opp en finere og mer korrekt modell som respekterer makrotopologien.
Oppløsningsjustering
For å oppnå bedre ytelse under bevegelse, kan vi gjengi geometrimodellen ved en grovere oppløsning ved å øke de minste projeksjonsareal, dvs. øke Rmi„(screen) i ligning (7). Når bevegelsen stopper, blir en modell med finere opp-løsning gjengitt ved å gjeninnsette Rmin(screen).
Dynamisk detaljnivå
For å redusere gjennomgangstiden kan hver overflate i modellen gjengis med et valgt nivå av firertrenoder. Istedenfor å spesifisere det minste skjermpro-jeksjonsarealet for en firertrenode, blir en sekvens med modell/skjerm-projek-sjonsarealer spesifisert, hver svarende til et overflatenivå for et firertre. For et mindre modell/skjerm-projeksjonsareal blir det valgt et grovere nivå for firertreet, og for et større projeksjonsareal blir et finere nivå i firertreet valgt. Dette blir effektivt en detaljnivå-teknikk (LOD-teknikk), bortsett fra at overflatemaskene genereres dynamisk. Denne fremgangsmåten gjelder når modellen befinner seg fullstendig innenfor den avkortede betraktningskjegle, siden ingen frasortering er nødvendig på tidspunkt.
Topologisk forenkling
Den adaptive desimering av modellen som er beskrevet tidligere, bevarer skjæringskurver, dvs. de topologiske grenser mellom flater blir bevart. For å oppnå bedre ytelse under bevegelse, slakker systemet på kravet til grensebevaring.
Hvis anvendelsen ikke gjengir forskjellige celler i det samme overflatetrekk forskjellig, så behøver SIGMA, under bevegelse, ikke å skjelne mellom disse cellene i det hele tatt siden man ikke kan bevege modellen og samtidig vekselvirke med individuelle celler. For en ikke-koherent modell kan derimot alle 2-celler på en overflateegenskap fremdeles være på samme kart, og dermed dele det samme firertre. I dette tilfelle gjennomgår vi ganske enkelt firertrærne, tessellerer toppunktene uten kantbegrensninger og gjengir overflatene. Man vil se naturlige skjæringer som et resultat av overflater som opptar det samme tredimensjonale rom. disse kan ikke være de virkelige skjæringskurvende i modellen; visualiseringsutførel-sen utføres imidlertid meget hurtigere, noe som resulterer i glattere bevegelse. Når bevegelsen stanser, gjengir systemet den modell som bevarer 1-cellene og med skjeln bare 2-celler.
Konvekse skrog
Noen ganger er det nødvendig å skjelne 2-celler selv under bevegelse,
f.eks. for å fargelegge 2-celler forskjellig. I dette tilfelle benytter systemet det konvekse skroget til 2-cellen i parameterrommet til å representere cellen. For en koherent modell blir 2-cellens firertre gjennomgått og resulterer i et sett med toppunkter. Den ubegrensede Delaunay-tessellator genererer et triangelmaskenett avgrenset av det konvekse skroget til toppunktene i parameterrommet. Parameterverdiene til trianglene blir evaluert og de resulterende triangler blir gjengitt.
For en 2-celle i en ikke-koherent modell benytter systemet toppunktene til dens 1-celler og visse interne todimensjonale toppunkter funnet fra 2-cellen. I likhet med den koherente modell blir så ubegrenset Delaunay-tessellering anvendt.
Siden en 2-celle generelt ikke er konveks, forårsaker denne forenklingen overlapping mellom 2-celler. For geovitenskapelrge modeller er slik overlapping vanligvis langs grensen. Når modellen er i bevegelse, kan slik overlapping tolereres.
Ytelse og kvalitet
SIGMA muliggjør et bredt område med kompromisser uttrykt ved modelltopologi-kvalitet og ytelse. Topologikvaliteten relateres direkte til den visuelle kvalitet av den gjengitte modell, som vist på fig. 32. Helt til venstre på fig. 32 er den per-fekte modelltopologi 264, dvs. at modellen blir gjengitt med sin opprinnelige opp-løsning. For en stor modell med mange skjærende flater kan gjengivelsesytelsen være meget lav. For å oppnå bedre ytelse blir modellen desimert mens skjæringskurvene 266 bevares. Det kan være visse topologiske endringer ettersom nye skjæringer kan inntreffe mellom desimerte flater. Høyere ytelse kan oppnås ved å desimere under bevaring av skjæringskurver og senkning av oppløsningen 268. Når man beveger seg mot høyere ytelse, blir skjæringskurvene ikke bevart 270. Høyere ytelse kan igjen oppnås ved å senke oppløsningen 272. Etter hvert som mer topologisk og visuell kvalitet blir ofret, ved f.eks. å gjengi bare grensedefinerte flater 274, konvekse skrog 276,1-cellegrenser 278 eller grensebokser 280, blir det oppnådd bedre ytelse. Dette området med kompromisser gir brukere valgmulighe-ter i henhold til deres behov og prioriteringer. Man kan f.eks. velge lavere kvalitet
når kameraet er i bevegelse, og høyere kvalitet når kameraet stopper.
ADAPTIV VISUALISERING FOR INTERAKTIV GEOMETRIMODELLERING
Systemet anvender adaptive visualiseringstekniker for interaktiv geometrimodellering.
IGM-utvidelse
SIGMA blir integrert med IGM og GQI for å understøtte egenskapsbasert, interaktiv geometrimodellering. IGM blir naturlig utvidet til å understøtte SIGMA-geometri og visualiseringsobjekter få å håndtere store modeller. Med slik utvidelse gjelder IGM-mekanismene for konsistensstyring, interaktiv modellering, delvis opp-datering, materialegenskapsstyring, strukturell redigering, lagring, gjenvinning, osv., for SIGMA-objekter automatisk. Fig. 33 viser en del av det samlede objekthierarki i IGM for SIGMA-utvidelse. Et aggregatobjekt ag-overflatesigma 282 blir definert for å representere en SIGMA-overflate. Den er en underklasse fra ag-tri-angelflate 284, som er underklasse av ag-egenskap 286 og ag-trekantoverflate 284 og i tillegg har funksjonaliteten til en SIGMA-overflate. Et aggregatobjekt ag-ISP-SIGMA 288 blir definert for å representere en SIGMA-modell. Den er en underklasse av ag-ISP, som er en underklasse av ag-egenskap 286. ag-ISP-SIGMA 288 arver egenskapene og metodene fra ag-egenskap 286 og ag-ISP 290 og har i tillegg funksjonaliteten til en SIGMA-modell. Med fleksibiliteten til IGM-arkitekturen kan de tre hierarkier, aggregat, grafikk og geometri utvides forskjellig. På geomet-risiden gjelder f.eks. gm-ISP SIGMA-modellen direkte.
IGM blir utvidet for understøtte den dynamiske oppførsel som kreves ved adaptiv visualisering i SIGMA. Den nye dynamiske IGM-styring gjør det mulig for IGM-objekter å spore kamerabevegelsen, noe som utløser den adaptive visualisering av overflatene og modellen. Denne dynamiske styringen muliggjør også den dynamiske oppførselen til andre IGM-grafikkobjekter, slik som brønnbaner, bore-hullsbilder osv., som ikke er del av den geometriske modell.
Adaptiv visualisering i IGM
Den adaptive visualisering for overflater og modeller blir brukt for interaktiv geometrimodellering ved forskjellige trinn. For en geometrimodell benytter IGM de algoritmer som er beskrevet ovenfor. For en gitt overflate styrer IGM overgangen av overflaten fra dens uklassifiserte tilstand til den klassifiserte tilstand, og styrer den måten overflaten blir visualisert på, som vist på fig. 34. Før overflaten blir klassifisert, er den en inaktiv overflateegenskap 292 som ikke er en del av geometrimodellen. Den algoritme som er beskrevet ovenfor for adaptiv visualisering av overflater, gjelder overflaten i denne tilstanden. Både overflaten og modellen blir adaptivt visualisert, men blir desimert uavhengig. Etter at overflaten er klassifisert inn i modellen og blir en aktiv overflateegenskap 294, blir den uavhengige, adaptive oppførsel fjernet fra overflaten. Under den adaptive visualisering blir overflaten desimert som en del av modellen for å sikre at det ikke er sprekker i modellen. Hvis overflateegenskapen blir oppløst fra modellen, blir den en inaktiv overflateegenskap.
For å redigere en klassifisert overflate, for eksempelvis å translatere overflaten, lager IGM grafisk en fantomoverflate 296 fra den overflate som skal redige-res. Brukeren kan så interaktivt manipulere fantomoverflaten 296 uten å endre modellens geometri. Under interaktiv bruk tilpasser IGM adaptiv visualisering til fantomflaten 296 uten å bry seg om resten av modellen. Når brukeren avslutter og godkjenner endringen, redigerer IGM modellen ved virkelig å translatere overflaten (detaljer blir oversett her) og fjerner fantomflaten 296. Overflaten blir igjen visualisert som en del av modellen.
IGM tillater brukere å visualisere en valgt del av modellen, f.eks. visualisere alle aktive overflateegenskaper eller alle volumene, elier noen overflateegenskaper og noen volum. Algoritmene som er presentert ovenfor, blir anvendt på den valgte del av modellen. En overflatecelle kan deles av to volumceller, kan tilhøre minst én overflateegenskap eller kan tilhøre mer enn én volumegenskap. For visu-aliseringsytelse bør overflateceller bare desimeres én gang selv når de må gjengis flere ganger, hver for tilhørende volum eller egenskaper. For å oppnå dette konst-ruerer IGM scenegrafen i henhold til krav, samler inn alle overflatecellene som skal gjengis og sender dem sammen til visualiseringslinjen (fig. 13). Utførelsen sikrer at overflatecellene alle sammen blir desimert for å unngå sprekker, og én gang for hver celle. IGM sikrer at scenegrafnodene får korrekt desimerte celler.
Visualisering av materialegenskaper
IGM kan skissere fysiske materialegenskaper definert innenfor geometrimodellen. Mekanismen blir utvidet for adaptiv visualisering. To typer av visualisering av materialegenskaper blir understøttet: teksturkartlegging og gjengivelse pr. toppunkt. Begge tilfellene benytter IGM- og GQI-mekanismer for å feste og evalu-ere materialegenskaper tilføyd overflateegenskaper eller volumegenskaper. IGM-metoder blir så anvendt for å kartlegge verdier av materialegenskaper til visuelle attributter, slik som farger.
Med teksturkartlegging blir materialegenskapsverdiene på en overflate evaluert for å generere teksturbildet. Den underliggende overflateparameterisering definerer teksturkoordinatene. Bare teksturkoordinatene til toppunktene som deltar i de gjengitte masker, blir sendt til den grafiske parallellutførelse. Med gjengivelse pr. toppunkt blir materialegenskapsverdier ved toppunktene som gjengis, evaluert, kartlagt til farger og gjengitt. Verdiene blir evaluert etter behov og kan hurttg-lagres for ytelse. Et firertre kan brukes til å hurtigmellomlagre fargene til toppunktene for en overflate.
Modeller med blandede karttyper
Den underliggende geometrimotor SHAPES® muliggjør blanding av geometriobjekt og visse andre karttyper. Tradisjonelt blir geometrimodellen bygget med objekter med Web-kart. IGM-utvidelsen håndterer geometriske modeller med blanding av SIGMA-overflater og Web-overflater og visualiserer disse overflatene tilsvarende. Slike geometrimodeller kan fremdeles desimeres adaptivt. Når imidlertid en 1-celle er en del av grensen til en Web-overflate, kan denne 1-cellen ikke desimeres.
Oppfinnelsen kan implementeres i maskinvare eller programvare, eller en kombinasjon av begge. Fortrinnsvis blir imidlertid oppfinnelsen implementert i dataprogrammer som utføres på programmerbare datamaskiner som hver omfatter en prosessor, et datalagringssystem (innbefattende flyktige og ikke-flyktige lagre og/eller lagringselementer), minst én innmatingsanordning og minst én utmatingsanordning. Programkode blir anvendt på inngangsdata for å utføre de funksjoner som er beskrevet ovenfor og for å generere utgangsinformasjon. Utgangs-informasjonen blir tilført én eller flere utmatingsanordninger på kjent måte.
Hvert program blir fortrinnsvis implementert i et høynivå prosedyre- eller objektorientert programmeringsspråk (slik som C++ eller C) for å kommunisere med et datasystem. Programmene kan imidlertid implementeres i assembler- eller maskin-språk om ønsket. I alle fall kan språket være et kompilert eller tolket språk.
Hvert slikt dataprogram er fortrinnsvis lagret på et lagringsmedium eller en lagringsanordning (f.eks. ROM eller magnetiske/optiske plater eller disketter) som kan leses av en programmerbar universal- eller spesial-datamaskin for å konfigu-rere og operere datamaskinen når lagringsmediene eller anordningen blir avlest av datamaskinen for å utføre de her beskrevne prosedyrer. Systemet ifølge oppfinnelsen kan også implementeres som et datamaskinlesbart lagringsmedium, konfigurert med et datamaskin program, hvor lagringsmediet som er konfigurert på denne måten, får en datamaskin til å operere på en spesiell og forutbestemt måte for å utføre de her beskrevne funksjoner.
Det foregående beskriver utførelsesformer av oppfinnelsen og er kun gitt som eksempler. Oppfinnelsen er ikke begrenset til noen av de spesifiserte trekk som er beskrevet her, men innbefatter alle varianter innenfor rammen av de ved-føyde patentkrav.

Claims (55)

1. Fremgangsmåte for interaktiv bygging og visualisering av en modell som omfatter en første overflate, hvor fremgangsmåten implementeres i en programmert datamaskin som omfatter en prosessor, et datalagringssystem, minst én innmatingsanordning og minst én utmatingsanordning, hvor fremgangsmåten og modellen er lagret på et datamaskinlesbart medium, karakterisert ved å representere en første overflate ved flere oppløsningsnivåer hvor representasjonen tillater at overflaten adderes til en modell ved benyttelse av irregulær rominndeling; å representere hver overflate av modellen ved minst ett oppløsningsnivå hvor overflaterepresentasjonen tillater ISP-konstruksjon av modellen; å benytte nevnte overflaterepresentasjon av den første overflaten til: å interaktivt bygge modellen ved å addere den første overflaten til modellen ved å benytte irregulær rominndeling for derved å lage en ISP-modell; å oppdatere overflaterepresentasjonen til minst én overflate av modellen etter den irregulære rominndeling; å bestemme, etter hvert som ISP-modellen bygges, gjengivelsesoppløsnin-gen for en del av den første overflate basert på en avkortet betraktningskjegle hvorfra den første overflate skal betraktes; og å gjengi delen av den første overflate på utmatingsanordningen, mens modellen bygges, ved å benytte gjengivelsesoppløsningen.
2. Fremgangsmåte ifølge krav 1, hvor den første overflate omfatter ett eller flere toppunkter og én eller flere kanter, karakterisert ved at bestemmelsestrinnet omfatter å velge, basert på den avkortede betraktningskjegle, de toppunkter som skal gjengis blant det ene eller de flere toppunkter; å velge, basert på den avkortede betraktningskjegle, de kanter som skal gjengis blant den ene eller de flere kanter; og å tessellere toppunktene som skal gjengis og kantene som skal gjengis.
3. Fremgangsmåte ifølge krav 2, hvor trinnet med å representere en første overflate videre er karakterisert ved å inndele overflaten i ni noder ved oppløsningsnivå-i ved å benytte et sett med grenser for nivå-i; å inndele overflaten i ni+1 noder ved oppløsningsnivå-i+1 ved å bruke et sett med grenser for oppløsningsnivå-i+1, hvor oppløsningsnivå-i+1 har større oppløs-ning enn oppløsningsnivå-i; å tilordne til hver node ved nivå-i+1 med en unik node ved nivå-i; å tilordne til hver node ved nivå-i, de noder ved nivå-i+1 som er tilordnet noden; og at hver node er tilordnet et grenseobjekt, der hvert grenseobjekt rommessig avgrenser dens tilordnede node.
4. Fremgangsmåte ifølge krav 3, karakterisert ved at utvelgelsen av toppunktene som skal gjengis, omfatter å velge en nodefront blant nodene og samle toppunktene fra nodefronten.
5. Fremgangsmåte ifølge krav 4, karakterisert ved at utvelgelsen av nodefronten omfatter å frasortere de noder som er utenfor en betraktningskjegle, idet den avkortede betraktningskjegle blir bestemt av den avkortede betraktningskjegle hvorfra overflaten skal betraktes.
6. Fremgangsmåte ifølge krav 4, karakterisert ved at utvelgelsen av nodefronten omfatter å velge noder blant de noder som har grenseobjekter som skjærer den avkortede betraktningskjegle.
7. Fremgangsmåte ifølge krav 4, karakterisert ved at utvelgelsen omfatter å projisere en node ved nivå-i på en skjerm; at projeksjonen av noden ved nivå-i på skjermen har et areal; å tilføye noden ved nivå-i til nodefronten hvis arealet av projeksjonen er mindre enn en forutbestemt minste oppløsning; å tilføye noden med nivå-i til nodefronten hvis det ikke er noen noder ved nivå-i+1 tilordnet noden ved nivå-i; og å betrakte nodene ved nivå-i+1 som er tilordnet noden ved nivå-i for innbefatning i nodefronten hvis arealet av projeksjonen av noden ved nivå-i er større enn en forutbestemt minste oppløsning.
8. Fremgangsmåte ifølge krav 7, karakterisert ved at grenseobjektet for en node ved nivå-i er en kule; idet noden ved nivå-i blir tilføyd nodefronten hvis følgende ligning er tilfredsstilt: hvor K er en konstant beregnet for den avkortede betraktningskjegle; og D er avstanden fra midten av grenseobjektet til noden ved nivå-i til et betraktningspunkt tilordnet den avkortede betraktningskjegle.
9. Fremgangsmåte ifølge krav 8, karakterisert ved at projeksjonen er på et projeksjonsplan, at projeksjonsplanet har en minste sidelengde og projeksjonen blir betraktet fra betraktningspunktet gjennom en betraktningsåpning, hvor betraktningsåpningen har en sidelengde som svarer til den minste sidelengde av projeksjonsområdet, hvor hvor L er forholdet mellom den minste sidelengde av projeksjonsområdet på projeksjonsplanet og den tilsvarende sidelengde av betraktningsåpningen; Rmin{screen) er den forutbestemte radius for det minste projeksjonsareal på skjermen; og d er avstanden fra betraktningsåpningen til projeksjonsplanet.
10. Fremgangsmåte ifølge krav 7, karakterisert ved. at noden ved nivå-i omfatter én eller flere simplekser, der hver simpleks omfatter en overflatenormal, idet grenseobjektet til en node ved nivå-i er en kule; noden ved nivå-i blir tilføyet nodefronten hvis følgende ligning er tilfredsstilt: hvor f(G,A9) er en skaléringsfunksjon for middelnormalen 0 og avviket Aø for overflatenormalene ved simpleksene til noden ved nivå-i, K er en konstant beregnet for den avkortede betraktningskjegle; og D er avstanden fra midten av grenseobjektet til noden ved nivå-i til et betraktningspunkt tilknyttet den avkortede betraktningskjegle.
11. Fremgangsmåte ifølge krav 10, karakterisert ved at f(ø,A6) er forhåndsberegnet og lagret i en oppslagstabell.
12. Fremgangsmåte ifølge krav 2, karakterisert ved å fjerne toppunkter som ikke lenger skal gjengis fra listen over toppunkter som skal gjengis og tilføye toppunkter til listen over toppunkter som skal gjengis når den avkortede betraktningskjegle blir endret; å fjerne tesselleringen fra en del av overflaten som ikke lenger skal gjengis, innbefattende toppunkter som ikke lenger skal gjengis ved å benytte dekremental tessellering; og å tessellere en tilføyd del av den første overflaten, innbefattende de tilføyde toppunkter, ved å bruke inkremental tessellering.
13. Fremgangsmåte ifølge krav 2, karakterisert ved at den første overflaten omfatter én eller flere celler og et todimensjonalt kart, hvor det todimensjonale kart omfatter alle toppunktene i overflaten, og hvor det todimensjonale kart har et domene og en rekkevidde, og hvor tesselleringen omfatter å tessellere et delsett av toppunktene i domenet på det todimensjonale kart; og å skape et triangelmaskenett ved å bruke rekkeviddeverdiene for delsettet med toppunkter og tesselleringen av domenet.
14. Fremgangsmåte ifølge krav 13, karakterisert ved at tesselleringen av delsettet med toppunkter i domenet på det todimensjonale kart innbefatter en valgt samling av kanter.
15. Fremgangsmåte ifølge krav 2, karakterisert ved at den første overflaten omfatter én eller flere 2-celler, én eller flere 1-celler som danner grensene til 2-cellene, og én eller flere 0-celler som utgjør grensene til 1-cellene, og hvor gjengivelsen omfatter å desimere 1-cellene; å identifisere de desimerte 1-celler som utgjør grensen til en 2-celle; å detektere en skjæring mellom de 1-celler som utgjør grensen til 2-cellene; og å fjerne skjæringen.
16. Fremgangsmåte ifølge krav 15, karakterisert ved at hver 1 -celle omfatter én eller flere simplekser, og at desimeringen av en 1-celle omfatter å bygge et tre for 1-cellen ved å tilordne hver simpleks i 1-cellen til en unik bladnode i treet; og å tilordne n sammenknyttede noder ved nivå-i+1 med en node ved nivå-i; å definere som kritiske toppunkter ved oppløsningsnivå-i, grensetoppunktene for nodene ved nivå-i; å velge en nodefront for treet; å samle toppunktene fra nodefronten; å tilføye 0-cellene til samlingen av toppunkter; og å bygge en samling av kanter fra toppunktene i et domene på et todimensjonalt kart.
17. Fremgangsmåte ifølge krav 1, karakterisert ved at den avkortede betraktningskjegle er relatert til en kameraposisjon, hvor kameraposisjonen har en historie og kameraet har en aktuell, fremtidig posisjon ved et fremtidig tidspunkt, idet fremgangsmåten videre omfatter å forutsi, forut for det fremtidige tidspunkt, kameraposisjonen ved det fremtidige tidspunkt basert på kameraposisjonens historie; å beregne, forut for det fremtidige tidspunkt, den del av den første overflate som ved det fremtidige tidspunkt skal gjengis; å bestemme, forut for det fremtidige tidspunkt, gjengivelsesoppløsningen ved det fremtidige tidspunkt av den fremtidige del basert på en avkortet betraktningskjegle hvorfra den første overflate skal betraktes ved det fremtidige tidspunkt; og å gjengi på utmatingsanordningen, når det fremtidige tidspunkt ankommer, den fremtidige del av den første overflate ved å bruke den fremtidige gjengivelses-oppløsning hvis den forutsagte, fremtidige kameraposisjon i det vesentlige stemmer overens med den aktuelle fremtidige kameraposisjon.
18. Fremgangsmåte ifølge krav 17, karakterisert ved at forutsigelsen blir utført med et Kal man-f ilter.
19. Fremgangmåte ifølge krav 1, hvor fremgangsmåten har ett eller flere ytelseskriterier og ett eller flere kvalitetskriterier, karakterisert ved å tillate en bruker å justere én eller flere parametere, hvor justering av minst én av den ene eller de flere parametere resulterer i et kompromiss mellom minst ett ytelseskriterium og minst ett kvalitetskriterium.
20. Fremgangsmåte ifølge krav 1, karakterisert ved å gjengi på utmatingsanordningen, ved å bruke gjengivelsesoppløsningen, en representasjon av en materialegenskap tilordnet den gjengitte del av den første overflate.
21. Fremgangsmåte ifølge krav 1, karakterisert ved at hver overflate har en tilstand tilknyttet denne som videre omfatter: å tilordne en første tilstand til en overflate som skal adderes til modellen; å uavhengig adaptivt visualisere en overflate i den første tilstanden; hvor trinnet med å bygge modellen omfatter å klassifisere en overflate i den første tilstanden inn i modellen og når en overflate klassifiseres inn i modellen, å tilordne en andre tilstand til en overflate klassifisert inn i modellen; og å visualisere en overflate i den andre tilstanden avhengig av modellen.
22. Fremgangsmåte ifølge krav 21, karakterisert ved å interaktivt editere en overflate av modellen; å tilordne en tredje tilstand til den editerte overflate; å uavhengig adaptivt visualisere en hvilken som helst overflate som har tilordnet den tredje tilstanden.
23. Datamaskinsystem for visualisering og interaktiv bygging av en modell som omfatter en første overflate, idet systemet omfatter en programmert datamaskin med en prosessor, et datalagringssystem, minst én innmatingsanordning og minst én utmatingsanordning, idet datamaskinsystemet er karakterisert ved en anordning for å representere hver overflate av modellen ved minst ett oppløsningsnivå hvor overflaterepresentasjonen tillater ISP-konstruksjon av modellen; en anordning for å representere en første overflate ved flere oppløsningsni-våer hvor representasjonen tillater at overflaten adderes til en modell ved å benytte irregulær rominndeling; en anordning for å benytte nevnte overflaterepresentasjon av den første overflaten til: å benytte irregulær rominndeling til å bygge modellen; en anordning som benytter nevnte overflaterepresentasjon for å bestemme, mens modellen bygges, gjengivelsesoppløsningen for en del av den første overflate basert på en avkortet betraktningskjegle hvorfra den første overflate skal betraktes; og en anordning som benytter nevnte overflaterepresentasjon for å gjengi, mens modellen bygges, delen av den første overflate på utmatingsanordningen ved å bruke gjengivelsesoppløsningen.
24. System ifølge krav 23, karakterisert ved at den første overflate omfatter ett eller flere topp-punkter og én eller flere kanter, og ved at bestemmelsesanordningen omfatter en anordning for å velge, basert på betraktningskjeglen, de toppunkter som skal gjengis blant det ene eller de flere toppunkter; en anordning for å velge, basert på betraktningskjeglen, de kanter som skal gjengis blant den ene eller de flere kanter; og en anordning for tessellering av toppunktene som skal gjengis og kantene som skal gjengis.
25. System ifølge krav 24, karakterisert ved en anordning for inndeling av overflaten i ni noder ved oppløsningsnivå-i ved å bruke et sett med grenser ved nivå-i; en anordning for inndeling av overflaten i ni+1 noder ved oppløsningsnivå-i+1 ved å bruke et sett med grenser ved nivå-i+1, hvor oppløsningsnivå-i+1 har større oppløsning enn oppløsningsnivå-i; en anordning for å tilordne hver node ved nivå-i+1 med en unik node ved nivå-i; en anordning for å tilordne med hver node ved nivå-i, de noder ved nivå-i+1 som er tilordnet noden; og at hver node er tilordnet et grenseobjekt der hvert grenseobjekt rommessig avgrenser dets tilordnede node.
26. System ifølge krav 25, karakterisert ved at anordningen for å velge toppunktene som skal gjengis, omfatter en anordning for å velge en nodefront blant nodene og samle toppunktene fra nodefronten.
27. System ifølge krav 26, karakterisert ved at anordningen for å velge nodefronten omfatter: en anordning for frasortering av de noder som er utenfor en avkortet betraktningskjegle, idet den avkortede betraktningskjegle blir bestemt av den avkortede betraktningskjegle hvorfra overflaten skal betraktes.
28. System ifølge krav 26, karakterisert ved at anordningen for å velge nodefronten omfatter en anordning for å velge noder blant de noder som har grenseobjekter som skjærer den avkortede betraktningskjegle.
29. System ifølge krav 26, karakterisert ved at anordningen for utvelgelse omfatter en anordning for å projisere en node ved nivå-i på en skjerm; at projeksjonen av noden ved nivå-i til skjermen har et areal; en anordning for å tilføye noden ved nivå-i til nodefronten hvis arealet av projeksjonen er mindre enn en forutbestemt minste oppløsning; en anordning for å addere noden ved nivå-i til nodefronten hvis det ikke er noen noder ved nivå-i+1 tilordnet noden ved nivå-i; og en anordning for å betrakte nodene ved nivå-i+1 som er tilordnet noden ved nivå-i, for innbefatning i nodefronten hvis arealet av projeksjonen av noden ved nivå-i er større enn en forutbestemt minste oppløsning.
30. System ifølge krav 29, karakterisert ved at grenseobjektet for en node ved nivå-i er en kule; at noden ved nivå-i blir tilføyd nodefronten hvis følgende ligning er tilfredsstilt: R(sphere) < K x D hvor K er en konstant beregnet for den avkortede betraktningskjegle; og D er avstanden fra midten av grenseobjektet for noden ved nivå-i til et betraktningspunkt tilknyttet den avkortede betraktningskjegle.
31. System ifølge krav 24, karakterisert ved en anordning for å fjerne toppunkter som ikke lenger skal gjengis, fra listen over toppunkter som skal gjengis, og tilføye toppunkter til listen over toppunkter som skal gjengis, når den avkortede betraktningskjegle blir endret; en anordning for å fjerne tesselleringen fra en del av overflaten som ikke lenger skal gjengis, innbefattende de toppunkter som ikke lenger skal gjengis, ved å bruke dekremental tessellering; og en anordning for tessellering av en tilføyd del av overflaten, innbefattende de tilføyde toppunkter ved å bruke inkrementa) tessellering.
32. System ifølge krav 24, karakterisert ved at overflaten omfatter én eller flere celler og et todimensjonalt kart, hvor det todimensjonale kart omfatter alle toppunktene i overflaten, at det todimensjonale kart har et domene og et område, og ved at anordningen for tessellering omfatter en anordning for tessellering av et delsett av toppunktene i domenet på det todimensjonale kart; og en anordning for å skape et triangelmaskenett ved å bruke områdeverdiene for delsettet med toppunkter og tesselleringen av domenet.
33. System ifølge krav 24, karakterisert ved at overflaten omfatter én eller flere 2-celler, én eller flere 1 -celler som utgjør grensene for 2-cellene, og én eller flere 0-celler som ut-gjør grensene til 1-cellene, og ved at anordningen for gjengivelse omfatter en anordning for desimering av 1-cellene; en anordning for å identifisere de desimerte 1-celler som utgjør grensen til en 2-celle; en anordning for å detektere en skjæring mellom de 1-celler som utgjør grensen til 2-cellen; og en anordning for å fjerne skjæringen.
34. System ifølge krav 23, karakterisert ved at den avkortede betraktningskjegle er relatert til en kameraposisjon, at kameraposisjonen har en historie, at kameraet har en aktuell fremtidig posisjon ved et fremtidig tidspunkt, idet systemet videre omfatter en anordning for å forutsi, forut for det fremtidige tidspunkt, kameraposisjonen ved det fremtidige tidspunkt basert på kameraposisjonens historie; en anordning for beregning, forut for det fremtidige tidspunkt, av den fremtidige del av den første overflate som skal gjengis ved det fremtidige tidspunkt; en anordning for å bestemme, forut for det fremtidige tidspunkt, den fremtidige gjengivelsesoppløsning av den fremtidige del basert på en avkortet betraktningskjegle hvorfra den første overflate skal betraktes ved det fremtidige tidspunkt; og å gjengi på utmatingsanordningen, når det fremtidige tidspunkt ankommer, den fremtidige del av den første overflate ved å bruke den fremtidige gjengivelses-oppløsning hvis den forutsagte, fremtidige kameraposisjon hovedsakelig stemmer med den aktuelle, fremtidige kameraposisjon.
35. System ifølge krav 23, karakterisert ved at det har ett eller flere ytelseskriterier og ett eller flere kvalitetskriterier, idet systemet videre omfatter en anordning for å tillate en bruker å justere én eller flere parametere, hvor justering av minst én av de ene eller de flere parametere resulterer i et kompromiss mellom minst ett ytelseskriterium og minst ett kvalitetskriterium.
36. System ifølge krav 23, karakterisert ved en anordning for gjengivelse på utmatingsanordningen, ved å bruke gjen-givelsesoppløsningen, en presentasjon av en materialegenskap tilknyttet den gjengitte del av den første overflate.
37. Datamaskinsystem for interaktiv bygging og visualisering av en modell som omfatter én eller flere overflater, hvor datamaskinsystemet omfatter en programmert datamaskin med en prosessor, et datalagringssystem, minst én innmatingsanordning og minst én utmatingsanordning, karakterisert ved en anordning for å benytte en irregulær rominndeling til å bygge en fleropp-løsningsrepresentasjon av én av de ene eller flere overflater hvor overflaterepresentasjonen tillater ISP-konstruksjon av modellen; en anordning for interaktiv bygging av modellen ved å benytte irregulær rominndeling for å generere en grafikkmodell basert på fleroppløsningsrepresenta-sjonen av overflaten; en anordning for å oppdatere overflaterepresentasjonen til minst én overflate av modellen etter irregulær rominndeling; og en anordning for gjengivelse av grafikkmodellen av overflaterepresentasjonen, mens ISP-modellen bygges.
38. Gjenstand for fremstilling, karakterisert ved et medium som kan benyttes av en datamaskin med en datamaskinlesbar kodeanordning innebygd for å bygge en modell ved å bruke irregulær rominndeling og for å tilveiebringe visualisering av en modell som omfatter en første overflate, idet den datamaskinlesbare programkodeanordning i gjenstanden for fremstilling omfatter: en datamaskinlesbar programkodeanordning for å representere den første overflaten ved flere oppløsningsnivåer hvor overflaterepresentasjonen tillater overflaten å adderes til modellen ved å benytte ISP-konstruksjon; en datamaskinlesbar programkodeanordning for å representere hver overflate av modellen ved minst ett oppløsningsnivå hvor representasjonen tillater ISP-konstruksjon av modellen; en datamaskinlesbar programkodeanordning for å benytte irregulær rominndeling for interaktivt å bygge modellen ved å benytte overflaterepresentasjonen til den første overflaten, hvor modellen er en ISP-modell; en datamaskinlesbar programkodeanordning for å oppdatere overflaterepresentasjonen til minst én overflate av ISP-modellen etter irregulær rominndeling av ISP-modellen; en datamaskinlesbar programkodeanordning for å få en datamaskin til å bestemme ved å benytte nevnte overflaterepresentasjon for den første overflaten, mens ISP-modellen bygges, gjengivelsesoppløsningen for en del av den første overflate basert på en avkortet betraktningskjegle hvorfra den første overflate skal betraktes; og en datamaskinlesbar programkodeanordning for å få en datamaskin til å gjengi delen av den første overflate ved å benytte nevnte overflaterepresentasjon for den første overflaten, på utmatingsanordningen ved å benytte gjengivelses-oppløsningen mens ISP-modellen bygges.
39. Gjenstand ifølge krav 38, hvor datamaskin-programkoden for representasjon av en første overflate videre er karakterisert ved at den første overflate omfatter ett eller flere toppunkter og én eller flere kanter, og ved at den datamaskinlesbare programkodeanordning for å få datamaskinen til å bestemme, omfatter en datamaskinlesbar programkodeanordning for å få en datamaskin til å velge, basert på den avkortede betraktningskjegle, de toppunkter som skal gjengis blant det ene eller de flere toppunkter; en datamaskinlesbar programkodeanordning for å få en datamaskin til å velge, basert på den avkortede betraktningskjegle, de kanter som skal gjengis blant den ene eller de flere kanter; og en datamaskinlesbar programkodeanordning for å få en datamaskin til å tessellere de toppunkter som skal gjengis og de kanter som skal gjengis.
40. Gjenstand ifølge krav 39, karakterisert ved en datamaskinlesbar programkodeanordning for å få en datamaskin til å inndele overflaten i ni noder ved oppløsningsnivå-i ved å bruke et sett med grenser for nivå-i; en datamaskinlesbar programkodeanordning for å få en datamaskin til å inndele overflaten i n^ noder ved oppløsningsnivå-i+1 ved å bruke et sett med grenser for nivå-i+1, idet oppløsningsnivå-i+1 har større oppløsning enn oppløs-ningsnivå-i; en datamaskinlesbar programkodeanordning for å få en datamaskin til å tilordne hver node ved nivå-i+1 med en unik node ved nivå-i; en datamaskinlesbar programkodeanordning for å få en datamaskin til å tilordne med hver node ved nivå-i, de noder ved nivå-i+1 som er tilordnet noden; og hver node er tilordnet et grenseobjekt, hvor grenseobjektet rommessig avgrenser dets tilordnede node.
41. Gjenstand ifølge krav 40, karakterisert ved at den datamaskinlesbare programkodeanordning for å få en datamaskin til å velge toppunktene som skal gjengis, omfatter en datamaskinlesbar programkodeanordning for å få en datamaskin til å velge en nodefront blant nodene og samle toppunktene fra nodefronten.
42. Gjenstand ifølge krav 41, karakterisert ved at den datamaskinlesbare programkodeanordning for å få en datamaskin til å velge nodefronten, omfatter en datamaskinlesbar programkodeanordning for å få en datamaskin til å frasortere de noder som er utenfor en avkortet betraktningskjegle, idet den avkortede betraktningskjegle blir bestemt av den avkortede betraktningskjegle hvorfra overflaten skal betraktes.
43. Gjenstand ifølge krav 41, karakterisert ved at den datamaskinlesbare programkodeanordning for å få en datamaskin til å velge nodefronten, omfatter en datamaskinlesbar programkodeanordning for å få en datamaskin til å velge noder blant de noder som har grenseobjekter som skjærer den avkortede betraktningskjegle.
44. Gjenstand ifølge krav 41, karakterisert ved at den datamaskinlesbare programkodeanordning for å få en datamaskin til å velge, omfatter en datamaskinlesbar programkodeanordning for å en datamaskin til å projisere en node ved nivå-i på en skjerm; at projeksjonen av noden ved nivå-i på skjermen har et areal; en datamaskinlesbar programkodeanordning for å få en datamaskin til å til-føye noden ved nivå-i til nodefronten hvis arealet av projeksjonen er mindre enn en forutbestemt minsteoppløsning; en datamaskinlesbar programkodeanordning for å få en datamaskin til å til-føye noden ved nivå-i til nodefronten hvis det ikke er noen noder ved nivå-i+1 tilordnet noden ved nivå-i; og en datamaskinlesbar programkodeanordning for å få en datamaskin til å betrakte de noder ved nivå-i+1 som er tilordnet noden ved nivå-i for tnnbefattelse i nodefronten hvis arealet av projeksjonen av noden ved nivå-i er større enn en forutbestemt minste oppløsning.
45. Gjenstand ifølge krav 44, karakterisert ved at grenseobjektet for en node ved nivå-i er en kule; at noden ved nivå-i blir tilføyd nodefronten hvis følgende ligning er tilfredsstilt: hvor K er en konstant beregnet fra den avkortede betraktningskjegle; og D er avstanden fra midten av grenseobjektet for noden ved nivå-i til et betraktningspunkt tilordnet den avkortede betraktningskjegle.
46. Gjenstand ifølge krav 39, karakterisert ved en datamaskinlesbar programkodeanordning for å få en datamaskin til å fjerne toppunkter som ikke lenger skal gjengis, fra listen over toppunkter som skal gjengis, og å addere toppunkter til listen over toppunkter som skal gjengis, når betraktningskjeglen blir endret; en datamaskinlesbar programkodeanordning for å få en datamaskin til å fjerne tesselleringen fra en del av overflaten som ikke lenger skal gjengis, innbefattende toppunkter som ikke lenger skal gjengis, ved å bruke dekremental tessellering; og en datamaskinlesbar programkodeanordning for å få en datamaskin til å tessellere en tilføyd del av den første overflaten, innbefattende de tilføyde topp-punkter, ved å bruke inkremental tessellering.
47. Gjenstand ifølge krav 39, karakterisert ved at den første overflaten omfatter én eller flere celler og et todimensjonalt kart, idet det todimensjonale kart omfatter alle toppunktene i overflaten, det todimensjonale kart har et domene og et område, og ved at den datamaskinlesbare programvareanordning for å få en datamaskin til å tessellere, omfatter en datamaskinlesbar programkodeanordning for å få en datamaskin til å tessellere et delsett med toppunkter i domenet på det todimensjonale kart; og en datamaskinlesbar programkodeanordning for å få en datamaskin til å lage et triangelmaskenett ved å bruke områdeverdiene for delsettet med toppunkter og tesselleringen av domenet.
48. Gjenstand ifølge krav 47, karakterisert ved at tesselleringen av delsettet med toppunkter i domenet på det todimensjonale kart, innbefatter en valgt samling av kanter.
49. Gjenstand ifølge krav 39, karakterisert ved at den første overflaten omfatter én eller flere 2-celler, én eller flere 1-celler som utgjør grensene til 2-cellene, og én eller flere 0-celler som utgjør grensene til 1 -cellene, og ved at den datamaskinlesbare programkodeanordning for å få en datamaskin til å gjengi, omfatter en datamaskinlesbar programkodeanordning for å få en datamaskin til å desimere 1-cellene; en datamaskinlesbar programkodeanordning for å få en datamaskin til å identifisere de desimerte 1-celler som utgjør grensen til en 2-celle; en datamaskinlesbar programkodeanordning for å en datamaskin til å detektere en skjæring mellom de 1-celler som utgjør grensen til 2-cellen; og en datamaskinlesbar programkodeanordning for å få en datamaskin til å fjerne skjæringen.
50. Gjenstand ifølge krav 38, karakterisert ved at den avkortede betraktningskjegle er relatert til en kameraposisjon, at kameraposisjonen har en historie, at kameraet har en aktuell fremtidig posisjon ved et fremtidig tidspunkt, idet gjenstanden videre omfatter en datamaskinlesbar programkodeanordning for å få en datamaskin til å forutsi, forut for det fremtidige tidspunkt, kameraposisjonen ved det fremtidige tidspunkt basert på kameraposisjonens historie; en datamaskinlesbar programkodeanordning for å en datamaskin til å beregne, forut for det fremtidige tidspunkt, den fremtidige del av den første overflate som skal gjengis ved det fremtidige tidspunkt; en datamaskinlesbar programkodeanordning for å få en datamaskin til å bestemme, forut for det fremtidige tidspunkt, den fremtidige gjengivelsesoppløs-ning for den fremtidige del basert på en avkortet betraktningskjegle hvorfra den første overflate skal betraktes ved det fremtidige tidspunkt; og gjengivelse på utmatingsanordningen, når det fremtidige tidspunkt ankommer, av den fremtidige del av den første overflate ved å bruke den fremtidige gjen-givelsesoppløsning hvis den forutsagte, fremtidige kameraposisjon hovedsakelig stemmer med den aktuelle, fremtidige kameraposisjon.
51. Gjenstand ifølge krav 38, karakterisert ved at den har ett eller flere ytelseskriterier og ett eller flere kvalitetskriterier, idet den videre omfatter en datamaskinlesbar programkodeanordning for å få en datamaskin til å tillate en bruker å justere én eller flere parametere, hvor justeringen av minst én av de ene eller flere parametere resulterer i et kompromiss mellom minst ett ytelseskriterium og minst ett kvalitetskriterium.
52. Gjenstand ifølge krav 38, karakterisert ved en datamaskinlesbar programkodeanordning for å få en datamaskin til å gjengi på utmatingsanordningen, ved å bruke gjengivelsesoppløsningen, en representasjon av en materialegenskap tilknyttet den gjengitte del av den første overflate.
53. Gjenstand for fremstilling, karakterisert ved en datamaskinlesbar programkodeanordning for å representere den første overflaten ved flere oppløsningsnivåer hvor overflaterepresentasjonen tillater overflaten å adderes til en modell ved å benytte irregulær rominndeling; en datamaskinlesbar programkodeanordning for å representere hver overflate av modellen ved minst ett oppløsningsnivå hvor representasjonen tillater overflater å adderes til modellen ved å benytte irregulær rominndeling; en datamaskinlesbar programkodeanordning for å benytte irregulær rominndeling for å bygge modellen; en datamaskinlesbar programkodeanordning for å oppdatere overflaterepresentasjonen til minst én overflate av modellen etter irregulær rominndeling; et medium som kan benyttes av en datamaskin med en datamaskinlesbar kodeanordning innebygd for å tilveiebringe visualisering av geologiske data som representerer geovitenskapelige modeller som omfatter karakteristikker til et geologisk område, idet den geovitenskapelige modell omfatter ett eller flere geometriobjekter, og der den datamaskinlesbare kodeanordning i nevnte gjenstand for fremstilling omfatter: en datamaskinlesbar programkodeanordning for å få en datamaskin til adaptivt å visualisere de geologiske data i den geovitenskapelige modell ved å visualisere den første overflaten og modellen før klassifisering av overflaten inn i modellen og visualisering av modellen etter klassifisering av overflaten inn i modellen; og å fremvise overflaten på en utmatingsanordning.
54. Fremgangsmåte for interaktiv bygging og samtidig visualisering av en modell som omfatter en eller flere overflater, idet fremgangsmåten implementeres i en programmert datamaskin som omfatter en prosessor, et datalagringssystem, minst én innmatingsanordning og minst én utmatingsanordning, og der fremgangsmåte og modellen lagres på et datamaskinlesbart medium, idet fremgangsmåten er karakterisert ved å bygge en representasjon av én av de én eller flere overflater hvor representasjonen er fleroppløsning og tillater bruk av ISP-konstruksjon av modellen; å bygge modellen ved å benytte irregulær rominndeling; å generere en grafikkmodell basert på fleroppløsnings-overflaterepresentasjonen; å gjengi grafikkmodellen mens modellen bygges; og å fremvise grafikkmodellen på en utmatingsanordning.
55. Fremgangsmåte for interaktiv bygging og samtidig visualisering av geologiske data som representerer geovitenskapelig modell av karakteristikker til et geologisk område, idet den geovitenskapelige modell omfatter ett eller flere geometriobjekter, og der fremgangsmåten implementeres i en programmert datamaskin som omfatter en prosessor, et datalagringssystem, minst én innmatingsanordning og minst én utmatingsanordning, og der fremgangsmåte og dataene lagres på et datamaskinlesbart medium, idet fremgangsmåten er karakterisert ved å representere en første overflate ved flere oppløsningsnivåer hvor representasjonen tillater ISP-konstruksjon av modellen; å representere hver overflate av modellen ved minst ett oppløsningsnivå hvor representasjonen tillater ISP-konstruksjon av modellen; å benytte nevnte overflaterepresentasjon av den første overflaten til å: interaktivt bygge modellen ved å benytte irregulær rominndeling for å legge til den første overflaten til modellen; å adaptivt visualisere de geologiske data i den geovitenskapelige modell ved å visualisere den første overflaten og modellen uavhengig av hverandre før den første overflaten legges til modellen og visualisering av modellen, inkludert oveflaten, etter tillegging av overflaten til modellen; og å fremvise modellen på en utmatingsanordning.
NO20013406A 1999-01-12 2001-07-10 Skal±rbar visualisering for interaktiv geometrimodellering NO318160B1 (no)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/228,714 US6373489B1 (en) 1999-01-12 1999-01-12 Scalable visualization for interactive geometry modeling
PCT/US2000/000066 WO2000042576A2 (en) 1999-01-12 2000-01-04 Scalable visualization for interactive geometry modeling

Publications (3)

Publication Number Publication Date
NO20013406D0 NO20013406D0 (no) 2001-07-10
NO20013406L NO20013406L (no) 2001-07-10
NO318160B1 true NO318160B1 (no) 2005-02-07

Family

ID=22858305

Family Applications (1)

Application Number Title Priority Date Filing Date
NO20013406A NO318160B1 (no) 1999-01-12 2001-07-10 Skal±rbar visualisering for interaktiv geometrimodellering

Country Status (6)

Country Link
US (1) US6373489B1 (no)
AU (1) AU777896B2 (no)
CA (1) CA2352176C (no)
GB (1) GB2363305B (no)
NO (1) NO318160B1 (no)
WO (1) WO2000042576A2 (no)

Families Citing this family (100)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7170511B2 (en) 1999-09-24 2007-01-30 Sun Microsystems, Inc. Creating a parallel structure for scene-based rendering
US6765571B2 (en) 1999-09-24 2004-07-20 Sun Microsystems, Inc. Using a master controller to manage threads and resources for scene-based rendering
US6734852B2 (en) 1999-09-24 2004-05-11 Sun Microsystems, Inc. Using rendering molecules to manage scene-based rendering
US7061486B2 (en) 1999-09-24 2006-06-13 Sun Microsystems, Inc. Using messaging to manage scene-based rendering
US6873432B1 (en) * 1999-11-30 2005-03-29 Xerox Corporation Method and apparatus for representing color space transformations with a piecewise homeomorphism
US6714319B1 (en) 1999-12-03 2004-03-30 Xerox Corporation On-line piecewise homeomorphism model prediction, control and calibration system for a dynamically varying color marking device
US6928399B1 (en) * 1999-12-03 2005-08-09 Exxonmobil Upstream Research Company Method and program for simulating a physical system using object-oriented programming
US6771841B1 (en) * 1999-12-29 2004-08-03 Intel Corporation Determining a bounding shape for a collection of points
US6910001B2 (en) * 2000-03-22 2005-06-21 Schlumberger Technology Corp. Distributed multiresolution geometry modeling system and method
GB0010685D0 (en) 2000-05-03 2000-06-28 Koninkl Philips Electronics Nv Autostereoscopic display driver
US6995768B2 (en) * 2000-05-10 2006-02-07 Cognos Incorporated Interactive business data visualization system
JP2002008060A (ja) * 2000-06-23 2002-01-11 Hitachi Ltd データ処理方法、記録媒体及びデータ処理装置
US6707452B1 (en) * 2000-07-19 2004-03-16 Pixar Method and apparatus for surface approximation without cracks
US7274368B1 (en) 2000-07-31 2007-09-25 Silicon Graphics, Inc. System method and computer program product for remote graphics processing
US6801197B2 (en) * 2000-09-08 2004-10-05 Landmark Graphics Corporation System and method for attaching drilling information to three-dimensional visualizations of earth models
US8224783B1 (en) * 2000-09-26 2012-07-17 Conocophillips Company Information management system
EP1332474A1 (en) * 2000-11-07 2003-08-06 Holographic Imaging LLC Improved three dimensional display
US7139794B2 (en) * 2000-12-27 2006-11-21 3-D-V-U Israel (2000) Ltd. System and methods for network image delivery with dynamic viewing frustum optimized for limited bandwidth communication channels
US6873342B2 (en) * 2001-04-12 2005-03-29 Mitsubishi Electric Research Laboratories, Inc. Method for generating detail directed visibility elements for a graphics model
EP1628265A3 (en) * 2001-07-31 2006-05-10 PRAD Research and Development N.V. Construction and maintenance of scenegraphs for interactive feature-based geoscience graphical modeling
FR2833384B1 (fr) 2001-12-10 2004-04-02 Tsurf Procede, dispositif et produit programme de modelisation tridimensionnelle d'un volume geologique
US6747650B2 (en) * 2002-04-22 2004-06-08 Battelle Memorial Institute Animation techniques to visualize data
US7439982B2 (en) * 2002-05-31 2008-10-21 Envivio, Inc. Optimized scene graph change-based mixed media rendering
US6787511B2 (en) 2002-08-14 2004-09-07 Unilever Home & Personal Care Usa Division Of Conopco, Inc. Biphasic composition induced by polydextrose
US7515156B2 (en) * 2003-01-08 2009-04-07 Hrl Laboratories, Llc Method and apparatus for parallel speculative rendering of synthetic images
US7366736B1 (en) * 2003-05-19 2008-04-29 Diamond Visionics L.L.C. Method and system for generating real-time simulator database
US7075532B2 (en) * 2003-05-23 2006-07-11 International Business Machines Corporation Robust tetrahedralization and triangulation method with applications in VLSI layout design and manufacturability
US20050046645A1 (en) * 2003-07-24 2005-03-03 Breton Pierre Felix Autoscaling
US20070040832A1 (en) * 2003-07-31 2007-02-22 Tan Tiow S Trapezoidal shadow maps
JP2005100176A (ja) * 2003-09-25 2005-04-14 Sony Corp 画像処理装置およびその方法
US7136067B2 (en) * 2004-01-26 2006-11-14 Microsoft Corporation Using externally parameterizeable constraints in a font-hinting language to synthesize font variants
US7292247B2 (en) * 2004-01-26 2007-11-06 Microsoft Corporation Dynamically determining directions of freedom for control points used to represent graphical objects
US7236174B2 (en) * 2004-01-26 2007-06-26 Microsoft Corporation Adaptively filtering outlines of typographic characters to simplify representative control data
US7187382B2 (en) 2004-01-26 2007-03-06 Microsoft Corporation Iteratively solving constraints in a font-hinting language
JP4125251B2 (ja) * 2004-02-13 2008-07-30 キヤノン株式会社 情報処理方法および装置
US7800614B2 (en) * 2004-02-17 2010-09-21 Oracle America, Inc. Efficient communication in a client-server scene graph system
US7672818B2 (en) * 2004-06-07 2010-03-02 Exxonmobil Upstream Research Company Method for solving implicit reservoir simulation matrix equation
CN100394449C (zh) * 2004-06-30 2008-06-11 南京大学 基于gis与虚拟现实的实时三维地质建模的方法
WO2006004877A2 (en) * 2004-06-30 2006-01-12 D.E. Shaw Research And Development, Llc Ewald summation method for molecular simulation
US7623734B2 (en) * 2004-09-30 2009-11-24 Microsoft Corporation Method and system for automatically inscribing noisy objects in scanned image data within a minimum area rectangle
US7617082B2 (en) * 2004-11-29 2009-11-10 Chevron U.S.A. Inc. Method, system and program storage device for simulating fluid flow in a physical system using a dynamic composition based extensible object-oriented architecture
WO2006111976A2 (en) * 2005-04-18 2006-10-26 Technion Research & Development Foundation Ltd. Automatic remeshing by mapping a 2d grid on 3d genus-g meshes based on topological analysis
EP2447852A3 (en) 2005-04-19 2015-01-07 D.E. Shaw Research, LLC Scalable method for the evaluation of distance-limited pairwise particle interactions
US8142703B2 (en) * 2005-10-05 2012-03-27 Molecular Imprints, Inc. Imprint lithography method
US8400444B2 (en) 2005-12-08 2013-03-19 Agency 9AB Method to render a root-less scene graph with a user controlled order of rendering
US7561156B2 (en) * 2006-02-08 2009-07-14 INOVO Limited Adaptive quadtree-based scalable surface rendering
US8077177B2 (en) * 2006-12-15 2011-12-13 Moore Jason A Method for loading and displaying gridded data by determining the usefulness of a particular vertex
US20080297503A1 (en) * 2007-05-30 2008-12-04 John Dickinson System and method for reconstructing a 3D solid model from a 2D line drawing
CN101809627A (zh) * 2007-06-01 2010-08-18 埃克森美孚上游研究公司 平面中约束沃罗努网格的生成
EP2223157A4 (en) 2007-12-13 2016-12-07 Exxonmobil Upstream Res Co ITERATIVE TANK SURVEILLANCE
WO2009075945A1 (en) 2007-12-13 2009-06-18 Exxonmobil Upstream Research Company Parallel adaptive data partitioning on a reservoir simulation using an unstructured grid
US8255816B2 (en) * 2008-01-25 2012-08-28 Schlumberger Technology Corporation Modifying a magnified field model
US8194193B2 (en) * 2008-02-08 2012-06-05 The Boeing Company Method and apparatus for a wide field of view display
US8190414B2 (en) * 2008-03-26 2012-05-29 Exxonmobil Upstream Research Company Modeling of hydrocarbon reservoirs containing subsurface features
AU2009238481B2 (en) * 2008-04-22 2014-01-30 Exxonmobil Upstream Research Company Functional-based knowledge analysis in a 2D and 3D visual environment
US20100049477A1 (en) * 2008-08-19 2010-02-25 Sivan Design D.S Ltd Civil engineering simulation using quadtree data structures
US20100082509A1 (en) * 2008-09-30 2010-04-01 Ilya Mishev Self-Adapting Iterative Solver
CN102138146A (zh) * 2008-09-30 2011-07-27 埃克森美孚上游研究公司 使用并行多级不完全因式分解求解储层模拟矩阵方程的方法
WO2010039317A1 (en) * 2008-10-01 2010-04-08 Exxonmobil Upstream Research Company Robust well trajectory planning
AU2009311619B2 (en) * 2008-11-06 2015-10-01 Exxonmobil Upstream Research Company System and method for planning a drilling operation
CN101582173B (zh) * 2009-06-24 2012-07-11 中国石油天然气集团公司 复杂地质构造块状模型构建方法
US8687044B2 (en) 2010-02-02 2014-04-01 Microsoft Corporation Depth camera compatibility
US8731872B2 (en) 2010-03-08 2014-05-20 Exxonmobil Upstream Research Company System and method for providing data corresponding to physical objects
US8731887B2 (en) 2010-04-12 2014-05-20 Exxonmobile Upstream Research Company System and method for obtaining a model of data describing a physical structure
US8727017B2 (en) 2010-04-22 2014-05-20 Exxonmobil Upstream Research Company System and method for obtaining data on an unstructured grid
US8731873B2 (en) 2010-04-26 2014-05-20 Exxonmobil Upstream Research Company System and method for providing data corresponding to physical objects
WO2012018428A1 (en) 2010-08-04 2012-02-09 Exxonmobil Upstream Research Company System and method for summarizing data on an unstructured grid
US8731875B2 (en) 2010-08-13 2014-05-20 Exxonmobil Upstream Research Company System and method for providing data corresponding to physical objects
US9593558B2 (en) 2010-08-24 2017-03-14 Exxonmobil Upstream Research Company System and method for planning a well path
US9165403B2 (en) * 2011-01-14 2015-10-20 Intel Corporation Planetary scale object rendering
CA2823017A1 (en) 2011-01-26 2012-08-02 Exxonmobil Upstream Research Company Method of reservoir compartment analysis using topological structure in 3d earth model
AU2011360212B2 (en) 2011-02-21 2017-02-02 Exxonmobil Upstream Research Company Reservoir connectivity analysis in a 3D earth model
US9223594B2 (en) 2011-07-01 2015-12-29 Exxonmobil Upstream Research Company Plug-in installer framework
US20130278608A1 (en) * 2011-11-04 2013-10-24 Dmitry Ragozin Plant Simulation for Graphics Engines
US8831366B1 (en) * 2011-11-11 2014-09-09 Google Inc. Encoding and compressing three-dimensional (3D) object data models
US9196087B2 (en) * 2012-04-20 2015-11-24 Here Global B.V. Method and apparatus for presenting geo-traces using a reduced set of points based on an available display area
WO2013169429A1 (en) 2012-05-08 2013-11-14 Exxonmobile Upstream Research Company Canvas control for 3d data volume processing
GB201208088D0 (en) * 2012-05-09 2012-06-20 Ncam Sollutions Ltd Ncam
US9626792B2 (en) * 2012-10-16 2017-04-18 Adobe Systems Incorporated Rendering an infinite plane
US10311169B1 (en) * 2012-11-09 2019-06-04 Msc.Software Corporation Interactive edge manipulation systems and methods
US9470967B1 (en) 2013-06-04 2016-10-18 The Boeing Company Motion-based system using a constant vertical resolution toroidal display
US9110358B1 (en) 2013-06-04 2015-08-18 The Boeing Company Method for creating and a system for using a constant vertical resolution toroidal display
WO2014200685A2 (en) 2013-06-10 2014-12-18 Exxonmobil Upstream Research Company Interactively planning a well site
US9727667B2 (en) 2013-06-10 2017-08-08 Honeywell International Inc. Generating a three dimensional building management system
US9864098B2 (en) 2013-09-30 2018-01-09 Exxonmobil Upstream Research Company Method and system of interactive drill center and well planning evaluation and optimization
US9690626B2 (en) * 2014-06-27 2017-06-27 Vmware, Inc. Processing workloads in single-threaded environments
WO2016077823A2 (en) * 2014-11-14 2016-05-19 D. E. Shaw Research, Llc Suppressing interaction between bonded particles
US9654753B1 (en) * 2015-09-01 2017-05-16 Amazon Technologies, Inc. Video stream processing
CN106846471A (zh) * 2015-12-04 2017-06-13 中国石油化工股份有限公司 一种油气模拟属性的镂空可视化显示方法
US10996357B2 (en) * 2016-02-10 2021-05-04 Schlumberger Technology Corporation Downhole interpretation techniques using borehole dips
JP6599569B2 (ja) 2016-05-24 2019-10-30 イー インク コーポレイション ディスプレイ上に画像をレンダリングする方法、ディスプレイデバイスおよびコンピューティングデバイスを備える装置、ならびに、非一過性コンピュータ記憶媒体
US11468263B1 (en) * 2017-11-21 2022-10-11 State Farm Mutual Automobile Insurance Company Technology for building and managing data models
US10573019B1 (en) 2018-09-25 2020-02-25 Ebay Inc. Augmented reality digital content search and sizing techniques
CN111598080B (zh) * 2020-03-31 2023-08-25 之江实验室 基于凸多面体分段线性分类的二叉划分树车牌识别方法
CN111899323B (zh) * 2020-06-30 2023-03-24 上海孪数科技有限公司 三维地球的绘制方法及装置
CN113420377A (zh) * 2021-06-24 2021-09-21 树根互联股份有限公司 一种工业产品分层展示交互方法、装置、电子设备及介质
CN113426131B (zh) * 2021-07-02 2023-06-30 腾讯科技(成都)有限公司 虚拟场景的画面生成方法、装置、计算机设备及存储介质
CN115690292B (zh) * 2023-01-03 2023-03-21 华夏天信物联科技有限公司 一种工作面地层建模渲染优化方法及系统
US11704769B1 (en) * 2023-01-25 2023-07-18 Illuscio, Inc. Systems and methods for image regularization based on a curve derived from the image data
CN116894282B (zh) * 2023-09-07 2023-11-24 中国空气动力研究与发展中心计算空气动力研究所 空间点集与多连通网格区域拓扑关系的识别方法及系统

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0447629A3 (en) 1990-03-19 1993-01-13 International Business Machines Corporation A compliant sectioning facility for interactive sectioning of solid geometric objects using a graphics processor
JPH0789382B2 (ja) 1991-03-14 1995-09-27 インターナショナル・ビジネス・マシーンズ・コーポレイション 形状モデルを生成する方法及び装置
US5359526A (en) 1993-02-04 1994-10-25 Hughes Training, Inc. Terrain and culture generation system and method
AU2393595A (en) 1994-04-29 1995-11-29 Geographix, Inc. Graphics system using parametric grid paradigm
US5963209A (en) * 1996-01-11 1999-10-05 Microsoft Corporation Encoding and progressive transmission of progressive meshes
US6414684B1 (en) 1996-04-25 2002-07-02 Matsushita Electric Industrial Co., Ltd. Method for communicating and generating computer graphics animation data, and recording media
US6128577A (en) 1996-12-19 2000-10-03 Schlumberger Technology Corporation Modeling geological structures and properties
US6108006A (en) * 1997-04-03 2000-08-22 Microsoft Corporation Method and system for view-dependent refinement of progressive meshes
US6313837B1 (en) * 1998-09-29 2001-11-06 Schlumberger Technology Corporation Modeling at more than one level of resolution

Also Published As

Publication number Publication date
US6373489B1 (en) 2002-04-16
WO2000042576A2 (en) 2000-07-20
AU777896B2 (en) 2004-11-04
GB2363305A (en) 2001-12-12
NO20013406D0 (no) 2001-07-10
WO2000042576A3 (en) 2000-11-02
GB2363305B (en) 2003-09-03
CA2352176A1 (en) 2000-07-20
AU2403700A (en) 2000-08-01
CA2352176C (en) 2009-10-20
NO20013406L (no) 2001-07-10
GB0116422D0 (en) 2001-08-29

Similar Documents

Publication Publication Date Title
NO318160B1 (no) Skal±rbar visualisering for interaktiv geometrimodellering
Mariethoz et al. Bridges between multiple-point geostatistics and texture synthesis: Review and guidelines for future research
NO318157B1 (no) Modellering ved mer enn ett opplosningsniva
US6980935B2 (en) Method, apparatus and system for constructing and maintaining scenegraphs for interactive feature-based geoscience geometric modeling
Aliaga et al. Interactive example-based urban layout synthesis
US6483518B1 (en) Representing a color gamut with a hierarchical distance field
EP1074946B1 (en) Detail-directed hierarchical distance fields for object modelling
EP1074947B1 (en) Sculpturing objects using detail-directed hierarchical distance fields
Natali et al. Modeling Terrains and Subsurface Geology.
US20130332125A1 (en) Earth model
Cignoni et al. MagicSphere: an insight tool for 3D data visualization
Barthe et al. Two‐dimensional potential fields for advanced implicit modeling operators
Ogayar et al. Point in solid strategies
Ray et al. Hex-dominant meshing: mind the gap!
Zehner Constructing geometric models of the subsurface for finite element simulation
Nguyen-Gia et al. A comparative survey of 3D GIS models
Neuhauser et al. Interactive focus+ context rendering for hexahedral mesh inspection
Olsen et al. Hinged, pseudo-grid triangulation method for long, near-linear cliff analyses
Patel et al. Modeling terrains and subsurface geology
Ibrahim et al. Screen-space normal distribution function caching for consistent multi-resolution rendering of large particle data
Fayolle et al. Optimized surface discretization of functionally defined multi-material objects
Argudo et al. Interactive inspection of complex multi-object industrial assemblies
Bernardin et al. Real-time terrain mapping
Westerteiger Virtual Reality Methods for Research in the Geosciences
Mello et al. A topologically-based framework for three-dimensional basin modeling

Legal Events

Date Code Title Description
MM1K Lapsed by not paying the annual fees