22.16 SDO_CS.FIND_SRID
書式
SDO_CS.FIND_SRID( srid OUT NUMBER, epsg_srid_geog IN NUMBER DEFAULT NULL, epsg_srid_proj IN NUMBER DEFAULT NULL, datum_id IN NUMBER DEFAULT NULL, pm_id IN NUMBER DEFAULT NULL, proj_method_id IN NUMBER DEFAULT NULL, coord_ref_sys_kind IN VARCHAR2 DEFAULT NULL, semi_major_axis IN NUMBER DEFAULT NULL, semi_minor_axis IN NUMBER DEFAULT NULL, inv_flattening IN NUMBER DEFAULT NULL, params IN EPSG_PARAMS DEFAULT NULL);
または
SDO_CS.FIND_SRID( srid OUT NUMBER, epsg_srid_geog IN NUMBER DEFAULT NULL, epsg_srid_proj IN NUMBER DEFAULT NULL, datum_id IN NUMBER DEFAULT NULL, pm_id IN NUMBER DEFAULT NULL, proj_method_id IN NUMBER DEFAULT NULL, proj_op_id IN NUMBER DEFAULT NULL, coord_ref_sys_kind IN VARCHAR2 DEFAULT NULL, semi_major_axis IN NUMBER DEFAULT NULL, semi_minor_axis IN NUMBER DEFAULT NULL, inv_flattening IN NUMBER DEFAULT NULL, params IN EPSG_PARAMS DEFAULT NULL, max_rel_num_difference IN NUMBER DEFAULT 0.000001);
説明
指定した情報に一致する座標系のSRID値を検索します。
パラメータ
- srid
-
出力パラメータ。数値のSRID値またはNULL値が含まれます(「使用上のノート」を参照)。
- epsg_srid_geog
-
地理座標系のEPSG SRID値。このプロシージャは、
coord_ref_sys_kind
パラメータの値に応じて、この地理SRID値を持つ座標系の有無を確認するか、またはこのSRID値を持つ座標系に基づいて投影座標系のSRID値を検索します。 - epsg_srid_proj
-
投影座標系のEPGS SRID値。
- datum_id
-
データのID値。このプロシージャは、
coord_ref_sys_kind
パラメータの値に応じて、地理座標系または投影座標系のSRIDをこのデータに基づいて検索します。 - ellipsoid_id
-
楕円体のID値。このプロシージャは、
coord_ref_sys_kind
パラメータの値に応じて、地理座標系または投影座標系のSRIDをこの楕円体に基づいて検索します。 - pm_id
-
本初子午線のID値。このプロシージャは、
coord_ref_sys_kind
パラメータの値に応じて、地理座標系または投影座標系のSRIDをこの本初子午線に基づいて検索します。 - proj_method_id
-
投影方法のID値。この投影方法に基づく投影座標系のSRIDを検索します。
- proj_op_id
-
投影操作のID値。この投影操作に基づく投影座標系のSRIDを検索します。投影操作は、特定の投影パラメータと組み合された投影方法です。
- coord_ref_sys_kind
-
座標系の種類またはカテゴリ。この値は、SDO_COORD_REF_SYS表(「SDO_COORD_REF_SYS表」を参照)のCOORD_REF_SYS_KIND列の文字列値である必要があります。例:
GEOGRAPHIC2D
およびPROJECTED
。 - semi_major_axis
-
半長径のID値。このプロシージャは、
coord_ref_sys_kind
パラメータの値に応じて、地理座標系または投影座標系のSRIDをこの半長径に基づいて検索します。 - semi_minor_axis
-
半短径のID値。このプロシージャは、
coord_ref_sys_kind
パラメータの値に応じて、地理座標系または投影座標系のSRIDをこの半短径に基づいて検索します。 - inv_flattening
-
逆フラット化(単位は1です)。このプロシージャは、
coord_ref_sys_kind
パラメータの値に応じて、地理座標系または投影座標系のSRIDをこの逆フラット化に基づいて検索します。 - params
-
投影パラメータ。このパラメータは、投影方法に基づきます。EPSG_PARAMSタイプは
VARRAY(1048576) OF EPSG_PARAM
として定義され、EPSG_PARAMタイプは(id NUMBER, val NUMBER, uom NUMBER)
として定義されます。次の例に示すように、この書式にはパラメータID、値、測定単位IDの属性が含まれます。epsg_params( epsg_param(8801, 0.0, 9102), epsg_param(8802, 9.0, 9102), epsg_param(8805, 0.9996, 9201), epsg_param(8806, 500000.0, 9001), epsg_param(8807, 0.0, 9001));
- max_rel_num_difference
-
座標参照系を一致対象にする場合、WKT値がどの程度一致する必要があるかを示す数値を指定します。デフォルト値は0.000001です。WKT項目の各数値は、参照SRIDのWKT内の対応する値と比較されるか、このプロシージャで指定するパラメータのリスト内の対応する値と比較されます。すべてのケースで差が
max_rel_num_difference
の値以下の場合は、この座標参照系のSRIDが結果に含まれます。
使用上のノート
このプロシージャは、その操作結果をsrid
出力パラメータに配置します。結果は、数値のSRID値またはNULL値のいずれかになります。
このプロシージャには、主に次の使用方法があります。
-
特定のSRID値を持つ座標系が存在するかどうかを確認します。この場合、
epsg_srid_geog
(地理座標系の場合)またはepsg_srid_proj
(投影座標系の場合)に値を指定し、有効なPL/SQL文を作成するのに十分な数のパラメータを指定します。指定した値と結果のsrid
パラメータの値が同じ場合は、そのSRID値を持つ座標系が存在します。結果のsrid
パラメータの値がNULLの場合は、そのSRID値を持つ座標系は存在しません。 -
指定した情報に基づく座標系のSRID値を検索します。
入力パラメータで指定した基準に一致する座標系が複数ある場合も、srid
パラメータには1つのSRID値のみが戻されます。この値は、一致している可能性のあるSRID値うちのいずれの値になる可能性もあり、同じ入力パラメータを指定して、後でこのプロシージャを実行しても、同じ値が得られる保証はありません。
例
次の例では、定義にデータID6267を使用する投影座標系のSRID値を検索します。
DECLARE returned_srid NUMBER; BEGIN SDO_CS.FIND_SRID ( srid => returned_srid, epsg_srid_geog => null, epsg_srid_proj => null, datum_id => 6267, ellips_id => null, pm_id => null, proj_method_id => null, proj_op_id => null, coord_ref_sys_kind => 'PROJECTED'); DBMS_OUTPUT.PUT_LINE('SRID = ' || returned_srid); END; / SRID = 4267
親トピック: SDO_CSパッケージ(座標系変換)