7.38 SDO_GEOR.getBinType

形式

SDO_GEOR.getBinType(
     georaster   IN SDO_GEORASTER, 
     layerNumber IN NUMBER 
     ) RETURN VARCHAR2;

説明

レイヤーに関連付けられたビン・タイプを戻します。

パラメータ

georaster

GeoRasterオブジェクトを指定します。

layerNumber

ビン・タイプを戻すレイヤーの番号を指定します。値が0(ゼロ)の場合、オブジェクト・レイヤーが指定されます。

使用上のノート

このファンクションは、LINEARLOGARITHMまたはEXPLICITのいずれかのビン・タイプ値を戻します。

LINEARビン・タイプの定義は次のとおりです。

binNumber = numbins * (cellValue - min) / (max - min) + firstBinNumber
if (binNumber less than 0) binNumber =  firstBinNumber
if (binNumber greater than or equal to numbins) binNumber = numbins + firstBinNumber - 1

LOGARITHMビン・タイプの定義は次のとおりです。

binNumber = numbins * (ln (1.0 + ((cellValue - min)/(max - min)))/ ln (2.0)) + firstBinNumber
if (binNumber less than 0) binNumber =  firstBinNumber
if (binNumber greater than or equal to numbins) binNumber = numbins + firstBinNumber - 1

EXPLICITビン・タイプの場合、各ビンの値(または値の範囲)はビン表に格納されます(この表は、SDO_GEOR.setBinTableプロシージャで設定し、SDO_GEOR.getBinTableファンクションで取得できます)。

ビン・ファンクションは、GeoRasterセルの値または値の範囲を、特定のビン番号にマップします。ビン番号はすべて整数です。GeoRasterでは、ビン・ファンクションの操作および処理を行うインタフェースは提供されません。

georasterまたはそのメタデータがNULLの場合、このファンクションはNULL値を戻します。

layerNumberがNULL、負、またはレイヤーの最大番号より大きい値の場合、例外が発生します。

次の例では、GeoRasterオブジェクトのレイヤー0および1のビン・タイプを戻します。(GEORASTER_TABLEという名前の表を参照します。この表の定義は「記憶域パラメータ」例1-1の次に説明されています。)出力は、読みやすくするために変更が加えられています。)

SELECT substr(sdo_geor.getBinType(georaster, 0),1,20) binType0,
       substr(sdo_geor.getBinType(georaster, 1),1,20) binType1
  FROM georaster_table WHERE georid=4;
 
BINTYPE0        BINTYPE1
--------------- ---------------
EXPLICIT        LINEAR