4.29 SDO_TOPO_MAP.GET_NEAREST_NODE_IN_CACHE

構文

SDO_TOPO_MAP.GET_NEAREST_NODE_IN_CACHE(     
  topo_map IN VARCHAR2,      
  point    IN SDO_GEOMETRY      
) RETURN NUMBER;

または

SDO_TOPO_MAP.GET_NEAREST_NODE_IN_CACHE(     
  topo_map IN VARCHAR2,      
  x        IN NUMBER,      
  y        IN NUMBER      
) RETURN NUMBER;

説明

指定されたTopoMapオブジェクトにロードされているノードの中で、指定された点に最も近いノードのノードID番号を戻します。

パラメータ

topo_map

TopoMapオブジェクトの名前を指定します。(TopoMapオブジェクトの詳細は、「TopoMapオブジェクト」を参照してください。)

point

点を示すジオメトリ・オブジェクトを指定します。

x

点のX軸値を指定します。

y

点のY軸値を指定します。

使用上のノート

点に最も近いノードが複数ある場合、いずれかのノードID値が戻されます。トポロジ・データがロードされていない場合またはキャッシュ内にノードが存在しない場合、このファンクションは0(ゼロ)を戻します。

このファンクションの動作は、クライアント側のJava APIに含まれるTopoMapクラス(「トポロジ・データ・モデルのJavaインタフェース」を参照)のgetNearestNodeInCacheメソッドを使用する場合と同じです。

次の例では、TopoMapオブジェクトCITY_DATA_TOPOMAPの(8, 8)に存在する点に最も近いノードのノードID番号を戻します。(この例では、「トポロジ・データから作成したトポロジ」の定義およびデータを参照しています。)

SELECT SDO_TOPO_MAP.GET_NEAREST_NODE_IN_CACHE('CITY_DATA_TOPOMAP',
  SDO_GEOMETRY(2001, NULL, SDO_POINT_TYPE(8,8,NULL), NULL, NULL))
  FROM DUAL;
 
SDO_TOPO_MAP.GET_NEAREST_NODE_IN_CACHE('CITY_DATA_TOPOMAP',SDO_GEOMETRY(2001,NUL
--------------------------------------------------------------------------------
                                                                               8