On Fri, Jun 23, 2006 at 12:44:13AM +0200, we recorded a bogon-computron collision of the <hernan.deangelis@glocalnet.net> flavor, containing:
Dear list,
I have a bunch of PostGIS layers (polygons) that I want to import into GRASS.
These polygons represent palaeogeographic features and therefore they
necessarily overlap over some regions (different entities are distinguished
by attributes in the attribute table). Since v.in.ogr automatically builds
topology by default, a secondary layer is generated during import where the
the overlapping sectors of the polygons are cut and stored. Whereas this
might be useful for a wide range of applications it is certainly not
desirable in my case, since it destroys the palaeogeographic representation.
My question is therefore: how can I import these shapefiles and avoid topology
building at the same time? I understand that exporting the tables as text and
importing them using v.in.ascii might be an option, but I would rather prefer
to preserve the carefuly designed attribute tables as they are, without
having to regenerate them.
If it were me, I think I would probably do it in stages by using the GDAL tool
"ogr2ogr" to make separate files of non-overlapping polygons before attempting
to pull them into GRASS. That is, pull out files filled only with
polygons representing the same type of entity using an SQL-like select on
the attributes. Once you have such things, each should be easily importable
into GRASS as separate vector files.
I don't use PostGIS, so am not familiar with the correct way to specify
PostGIS layers in OGR commands. If the layer were already in a shapefile
format, you'd do something like this, assuming for example that the
distinguishing attribute was called "entity_type" and had string values:
ogr2ogr -where 'entity_type="SomeParticularType"' reduced.shp original_full.shp
which would produce a new shapefile reduced.shp containing only features with
entity_type having value SomeParticularType.
You could construct considerably more complex "where" clauses to taste, so
long as when you do so you're only selecting non-overlapping polygons. Doing
this you should be able to import all your data without having GRASS impose
topological restrictions on it, but also without having to resort to skipping
the topology building.
Naturally, you'll wind up with many different polygon vector files instead of
just one, but each will only represent one type of entity.
--
Tom Russo KM5VY SAR502 DM64ux http://www.swcp.com/~russo/
Tijeras, NM QRPL#1592 K2#398 SOC#236 SKCC#2002
"And, isn't sanity really just a one-trick pony anyway? I mean all you get is
one trick, rational thinking, but when you're good and crazy, oooh, oooh,
oooh, the sky is the limit!" --- The Tick