13.4 SDO_GEOR_UTL.calcSurfaceArea
形式
SDO_GEOR_UTL.calcSurfaceArea( georaster IN SDO_GEORASTER, window IN SDO_GEOMETRY, parallel IN NUMBER ) RETURN NUMBER;
説明
GeoRasterオブジェクトに格納される数値標高モデル(DEM)のデータで表される3次元(3D)の表面積を計算して戻します。
パラメータ
使用上のノート
このファンクションは、window
パラメータで指定した特定の領域に含まれているか接触しているすべてのセルを最初に検索し、各セルを2つの3D三角形に分割し、各三角形の3D表面積を計算し、結果としてこれらの領域の値の合計を戻します。ウィンドウ境界に交差している三角形の領域は、交差しているジオメトリに基づいて計算されるため、このファンクションは高い正確性とともに表面積を戻します。
parallel
パラメータが1未満の場合、1が使用されます(つまり、並列性なし)。
例
次の例では、DEMデータを使用してgeom
内の表面積を計算します。(GEORASTER_TABLEという名前の表を参照します。この表の定義は「記憶域パラメータ」の例1-1の次に説明されています。)
DECLARE geor SDO_GEORASTER; geom SDO_GEOMETRY; area number; BEGIN geom:=sdo_geometry(2003,82394, NULL, mdsys.sdo_elem_info_array(1, 1003, 1), mdsys.sdo_ordinate_array(20283.775, 1011087.9, 18783.775, 1008687.9, 21783.775, 1008687.9, 22683.775+0.001, 1009587.9, 20283.775, 1011087.9)); SELECT georaster INTO geor FROM georaster_table WHERE georid = 3; area:=SDO_GEOR_UTL.calcSurfaceArea(geor,geom,2); END; /
親トピック: SDO_GEOR_UTLパッケージのリファレンス