Skip to Content.
Sympa Menu

freegeocz - RE: [FreeGeoCZ] invalid polygon geometry

freegeocz AT fsv.cvut.cz

Předmět: Svobodná geoinformační infrastruktura

List archive

RE: [FreeGeoCZ] invalid polygon geometry


Chronological Podle vláken 
  • From: MICHÁLEK Jan Mgr. <Michalek.Jan AT uhul.cz>
  • To: Svobodná geoinformační infrastruktura <freegeocz AT fsv.cvut.cz>
  • Subject: RE: [FreeGeoCZ] invalid polygon geometry
  • Date: Tue, 20 Apr 2010 09:01:40 +0200
  • List-archive: <http://mailman.fsv.cvut.cz/pipermail/freegeocz>
  • List-id: Svobodná geoinformační infrastruktura <freegeocz.fsv.cvut.cz>

Poďval sem se do manualu a udělal bych to takhle
SELECT ST_IsValidReason(geomcol) from tbl where not ST_IsVAlid(geomcol)

-----Original Message-----
From: freegeocz-bounces AT fsv.cvut.cz [mailto:freegeocz-bounces AT fsv.cvut.cz] On
Behalf Of Dan Barta
Sent: Monday, April 19, 2010 5:11 PM
To: Svobodná geoinformační infrastruktura
Subject: [FreeGeoCZ] invalid polygon geometry

Zdravim konf,

pres shp2pgsql jsem nahrnul do Postgis polygonovy SHP.

Problem se jevil jen opticky v Postgis/Qgisu, kde pri nekterych podrobnostech
na dvou mistech zmizely vsechny prvky.

Nyni jsem se pokusil o export pgsql2shp, nebo vubec dump, ktery konci:

pg_dump: SQL command failed
pg_dump: Error message from server: ERROR: geometry requires more points
pg_dump: The command was: COPY public."polygonSEVEN" (gid, idch, id, delka,
sirka, plocha, poznamka, stav, sirka_min, povrch, tpovrch, etapa, uroven,
the_geom) TO stdout;


Tedy predpokladam, ze problem zni
* self intersection
nebo
* invalid rings

Zkusil jsem podle
http://postgis.refractions.net/pipermail/postgis-users/2009-March/023064.html

remove_invalidrings(the_geom);
remove_invalidpoly(geometry) - mi neselv lozit do fukci


INSERT INTO "polygonSEVENtest" SELECT * FROM "polygonSEVEN"; update
"polygonSEVENtest" SET the_geom = remove_invalidrings(the_geom);

a) narazi na omezeni "enforce_geotype_the_geom"
b) nebo kdyz omezeni natvrdo odstranim tak na :

ERROR: lwpoly_from_lwlines: shell must have at least 4 points
KONTEXT: SQL function "remove_invalidrings" statement 1

********** Chyba **********

ERROR: lwpoly_from_lwlines: shell must have at least 4 points Stav SQL: XX000
Kontext:SQL function "remove_invalidrings" statement 1

Mate nekdo nejake hlubsi zkusenosti? Vite jak dale?


diky a zdravi

Dan Barta


__________ Informace od ESET NOD32 Antivirus, verze databaze 5041 (20100419)
__________

Tuto zpravu proveril ESET NOD32 Antivirus.

http://www.eset.cz



__________ Informace od ESET NOD32 Antivirus, verze databaze 5042 (20100419)
__________

Tuto zpravu proveril ESET NOD32 Antivirus.

http://www.eset.cz






Archivace běží na MHonArc 2.6.19+.

Top of Page