書式
SDO_SAM.SIMPLIFY_LAYER( theme_tablename IN VARCHAR2, theme_colname IN VARCHAR2, smpl_geom_colname IN VARCHAR2, commit_interval IN NUMBER DEFAULT 10, pct_area_change_limit IN NUMBER DEFAULT 2);
説明
ジオメトリのレイヤーを簡略化します。
パラメータ
簡略化するジオメトリのレイヤーを含む表の名前を指定します。
簡略化するジオメトリを含むSDO_GEOMETRY型のtheme_tablename
の列を指定します。
このプロシージャによって簡略化されたジオメトリが配置される、SDO_GEOMETRY型のtheme_tablename
の列を指定します。
Spatial and Graphによって内部コミット操作が実行される前に簡略化するジオメトリの数を指定します。commit_interval
を指定しない場合、コミットは簡略化操作を10回行うたびに実行されます。
簡略化の反復ごとに変更される面積の割合を指定します(SDO_SAM.SIMPLIFY_GEOMETRYファンクションの「使用上の注意」を参照)。
使用上の注意
このプロシージャは、レイヤー内のすべてのジオメトリを簡略化します。実行する操作は、レイヤー内の各ジオメトリに対してSDO_SAM.SIMPLIFY_GEOMETRYファンクションをコールする場合と同じですが、このファンクションでは、簡略化された各ジオメトリは、コール元に戻されるのではなく、表内の別々の列に配置されます。SDO_SAM.SIMPLIFY_GEOMETRYファンクションの「使用上の注意」も参照してください。
例
次の例では、SMPL_GEOMという列をPOLY_4PT_TEMP表に追加して、POLY_4PT_TEMP表のGEOMETRY列のすべてのジオメトリを簡略化し、簡略化された各ジオメトリを対応する元のジオメトリと同じ行のSMPL_GEOM列に配置します。
ALTER TABLE poly_4pt_temp ADD (smpl_geom mdsys.sdo_geometry); Table altered. EXECUTE sdo_sam.simplify_layer('POLY_4PT_TEMP', 'GEOMETRY', 'SMPL_GEOM'); PL/SQL procedure successfully completed.