Namn

TopoGeo_AddLineString — Lägger till en linestrings till en befintlig topologi med hjälp av en tolerans och eventuellt delning av befintliga kanter/ytor.

Synopsis

SETOF bigint TopoGeo_AddLineString(varchar atopology, geometry aline, float8 tolerance, int max_edges);

Beskrivning

Lägger till en linjesträng i en befintlig topologi och returnerar en mängd kantidentifierare med tecken som bildar den. Negativa identifierare betyder att kanten går i motsatt riktning mot indatans linjesträng.

Den angivna linjen snäpper till befintliga noder eller kanter inom angiven tolerans. Befintliga kanter och ytor kan delas av linjen. Nya noder och ytor kan läggas till, utöver nya kanter.

De returnerade kantidentifierarna kan vara befintliga eller nyskapade kanter efter behov för att representera indatalinjen så nära som möjligt.

Antalet nyskapade kanter, antingen för tidigare otäckt område eller efter delning av befintliga kanter, kan begränsas med parametern max_edges.

[Notera]

När många linjer läggs till kan inläsningsordningen påverka prestandan mycket, eftersom varje anrop kontrollerar linjen mot redan inlästa topologielement. Vid massinläsning kan man undvika dyra senare delningar genom att lägga till stora slutna eller omslutande linjer före mindre inneslutna linjer. För att läsa in en samling i ett anrop, se TopoGeo_LoadGeometry.

[Notera]

Uppdatering av statistik om topologier som laddas via denna funktion är upp till den som anropar, se maintaining statistics during topology editing and population.

Tillgänglighet: 2.0.0

Förbättrad: 3.2.0 lade till stöd för att returnera signerad identifierare.

Utökat: 3.7.0 lade till stöd för att begränsa antalet nya kanter som skapas i topologin.