Vanovis Platform Arkitektur

Fra Portal til 3D Engine

Teknisk gennemgang

Agenda

  • Overordnet arkitektur
  • Modul-struktur
  • Dataflow og async jobs
  • 3D pipeline
  • Hvorfor systemet er stærkt bygget

Systemets Fundament

Systemet er bygget i lag.

Portal → Template → Moduler → Database

Det betyder:

  • Klar ansvarsfordeling
  • Genbrug af funktionalitet
  • Skalerbar udvikling

Arkitektur – Lagdelt Struktur

Fundament

  • PostGIS databaser
  • Geodata
  • Projekter
  • Roller

Applikationslag

  • Portal
  • Template_GIS
  • Moduler

Login & Domænearkitektur

  • Ekstern autentifikation (Keycloak)
  • Brugere tilknyttes domæner
  • Første bruger = admin
  • Rollebaseret adgang

Systemet ved:

  • Hvem du er
  • Hvilket firma du tilhører
  • Hvad du må se

Rolle- og Adgangsmodel

  • portal_admin
  • viewer
  • Projekttilknytning
  • Modulaktivering per projekt

Adgang styres centralt – ikke i hvert modul.

Modul-arkitektur

Hvert modul består typisk af:

  • Python (backend)
  • JavaScript (frontend)
  • HTML (visning)

Men genbruger:

  • Login
  • Kortmotor
  • Database
  • Projektstruktur

Template_GIS – Fælles Motor

Template_GIS leverer:

  • Kort (MapLibre WebGL)
  • Buffer-værktøj
  • Tegneværktøj
  • Måleværktøj
  • Tile proxy
  • API-forbindelser

Moduler skal kun fokusere på deres egen logik.

Dataflow – Opret Projekt

  1. Bruger tegner område
  2. Geometri gemmes i PostGIS
  3. Projekt oprettes
  4. Async job starter
  5. SFE klippes
  6. Data bliver tilgængelig

Async Arkitektur

Tunge processer kører i baggrunden:

  • SFE klipning
  • Løbenummer generering
  • 3D generering
  • Analyser

Brugeren slipper for ventetid.

PostGIS Fundament

Databasen er ikke bare lagring.

Den håndterer:

  • Geometriske beregninger
  • Views per projekt
  • Intersects
  • Buffer
  • Transform

Logik flyttes så tæt på data som muligt.

SFE View-arkitektur

For hvert projekt genereres:

vanovis_data.projekt__sfe

Fordele:

  • Isolation per projekt
  • Hurtig opslag
  • Ingen data-kollision
  • Let oprydning

Case: Settle Modulet

Settle håndterer:

  • Midlertidig erhvervelse
  • Permanent erhvervelse
  • Varianter
  • GeoJSON generering
  • Dashboard-analyser

Alt bygget ovenpå samme fundament.

3D Pipeline – Overblik

Når 3D aktiveres:

  1. SFE polygoner hentes
  2. Bygninger hentes
  3. Højdedata downloades
  4. Skråfotos hentes
  5. Tekstur genereres
  6. Model gemmes

Automatiseret pipeline.

3D Worker – Intern Struktur

Worker håndterer:

  • Tile-beregning
  • FTP download
  • Punktcloud klipning
  • CityJSON konvertering
  • GLB konvertering
  • Teksturering

Separat fra webserveren.

Skråfoto & Teksturering

Systemet:

  • Konverterer CRS automatisk
  • Matcher vertikale referencesystemer
  • Projekterer 3D-geometri ind i foto
  • Genererer realistiske teksturer

Avanceret fotogrammetri – fuldt automatiseret.

Hvorfor Arkitekturen Er Stærk

  • Modulær
  • Rollebaseret
  • PostGIS-first
  • Asynkron behandling
  • Klar ansvarsdeling
  • Let at udvide

Skalerbarhed

Nye moduler kræver:

  • En Python-fil
  • En JS-fil
  • En HTML-fil

Ingen ændringer i fundamentet.

Teknisk Modenhed

  • Dockeriseret
  • Rollebaseret adgang
  • Async jobs
  • Geodata-standarder
  • View-isolation
  • Tile-proxy

Arkitektur på enterprise-niveau.

Konklusion

Vanovis er ikke en samling scripts.

Det er en platform.

En modulær, geospatial platform
med en stærk datamotor i bunden.