I am using PostGIS topology to manage a geologic mapping project.

My basic topology is defined by linework. The interstital polygons are meaningful, but can be constructed simply from lines and attribute data stored in points. I then generate the polygons "on the fly" from my linework, spatially joined to point attribute data. This allows me to keep the polygons in sync with my linework.

This works rather well, but it means that the polygons are Geometry objects, not Topogeometries. So I can't simplify the layer in a topologically-aware manner using St_Simplify. I would also like to make larger polygons that are supersets of individual polygons based on attribute data, to allow generalized "dissolve" of map units.

Basically, it seems like I am looking for the equivalent of ST_GetFaceGeometry that returns a topologically-defined element. Perhaps topology.AddFace is what I need, but going from line topogeometries through polygonal geometries and back to a different topological representation of polygons seems confusing.

Plus I am not sure how to translate these face_ids to topogeometries and what happens if the linework is edited and edge_ids change – can I easily delete bad faces?

Any guidance from someone who has dealt with similar situations?

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.