AddEdge — Ajoute une arête linéaire à la table des arêtes et les points de départ et d'arrivée associés à la table des nœuds de points du schéma topologique spécifié en utilisant la géométrie linéaire spécifiée et renvoie l'identifiant de l'arête nouvelle (ou existante).
bigint AddEdge(varchar toponame, geometry aline);
Ajoute une arête à la table des arêtes et les nœuds associés à la table des nœuds du schéma toponame spécifié en utilisant la géométrie de ligne spécifiée et renvoie l'identifiant de l'arête du nouvel enregistrement ou de l'enregistrement existant. L'arête nouvellement ajoutée a une face "univers" des deux côtés et est liée à elle-même.
|
|
|
Si la géométrie |
|
|
|
La géométrie de |
Effectué par le module GEOS.
|
|
|
AddEdge est obsolète depuis la version 3.5.0. Utilisez plutôt TopoGeo_AddLineString. |
Disponibilité : 2.0.0
SELECT topology.AddEdge('ma_topo', ST_GeomFromText('LINESTRING(227575.8 893917.2, 227591.9 893900.4)', 26986)) AS edgeid;
1
SELECT topology.AddEdge('ma_topo', ST_GeomFromText('LINESTRING(227591.9 893900.4, 227622.6 893844.2, 227641.6 893816.5, 227704.5 893778.5)', 26986)) AS edgeid;
2
This query errors because the edge intersects an existing edge away from the endpoints.
SELECT topology.AddEdge('ma_topo', ST_GeomFromText('LINESTRING(227591.2 893900, 227591.9 893900.4, 227704.5 893778.5)', 26986)) AS edgeid;
ERROR: Edge intersects (not on endpoints) with existing edge 1