Şu anda PostGIS topoloji uzantısını kullanıyorum, ancak yapının nasıl çalıştığını anlamada bazı zorluklar yaşıyorum:
Kilit noktalardan biri de "katman" ların kullanılması: benim anladığım kadarıyla, özellikler öznitelikler topolojinin şemasının dışındaki bir tabloda (adlandırılmış olan topo_actualname
) saklanmalı ve bu topolojinin bir katmanı olarak kaydedilmelidir AddTopoGeometryColumn
.
Ancak, ilgili özellikler (elemanlarla (tabaka tablosunda saklanan) özelliklerini katılmak için basit bir yolu yoktur node
, face
ya da edge_data
)?
Şimdi, yaptığım şey:
SELECT whatever
FROM layer_tb l
JOIN topo_topologyname.edge_data e ON (l.topo).id=edge_id;
Ama layer
istediğim bilgiyi elde etmek için hem topoloji şema adını hem de katman adını bilmek zorundaysam , tüm kavram oldukça işe yaramaz.
Aslında, topo
katmandaki sütunun, ilgili topolojinin nerede olduğunu bilmek için yeterli bilgiye sahip olduğunu ve ayrıca topology
şemanın her topoloji için her katman tablosuna bir başvuru sakladığını anladığımı düşünüyorum .
Bilgiyi bir araya getirmenin kısa / basit / uygun bir yolu var mı? Topoloji genişletme işlevlerinde bir şey arıyordum , ancak yararlı bir şey bulamadım.
TopoGeometry
bir geometriye doğrudan:SELECT whatever, ST_AsText(topogeom::geometry) FROM layer_tb
. Mesele şu ki, kenarlar daha sonra ayrılırsa, geometrinin sonuç olarak değişebileceği görülüyor.