Name

ST_MoveIsoNode — Déplace un nœud isolé dans une topologie d'un point à un autre. Si la nouvelle géométrie apoint existe en tant que noeud, une erreur est générée. Retourne la description du déplacement.

Synopsis

text ST_MoveIsoNode(varchar atopology, integer anode, geometry apoint);

Description

Déplace un nœud isolé dans une topologie d'un point à un autre. Si la nouvelle géométrie apoint existe en tant que noeud, une erreur est générée.

Si l'un des arguments est nul, si le apoint n'est pas un point, si le noeud existant n'est pas isolé (c'est un point de départ ou d'arrivée d'une arête existante), si l'emplacement du nouveau noeud coupe une arête existante (même aux points d'arrivée) ou si le nouvel emplacement se trouve dans une face différente (depuis la version 3.2.0), une exception est levée.

Si le système de référence spatiale (srid) de la géométrie du point n'est pas le même que la topologie, une exception est levée.

Disponibilité : 2.0.0

Amélioration : la version 3.2.0 garantit que le nœud ne peut pas être déplacé vers une autre face

Cette méthode implémente la spécification SQL/MM. SQL-MM: Topo-Net Routines: X.3.2

Exemples

-- Add an isolated node with no face  --
SELECT topology.ST_AddIsoNode('ma_topo',  NULL, ST_GeomFromText('POINT(227579 893916)', 26986) ) As nodeid;
 nodeid
--------
      7
-- Move the new node --
SELECT topology.ST_MoveIsoNode('ma_topo', 7,  ST_GeomFromText('POINT(227579.5 893916.5)', 26986) ) As descrip;
                      descrip
----------------------------------------------------
Isolated Node 7 moved to location 227579.5,893916.5

Voir aussi

ST_AddIsoNode