Topology_Load_Tiger — Läser in en definierad region med tigerdata i en PostGIS-topologi och omvandlar tigerdata till topologins spatiala referens och snappar till topologins precisionstolerans.
text Topology_Load_Tiger(
varchar topo_name, varchar region_type, varchar region_id)
;
Läser in en definierad region med tigerdata till en PostGIS-topologi. Ytor, noder och kanter transformeras till det spatiala referenssystemet för måltopologin och punkter knäpps till toleransen för måltopologin. De skapade ytorna, noderna och kanterna har samma id som de ursprungliga ytorna, noderna och kanterna i tigerdata, så att dataset i framtiden lättare kan stämmas av med tigerdata. Returnerar sammanfattande information om processen.
Detta kan t.ex. vara användbart för distriktsdata där du vill att de nybildade polygonerna ska följa gatornas mittlinjer och att de resulterande polygonerna inte ska överlappa varandra.
![]() |
|
Denna funktion är beroende av Tiger-data samt installation av PostGIS topologimodul. Mer information finns på Chapter 9, Topologi och Section 2.2.3, “Bygg konfiguration”. Om du inte har laddat data som täcker intresseområdet kommer inga topologiposter att skapas. Denna funktion misslyckas också om du inte har skapat en topologi med hjälp av topologifunktionerna. |
![]() |
|
De flesta valideringsfel i topologin är ett resultat av toleransproblem där kantpunkterna efter transformation inte riktigt ligger i linje eller överlappar varandra. För att åtgärda situationen kanske du vill öka eller minska precisionen om du får fel i topologivalideringen. |
Obligatoriska argument:
topo_name
Namnet på en befintlig PostGIS-topologi att läsa in data till.
region_type
Typ av avgränsande region. För närvarande stöds endast plats
och län.
Planen är att ha flera till. Detta är den tabell som ska användas för att definiera regionens gränser. t.ex. tiger.place
, tiger.county
region_id
Detta är vad TIGER kallar geoiden. Det är den unika identifieraren för regionen i tabellen. För place är det plcidfp-kolumnen
i tiger.place
. För county är det kolumnen cntyidfp
i tiger.county
Tillgänglighet: 2.0.0
Skapa en topologi för Boston, Massachusetts i Mass State Plane Feet (2249) med toleransen 0,25 fot och ladda sedan in Boston city tiger faces, edges, nodes.
SELECT topology.CreateTopology('topo_boston', 2249, 0.25); createtopology -------------- 15 -- 60,902 ms ~ 1 minute on windows 7 desktop running 9.1 (with 5 states tiger data loaded) SELECT tiger.topology_load_tiger('topo_boston', 'place', '2507000'); -- topology_loader_tiger -- 29722 edges holding in temporary. 11108 faces added. 1875 edges of faces added. 20576 nodes added. 19962 nodes contained in a face. 0 edge start end corrected. 31597 edges added. -- 41 ms -- SELECT topology.TopologySummary('topo_boston'); -- topologysummary-- Topology topo_boston (15), SRID 2249, precision 0.25 20576 nodes, 31597 edges, 11109 faces, 0 topogeoms in 0 layers -- 28,797 ms to validate yeh returned no errors -- SELECT * FROM topology.ValidateTopology('topo_boston'); error | id1 | id2 -------------------+----------+-----------
Skapa en topologi för Suffolk, Massachusetts i Mass State Plane Meters (26986) med toleransen 0,25 meter och ladda sedan in Suffolk county tiger faces, edges, nodes.
SELECT topology.CreateTopology('topo_suffolk', 26986, 0.25); -- this took 56,275 ms ~ 1 minute on Windows 7 32-bit with 5 states of tiger loaded -- must have been warmed up after loading boston SELECT tiger.topology_load_tiger('topo_suffolk', 'county', '25025'); -- topology_loader_tiger -- 36003 edges holding in temporary. 13518 faces added. 2172 edges of faces added. 24761 nodes added. 24075 nodes contained in a face. 0 edge start end corrected. 38175 edges added. -- 31 ms -- SELECT topology.TopologySummary('topo_suffolk'); -- topologysummary-- Topology topo_suffolk (14), SRID 26986, precision 0.25 24761 nodes, 38175 edges, 13519 faces, 0 topogeoms in 0 layers -- 33,606 ms to validate -- SELECT * FROM topology.ValidateTopology('topo_suffolk'); error | id1 | id2 -------------------+----------+----------- coincident nodes | 81045651 | 81064553 edge crosses node | 81045651 | 85737793 edge crosses node | 81045651 | 85742215 edge crosses node | 81045651 | 620628939 edge crosses node | 81064553 | 85697815 edge crosses node | 81064553 | 85728168 edge crosses node | 81064553 | 85733413