Skip to content

Redigere XREF-tabell

Bruk denne dialogen til å opprette eller redigere en spesifikk kryssreferanseregel i en kryssrefereransetabell. Kryssreferering kan vi bruke i flere sammenhenger, blant annet under import og eksport av data eller direkte på data i et applag.

Dialogelementer

Beskrivelse

Her gir du inn navnet til regelen.

Import / eksport

Du må velge om regelen du legger til skal gjelde for import eller eksport av data. I andre tilfeller er ikke valget aktivt.

Objekttype

Her velger du hvilke objekttyper den aktuelle beskrivelsen skal gjelde for.

Kriterier som må oppfylles

Dette tilsvarer Fra-feltet (attributt). Regelen er at dersom Fra-feltet oppfylles, så blir Til-feltet utført med valgt metode.

Vi kan bruke flere operatorer:

  • = - Fra-feltet oppfylles hvis den første verdien er lik den andre verdien
  • < - Fra-feltet oppfylles hvis den første verdien er mindre enn den andre verdien
  • > - Fra-feltet oppfylles hvis den første verdien er større enn den andre verdien
  • != - Fra-feltet oppfylles hvis den første verdien ikke er lik den andre verdien
  • % - Fra-feltet oppfylles hvis den første verdien inneholder den andre verdien. Eksempler: "abcdef" inneholder "bcd", "abcdef" inneholder "abcdef" og "abcdef" inneholder ikke "abef".

I tillegg kan man legge til ekstra attributter som må oppfylles.

Attributtverdier som skal settes

Her bestemmer du hva du skal gjøre med attributtene i Fra-feltet.

Dersom denne attributten skal ha en bestemt verdi kan dette gis inn i verdi feltet. Verdien i Fra-feltet kan inneholde *, altså et joker tegn for å ta med alle. Samtlige verdier vil da oppfylles. (OBS! Blank vil matche tom verdi). Du kan fritt skrive inn både attributter og verdier.

Vi kan vi også bruke funksjoner i Til-tilfeltet. Tilgjengelige funksjoner:

  • sqrt(x): beregn kvadratroten av x
  • power(x, y): beregn xy (x hevet til potensen av y)
  • kvadrat(x): beregn x i annen
  • sin(x): beregn sinus av x
  • cos(x): beregn cosinus til x
  • floor(x): rund x til nærmeste heltall ikke større enn x (f.eks. floor(1.7)=1, floor(5.1)=5, floor(-1.2)=-2)
  • ceil(x): rund x til nærmeste heltall ikke mindre enn x (f.eks. floor(1.7)=2, floor(5.1)=6, floor(-1.2)=-1)
  • round(x): runde x til nærmeste heltall (f.eks. round(1.7)=2, round(5.1)=5, round(-1.2)=-1)
  • log(x): beregn den naturlige (base e) logaritmen til x
  • log10(x): beregn den vanlige (grunnlag 10) logaritmen til x
  • log2(x): beregn base 2-logaritmen til x
  • min(x, y): beregn den minste verdien av x og y
  • max(x, y): beregn den største verdien av x og y

Funksjonsargumenter kan også være uttrykk, noen eksempler:
sin(maks(-1,min(x,1)): begrense argumentet som sendes til x til området [-1, 1]
round(x*100)/100: runde x til 2 desimaler

Uttrykk støtter også PI-konstanten, som evalueres til π. Noen eksempler:
• rad * PI / 180
• sin(PI / 2)

Vi kan også sette et fordelingskriterie i Til-feltet. Det vil si at data som oppfyller kravet i Fra-feltet skal havne på et gitt applag.

Verdien i Til-feltet (IKKE import) kan også inneholde attributtnavn. Disse kan enten være:

  1. S_AREA (areal, polygoner), S_LENGTH (lengde, linjer og polygoner).
    Disse variablene "trigger" og beregner arealet/lengden.
  2. Verdien av en attributt. Vi kan sette opp komplekse strenger med flere variabler kombinert med andre strenger. De må spesifiseres med %attributtnavn% dersom attributtnavnet inneholder et mellomrom.

Faste interne Gemini attributter:

S_FCODE: temakoden
S_OBJID: PunktID, LinjeID og PolygonID
S_AREA: Gir arealet av et polygon
S_LENGTH: Gir lengden til en linje

Eksempler på bruk

Eksempler Eksport

Her følger noen eksempler på hvordan du kan få med ulik informasjon ut fra Gemini til en ekstern fil.

Få med punkt ID over på SOSI-fil:

Bruk ved eksport
Objekttype: punkt
Kriterier som må oppfylles: S_OBJID = *
Attributtverdier som skal settes: GRPNR = S_OBJID

Nå kommer punktene ut i SOSI fila med ..GRPNR og henter verdien fra S_OBJID i gmi-fila. Det finnes flere ulike attributter i SOSI standarden som tilsvarer punkt ID, alle disse kan benyttes på attributt verdier som skal settes.

Få med areal ut på SOSI-fil:

Bruk ved eksport
Objekttype: polygon
Kriterier som må oppfylles: S_FCODE=4011

Attributtverdier som skal settes: AREAL=S_AREA

Nå får du en egenskap i SOSI-fila som heter ..AREAL.

Få med LinjeID ut som GID på SOSI-fil

Bruk ved eksport
Objekttype: linje og polygon
Kriterier som må oppfylles: S_OBJID = * OG S_FCODE = 4011

Attributtverdier som skal settes: GID=S_OBJID

Få med lengden ut på SOSI-fil

Bruk ved eksport
Objekttype: linje
Kriterier som må oppfylles: S_FCODE=7002

Attributtverdier som skal settes: LENGDE=S_LENGTH

Eksempler Import

Her følger noen eksempler på hvordan du kan ta med egenskaper fra ulike formater og inn i Gemini.

Få med FMIDGML fra en SOSI-fil og inn som PunktID:

Bruk ved import
Objekttype: punkt
Kriterier som må oppfylles: FMIDGML = *

Attributtverdier som skal settes: S_OBJID = FMIDGML

Få med GID fra SOSI fil som LinjeID:

Bruk ved import
Objekttype: linje og polygon
Kriterier som må oppfylles: GID = *
Attributtverdier som skal settes: S_OBJID = GID

Eksempler med verktøy for kryssreferering av attributter

Temakode til objekttype

Objekttype: punkt, linje og polygon
Kriterier som må oppfylles: S_FCODE = *

Attributtverdier som skal settes: OBJTYPE = *

Diameter i mm til Diameter i meter

Objekttype: linje
Kriterier som må oppfylles: Diameter = *

Attributtverdier som skal settes: Diameter = Diameter/1000

Fordel objekter med objekttype Kum til applag NVDB_Kum

Objekttype: punkt
Kriterier som må oppfylles: Objekttype = Kum

Huk av for Resultatapplag
Attributtverdier som skal settes: = NVDB_Kum