Loading…
Tilbage

Profilbillede

Ugyldige bygningsgeometrier i DAR.Bygning

Flemming Nymann Larsen

Hej

Vi har etableret en skyggekopi af DAR og har i den sammenhæng udført kvalitetskontrol af data.

d.d. har vi 3 fejl på bygningsgeometrier. Jeg har testet med SQL Server funktionen STIsValid().

Fejlen er generende da diverse udtræk af geometrier giver fejl pga af disse ugyldige data.

--- Ugyldige bygningsgeometrier:

SELECT id,bygningstype,synlig FROM [DAR].[dbo].[bygning] WHERE [bygninggeometri].STIsValid()=0

Resultat:

id             bygningstype synlig
----------- --------------  ------
1107933765  Bygning          1
1201298576  Bygning          1
1202755310  Bygning          1

 

Har også tjekket "Jordstykke" og "adgangsadresse" og her er der ingen ugyldige.

 

Med venlig hilsen

Flemming

Hej Flemming,

Jeg har checket bygningsgeometrierne igennem i vores ende med st_isvalid funktionen i PostGIS, og den finder ikke nogen problemer.

Kan du uddybe, hvad der mon er galt med de tre bygningspolygoner?

Mvh.

Anders

Vi har tidligere undersøgt og fixet en lignende fejl for bygningspolygonet med id=1201298576

 

POLYGON ((643198.14 6166520.5, 643198.14 6166520.5, 643198.14 6166520.5, 643193.96 6166521.03, 643193.71 6166519.06, 643197.89 6166518.52, 643198.14 6166520.5, 643198.14 6166520.5))

 

Denne Polygon havde ”repeated points” (den var valid i JTS 1.14.0 men ikke i SQL Server)

 

Den tilrettede (som SQL Server nu burde anse som valid) polygon ser således ud:

 

POLYGON ((643198.14 6166520.5, 643197.89 6166518.52, 643193.71 6166519.06, 643193.96 6166521.03, 643198.14 6166520.5))

 

Jeg har kørt følgende SQL at rette fejlen:

UPDATE [DAR].[dbo].[bygning] SET geometri=STGeometryFromText(’POLYGON ((643198.14 6166520.5, 643197.89 6166518.52, 643193.71 6166519.06, 643193.96 6166521.03, 643198.14 6166520.5))’,25832) where id=1201298576

 

Håber det kan hjælpe lidt på vej med at finde fejlen !

 

hilsen

Flemming

 

Hej Flemming,

Tak for dit input. Jeg har fundet fejlen.

Det er sådan, at bygningspolygoner er 3-dimensionelle. Når man angiver format=geojson, så modtager man kun de 2 koordinater. Dette sker ved at vi fjerner z-koordinatet.

Problemet er så, at der er to punkter efter hinanden i bygningsgeometrien, som har samme X og Y koordinat, men forskellige Z-koordinater. Ved at fjerne Z-koordinatet kommer de to punkter til at være identiske. Det giver en ugyldig geometri ("repeated points").

Vi vil lave en løsning på problemet, men vi kan p.t. ikke give en tidshorisont for dette. 

Hej Anders,

Du skriver i dit senere kommentar, at fejlen forekommer pga. manglende Z-koordinat, men jeg kan se at fælles for de tre bygninger er, at der er en koordinat, der har sneget sig ind, som har samme X-, Y-, og Z-koordinat ligesom start og slut koordinaterne for polygonet.

https://dawa.aws.dk/replikering/udtraek?entitet=bygning&id=1107933765:

Har 3 gange [553798.29, 6235228.58, 70.88] koordinat.

https://dawa.aws.dk/replikering/udtraek?entitet=bygning&id=1201298576:

Har 3 gange [643198.14, 6166520.5, 25.9] koordinat.

https://dawa.aws.dk/replikering/udtraek?entitet=bygning&id=1202755310:

Har 3 gange [529427.33, 6327419.13, -999] koordinat. (Bemærk også Z-koordinats værdi.)

Er det så ikke de ektra koordinater, der gør at geometrier er ugyldige?

 

Mvh.

Valdas

Mange tak til Flemming og Valdas for fejlmeldingen.

Fejlen er nu rettet i GeoDanmark og vil snart blive udstillet i DAWA.

Mvh.
Finn