Gå til innhold

Terrengmodeller og triangulering

Når punktskyen er klargjort, kan den brukes direkte i analyser eller danne grunnlag for en overflatemodell. I mange arbeidsprosesser etableres en triangulert modell, der punktene knyttes sammen til et sammenhengende triangelnett.

Triangulering

Tradisjonelle terrengmodeller er ofte basert på 2.5D-prinsippet, der hver planposisjon bare kan ha én høydeverdi. Dette fungerer godt for vanlige terrengflater, men er ikke tilstrekkelig for geometri med:

  • overheng
  • vertikale flater
  • nisjer
  • skjæringer og bergvegger
  • deler av tunneler og konstruksjoner

Overflatemodellering utvider dette med 3D-triangulering, der trianguleringen skjer i rommet og kan gjengi mer komplekse flater. Dette er viktig når modellen skal representere faktiske overflater med større geometrisk kompleksitet enn det en vanlig terrengmodell kan håndtere.

3d triangulering av skannet punktsky

I Gemini SurfaceMaker er det støtte for to ulike 3D-trianguleringsmetoder for data i gmi-lag.

  1. 3D-triangulering
  2. Triangulering av 3D-polygoner

Den første metoden er en ren 3D-triangulering og kan brukes til alt fra skannede terrengmodeller til konstruksjoner.

Merk

Gemini Terrain+ har støtte for 2.5D-triangulering.

3D-triangulering

For å rekonstruere overflater fra punktskyer kan vi bruke en ren 3D-trianguleringsmetode. Funksjonen finner vi under Verktøy på hurtigmenyen i kartvinduet.

Det er viktig å forbehandle punktskyene før 3D-triangulering. Støy og andre unødvendige objekter bør fjernes på forhånd. Gemini Terrain har både manuelle metoder for å redigere punktskyer og automatisk metode for å fjerne støy.

Selve trianguleringen utføres normalt i to eller flere iterasjoner, men det er fullt mulig å kjøre kun 1. iterasjon hvis vi bare ønsker en kjapp og grov triangulering.

Triangulering 1. iterasjon

I første iterasjon oppgir vi en cellestørrelse for å redusere antall punkter i trianguleringen. På grunnlag av cellestørrelsen velger algoritmen et vilkårlig punkt til å representere hver celle. Hvilken cellestørrelse er det så naturlig å bruke? Dette vil jo være avhengig av innholdet i skannet. En tommelfingerregel kan være halvparten av to flater du ønsker å skille. Dersom du eksempelvis skanner begge sider av en mur som er 50 cm tykk, så bør cellestørrelse være 0.25 eller mindre. Hvis du har mange forskjellige typer områder så kan det med andre ord være fornuftig å dele opp punktskyen for å oppnå minst mulige triangelnett.

I første iterasjon har vi to tilleggsvalg som kan være nyttige. Disse er spesielt aktuelle for skanndata med skarpe kanter, eksempelvis konstruksjoner.

Det første valget er en statistisk metode der programmet plukker ut sannsynlige kantpunkter. Det er ikke alle typer skann der bruk av metoden er hensiktsmessig. En fjellskjæring er et typisk eksempel på skanndata der formen ofte gjør at vi ikke anbefaler denne metoden.

En annen mulighet er å ta med bruddlinjer i 3D-trianguleringen. Hvis utvalget også inneholder 3D-linjer blir valget for dette aktivt i dialogen. Programmet simulerer bruddlinjer med å generere tett med punkter langs linjene (punktavstand lik nøyaktigheten). Bruddlinjene kan være målt inn med tradisjonell landmåling eller digitalisert direkte i punktskyen. Merk at denne metoden må brukes med forsiktighet. Det er fort gjort å tilføre "støy" med dette valget.

Punktene fra disse tilleggsvalgene inkluderes i punktutvalget før trianguleringen i 1. iterasjon kjøres.

Triangulering 2. iterasjon

I andre trinn setter vi nøyaktigheten vi ønsker på triangelnettet. Dette gjør vi ved å oppgi en verdi for Maksimal avstand fra originale punkt. Alle punkt i den originale punktskyen med større avstand fra triangelnettet fra 1. iterasjon vil bli inkludert i punktutvalget for trianguleringen.

Denne prosessen kan vi gjenta flere ganger. Vi oppgir ikke antall iterasjoner, men legger inn et stoppkriterium. Kriteriet er en %-verdi for antall punkt lagt til sammenlignet med original punktmengde. I tillegg er maksimalt antall iterasjoner satt til 10.

Valget for å kjøre flere iterasjoner er aktuelt når vi har punktskyer med lite støy. Da vil vi kunne få en modell der ingen punkt er utenfor nøyaktighetskravet. Hvis modellen inneholder støy vil mange iterasjoner medføre at flere og flere støypunkt blir tatt med i trianguleringen.

Vi kan også huke av for å fylle hull. Denne prosessen kjøres etter siste iterasjon. Kriteriene for opsjonen er Maksimal omkrets og Maksimalt 3D-areal. Først sjekker programmet hullet sin omkrets mot oppgitt kriterium. Hvis omkretsen er mindre, sjekkes neste kriterium. Hvis også 3D-areal er mindre enn kriteriet, så fylles hullet. Begge kriteriene må med andre ord være oppfylt for at hullet skal bli fylt. To kriterier er lagt inn da kvadratiske og rektangulære hull kan ha omtrent samme areal, men store forskjeller i omkrets.

Resultat fra trianguleringen

Brukeren bestemmer selv hvor resultatet skal havne med valget for Resultatapplag. Som standard foreslår programmet aktivt lag. Det er kun applikasjonslag som er åpne for redigering som blir listet i nedtrekksmenyen.

I trianguleringen påføres egenskaper til triangelnettet:

Attributt Kode Beskrivelse
S_JOBRESULT S01 3D-triangulert Kodeverdi som angir hvordan triangelnettet er opprettet
3DTri_Cellstart Cellestørrelse for forenkling av triangelnett
3DTri_MaxDist Maks. avstand fra originale punkt (påkrevd nøyaktighet)

Eksempel på hvilken effekt noen av innstillingene har på resultatet

Cellestørrelse: 0.1

Påkrevd nøyaktighet: 0.025

Med sannsynlige kantpunkter

Med bruddlinjer

Triangulering av 3D-polygoner

Dette trianguleringsverktøyet støtter også vertikale polygoner, samt polygoner med eller uten hull. Vi kan også triangulere mange polygoner i én operasjon, og funksjonen vil slå triangelnettene sammen til ett objekt. Dersom vi i utvalget også merker et eksisterende triangelnett, så vil en kopi av dette bli slått sammen med de nye.

Funksjonen finner vi under Verktøy i det horisontale listevinduet for polygoner.

Eksempel på triangulering av 3D-polygoner

Et utgangspunkt med seks polygoner:

Gir et triangelnett med volum:

Bruk av terrengmodeller

Ferdige triangelnett og terrengmodeller kan benyttes til:

  • masseberegning
  • arealberegning
  • profilgenerering
  • geometrisk kontroll
  • visualisering
  • prosjekteringsgrunnlag
  • dokumentasjon av utførelse

Det er generelt viktig at modelltype og trianguleringsmetode velges ut fra hva modellen skal brukes til. En modell for visualisering kan ha andre krav enn en modell som skal brukes til mengdeberegning eller maskinstyring.