4.27 SDO_TOPO_MAP.GET_NEAREST_EDGE_IN_CACHE

構文

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

または

SDO_TOPO_MAP.GET_NEAREST_EDGE_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インタフェース」を参照)のgetNearestEdgeInCacheメソッドを使用する場合と同じです。

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

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