7.16 SDO_GEOR.evaluateDouble
形式
SDO_GEOR.evaluateDouble( georaster IN SDO_GEORASTER, pyramidLevel IN NUMBER, row IN NUMBER, column IN NUMBER, bands IN VARCHAR2, interpolationMethod IN VARCHAR2 ) RETURN SDO_NUMBER_ARRAY;
または
SDO_GEOR.evaluateDouble( georaster IN SDO_GEORASTER, pyramidLevel IN NUMBER, ptGeom IN SDO_GEOMETRY, layers IN VARCHAR2, interpolationMethod IN VARCHAR2 ) RETURN SDO_NUMBER_ARRAY;
説明
指定された内挿方法を使用することで直接の場所を評価し、その場所に指定されたバンドまたはレイヤーのラスター値(倍精度の数値)を戻します。
パラメータ
- georaster
-
GeoRasterオブジェクトを指定します。
- pyramidLevel
-
ラスター値を戻す場所を含むピラミッド・レベルを指定します。
- row
-
ラスター値を戻す場所の行座標を指定します。これは浮動小数点数にすることができます。
- column
-
ラスター値を戻す場所の列座標を指定します。これは浮動小数点数にすることができます。
- bands
-
処理を実行する物理バンド番号を示す文字列を指定します。カンマで値を区切り、ハイフンで範囲を指定します(たとえば、
1-3
はバンド1、2および3を示します)。 - ptGeom
-
ラスター値を戻す直接の場所を識別する点ジオメトリを指定します。
- layers
-
処理を実行する論理レイヤー番号を示す文字列を指定します。カンマで値を区切り、ハイフンで範囲を指定します(たとえば、
2-4
はレイヤー2、3および4を示します)。(「バンド、レイヤーおよびメタデータ」で説明したように、論理レイヤー番号は、物理バンドの番号に1を足した値です。) - interpolationMethod
-
それぞれ適切な値を持つ1つ以上のキーワードを含む引用符で囲んだ文字列を指定します。使用可能なキーワードおよび値については、「使用上のノート」を参照してください。
使用上のノート
このファンクションは、内挿された倍精度のラスター値を戻します。GeoRasterでは、セル座標系タイプが中心を基準とするか、左上を基準とするかにかかわらず、元のセル値は常にセルの中心に関連付けられます。
GeoRasterオブジェクトの場所は、セル座標空間でその行、列およびバンド番号を指定するか、モデル座標空間またはセル座標空間で点ジオメトリを指定して識別します。
interpolationMethod
には、次の1つ以上のキーワードにそれぞれ適切な値を指定して、それらを引用符で囲んだ文字列を指定する必要があります。
-
interpolationMethod
(interpolationMethod=NN
など): 内挿方法を指定します。NN
、BILINEAR
、BIQUADRATIC
、CUBIC
、AVERAGE4
、AVERAGE16
のいずれかを指定する必要があります。詳細は、「リサンプリングおよび内挿」を参照してください。 -
nodata
(nodata=TRUE
など): プロシージャでの処理中にNODATA値およびその値の範囲を考慮するかどうかを指定します。TRUE
(NODATA値およびその値の範囲を考慮する)またはFALSE
(NODATA値およびその値の範囲を考慮しない)のいずれかを指定します。デフォルト値はFALSE
です。この値がTRUE
で、内挿方法がBILINEAR
、BIQUADRATIC
、CUBIC
、AVERAGE4
またはAVERAGE16
の場合、内挿の計算に含まれるセル値がNODATA値であると、内挿の結果も常にNODATA値になります。複数のNODATA値または値の範囲が存在する場合、結果のNODATA値は、現行のラスター・レイヤーに関連付けられているNODATA値の最小値になります。
interpolationMethod
を'interpolationMethod=NN'
に指定した場合、このファンクションはSDO_GEOR.getCellValueファンクションをコールした場合と同じになります。
例
次の例では、GEORASTER_TABLE表で、GEORID列値が21である行に含まれているGeoRasterオブジェクト(GEORASTER列)の指定した場所のラスター値を戻します(GEORASTER_TABLE表の定義は、「記憶域パラメータ」の例1-1の次に説明されています)。
次の例では、セル空間またはモデル空間で指定された同じ場所の同じ値を戻す2つのファンクション構文を示します。
SELECT SDO_GEOR.evaluateDouble(a.georaster, 0, 10.2, 10.3, '0-2', 'interpolationMethod=BILINEAR') FROM georaster_table a WHERE georid=21; SDO_GEOR.EVALUATEDOUBLE(A.GEORASTER,0,10.2,10.3,'0-2','interpolationMethod=BILINEAR') -------------------------------------------------------------------------------- SDO_NUMBER_ARRAY(86.68, 135.68, 31.72) 1 row selected. SELECT SDO_GEOR.evaluateDouble(a.georaster, 0, SDO_GEOMETRY(2001, 82394, SDO_POINT_TYPE(18492.775, 1012881.9, NULL), NULL, NULL), '1-3', 'interpolationMethod=BILINEAR') FROM georaster_table a WHERE georid=21; SDO_GEOR.EVALUATEDOUBLE(A.GEORASTER,0,SDO_GEOR.GETMODELCOORDINATE(A.GEORASTER,0, -------------------------------------------------------------------------------- SDO_NUMBER_ARRAY(86.68, 135.68, 31.72) 1 row selected.
親トピック: SDO_GEORパッケージのリファレンス