4.42 SDO_TOPO_MAP.MOVE_NODE
Format
SDO_TOPO_MAP.MOVE_NODE( topology IN VARCHAR2, node_id IN NUMBER, edges_coords IN SDO_EDGE_ARRAY);
or
SDO_TOPO_MAP.MOVE_NODE( topology IN VARCHAR2, node_id IN NUMBER, edges_coords IN SDO_EDGE_ARRAY, moved_iso_nodes OUT SDO_NUMBER_ARRAY, moved_iso_edges OUT SDO_NUMBER_ARRAY, allow_iso_moves IN VARCHAR2);
Description
Moves a non-isolated node and its attached edges.
Parameters
- topology
-
Name of the topology in which to move the node, or null if you are using an updatable TopoMap object (see Specifying the Editing Approach with the Topology Parameter). Must not exceed 20 characters.
- node_id
-
Node ID of the node to be moved.
- edges_coords
-
An array of arrays, of type SDO_EDGE_ARRAY (described in SDO_EDGE_ARRAY and SDO_NUMBER_ARRAY Types). Each inner array consists of coordinates of each resulting attached edge, from start point to end point. The outer array consists of the attached edge arrays, starting with the start edge of the node to be moved and proceeding in clockwise order (with the sequence of the edges as would be obtained in a call to the SDO_TOPO_MAP.GET_NODE_STAR function).
The array for each edge must include the start and end points. Any loops that connect twice at the moved node must be specified twice in the array.
- moved_iso_nodes
-
Output parameter in which, if the
allow_iso_moves
parameter value isTRUE
, Spatial stores the node ID values of any isolated nodes that have moved to a different face as a result of this procedure. If theallow_iso_moves
parameter value isFALSE
, Spatial stores the node ID values of any isolated nodes that did not move but that would have moved to a different face if theallow_iso_moves
parameter value had beenTRUE
. - moved_iso_edges
-
Output parameter in which, if the
allow_iso_moves
parameter value isTRUE
, Spatial stores the edge ID values of any isolated edges that have moved to a different face as a result of this procedure. If theallow_iso_moves
parameter value isFALSE
, Spatial stores the edge ID values of any isolated edges that did not move but that would have moved to a different face if theallow_iso_moves
parameter value had beenTRUE
. - allow_iso_moves
-
TRUE
causes Spatial to allow a node move operation that would cause any isolated nodes or edges to be in a different face, and to adjust the containing face information for such isolated nodes and edges;FALSE
causes Spatial not to allow a node move operation that would cause any isolated nodes or edges to be in a different face.If you use the format that does not include the
allow_iso_moves
parameter, Spatial allows a node move operation that would cause any isolated nodes or edges to be in a different face, and it adjusts the containing face information for such isolated nodes and edges.
Usage Notes
For information about moving nodes, see Moving a Node.
This procedure is equivalent to using the moveNode
method of the TopoMap
class of the client-side Java API (described in Topology Data Model Java Interface).
Examples
The following example moves node N3 and adjusts the coordinates of the only attached edge. (The example refers to definitions and data from Topology Built from Topology Data.)
-- Move node N3 to right: from 25,35 to 26,35. -- E3 is changed from 25,30 -> 25,35 to 25,30 -> 26,35. CALL SDO_TOPO_MAP.MOVE_NODE(null, 3, SDO_EDGE_ARRAY(SDO_NUMBER_ARRAY(25,30, 26,35)));
Parent topic: SDO_TOPO_MAP Package Subprograms