プライマリ・コンテンツに移動
Oracle® Spatial and Graph開発者ガイド
12cリリース1 (12.1)
B72470-07
目次へ移動
目次
索引へ移動
索引

前
次

24.13 SDO_LRS.FIND_MEASURE

書式

SDO_LRS.FIND_MEASURE(
     geom_segment IN SDO_GEOMETRY, 
     point        IN SDO_GEOMETRY 
     ) RETURN NUMBER;

または

SDO_LRS.FIND_MEASURE(
     geom_segment IN SDO_GEOMETRY, 
     dim_array    IN SDO_DIM_ARRAY, 
     point        IN SDO_GEOMETRY 
     ) RETURN NUMBER;

説明

指定した投影点に最も近いセグメント上の点のメジャーを戻します。

パラメータ

geom_segment

線形フィーチャの地図的表現を指定します。このファンクションは、投影点に最も近いセグメント上の点のメジャーを戻します。

dim_array

geom_segmentに対応する次元情報の配列を指定します。通常、xxx_SDO_GEOM_METADATAビューの1つから選択します(「ジオメトリのメタデータ・ビュー」を参照)。

point

投影点を指定します。このファンクションは、投影点に最も近いgeom_segment上の点のメジャーを戻します。

使用上の注意

このファンクションは、投影点に最も近いgeom_segment上の点のメジャーを戻します。たとえば、投影点がショッピング・モールを表す場合、このファンクションは、高速道路の開始位置からショッピング・モールに最も近い高速道路上の地点までの距離を算出します。

geom_segmentに無効なジオメトリ・タイプまたは次元が含まれる場合、またはgeom_segmentおよびpointが異なる座標系に基づく場合、例外が発生します。

このファンクションは_3D 形式(SDO_LRS.FIND_MEASURE_3D)が使用可能です。LRSファンクションの3D形式については、「LRSファンクションの3D形式」を参照してください。

次の例では、点(10, 7)に最も近いジオメトリ・セグメントRoute 1上の点のメジャーを検索します。(例では、「LRSファンクションの例」の例の定義を使用しています。)

-- Find measure for point on segment closest to 10,7.
-- Should return 15 (for point 12,7).
SELECT  SDO_LRS.FIND_MEASURE(a.route_geometry, m.diminfo,
  SDO_GEOMETRY(3001, NULL, NULL, 
     SDO_ELEM_INFO_ARRAY(1, 1, 1), 
     SDO_ORDINATE_ARRAY(10, 7, NULL)) )
 FROM lrs_routes a, user_sdo_geom_metadata m
 WHERE m.table_name = 'LRS_ROUTES' AND m.column_name = 'ROUTE_GEOMETRY'
   AND a.route_id = 1;

SDO_LRS.FIND_MEASURE(A.ROUTE_GEOMETRY,M.DIMINFO,SDO_GEOMETRY(3001,NULL,NUL
--------------------------------------------------------------------------------
                                                                              15