6.7 SDO_NET.COMPUTE_PATH_GEOMETRY
構文
SDO_NET.COMPUTE_PATH_GEOMETRY( network IN VARCHAR2, path_id IN NUMBER, tolerance IN NUMBER ) RETURN SDO_GEOMETRY;
説明
パスの空間ジオメトリを戻します。
パラメータ
- network
-
ネットワーク名を指定します。
- path_id
-
パスID番号を指定します。
- tolerance
-
ネットワーク内のジオメトリに関連付けられた許容差を指定します。(許容差については、『Oracle Spatial開発者ガイド』の第1章を参照してください。)この値は、ネットワークのリンク表およびノード表のジオメトリの許容差と一致している必要があります。
使用上のノート
このファンクションは、指定されたパスについて、SDO_GEOMETRYオブジェクトを計算して戻します。
このファンクションおよびSDO_NET_MEM.PATH.COMPUTE_GEOMETRYプロシージャ(「SDO_NETパッケージ・サブプログラム」を参照)は両方ともパスのジオメトリを計算しますが、次のような相違点があります。
-
SDO_NET.COMPUTE_PATH_GEOMETRYファンクションは、データベース内のリンクからのパスを計算し、ネットワーク・メモリー・オブジェクトを使用しません。これは、パスのジオメトリを戻します。
-
SDO_NET_MEM.PATH.COMPUTE_GEOMETRYプロシージャは、ロード済のネットワーク・メモリー・オブジェクトを使用してパスを計算します。パスのジオメトリは戻されないため、SDO_NET_MEM.PATH.GET_GEOMETRYファンクションを使用してジオメトリを取得する必要があります。
例
次の例では、SDO_NET1
という名前のネットワーク内にパスIDが1のパスの空間ジオメトリを計算して戻します(許容差は0.005を使用)。このパスは単一リンクで構成されているため、戻されるパスのジオメトリは(1,1)から(15,1)への直線になります。
SELECT SDO_NET.COMPUTE_PATH_GEOMETRY('SDO_NET1', 1, 0.005) FROM DUAL; SDO_NET.COMPUTE_PATH_GEOMETRY('SDO_NET1',1,0.005)(SDO_GTYPE, SDO_SRID, SDO_POINT -------------------------------------------------------------------------------- SDO_GEOMETRY(2002, NULL, NULL, SDO_ELEM_INFO_ARRAY(1, 2, 1), SDO_ORDINATE_ARRAY( 1, 1, 15, 1))
親トピック: SDO_NETパッケージ・サブプログラム