7.40 SDO_GEOR.getBitmapMaskSubset
形式
SDO_GEOR.getBitmapMaskSubset( georaster IN SDO_GEORASTER, layerNumber IN NUMBER, pyramidLevel IN VARCHAR2, window IN SDO_NUMBER_ARRAY, rasterBlob IN OUT NOCOPY BLOB, storageParam IN VARCHAR2 DEFAULT NULL);
または
SDO_GEOR.getBitmapMaskSubset( georaster IN SDO_GEORASTER, layerNumber IN NUMBER, pyramidLevel IN VARCHAR2, inWindow IN SDO_NUMBER_ARRAY, rasterBlob IN OUT NOCOPY BLOB, outWindow OUT SDO_NUMBER_ARRAY, storageParam IN VARCHAR2 DEFAULT NULL);
または
SDO_GEOR.getBitmapMaskSubset( georaster IN SDO_GEORASTER, layerNumber IN NUMBER, pyramidLevel IN VARCHAR2, window IN SDO_GEOMETRY, rasterBlob IN OUT NOCOPY BLOB, storageParam IN VARCHAR2 DEFAULT NULL);
または
SDO_GEOR.getBitmapMaskSubset( georaster IN SDO_GEORASTER, layerNumber IN NUMBER, pyramidLevel IN VARCHAR2, inWindow IN SDO_GEOMETRY, rasterBlob IN OUT NOCOPY BLOB, outWindow OUT SDO_NUMBER_ARRAY, storageParam IN VARCHAR2 DEFAULT NULL);
説明
ビットマップ・マスクのサブセットを取得します。
パラメータ
- georaster
-
GeoRasterオブジェクトを指定します。
- layerNumber
-
操作を実行するレイヤーの番号を指定します。値が0(ゼロ)の場合、オブジェクト・レイヤーが指定されます。
- pyramidLevel
-
指定したセルを含むピラミッド・レベルを指定します。
- window, inWindow
-
サブセットに対する矩形ウィンドウを指定します。左下と右上の座標を含む数値配列か、SDO_GEOMETRYオブジェクトとして指定します。SDO_NUMBER_ARRAY型は、
VARRAY(1048576) OF NUMBER
として定義されます。 - rasterBlob
-
出力内容(結果のサブセット)を格納するBLOBを指定します。
- outWindow
-
セル空間内で出力ウィンドウの左上角および右下角の座標を指定するSDO_NUMBER_ARRAYオブジェクトを指定します。
- storageParam
-
rasterBlob
の作成時に適用される記憶域パラメータを示す文字列を指定します。このプロシージャでサポートされているstorageParam
キーワードはcelldepth
、compression
、interleaving
およびquality
のみで、他のキーワードはすべて無視されます。記憶域パラメータについては、「記憶域パラメータ」を参照してください。storageParam
パラメータがNULLの場合、結果のGeoRasterオブジェクトのcelldepth
値は1BITセル深度になり、圧縮タイプはDEFLATE
になり(入力されたGeoRasterオブジェクトが圧縮されている場合)、インターリーブ・タイプは入力されたGeoRasterオブジェクトと同じになります。
使用上のノート
指定したラスター・レイヤーに指定のGeoRasterオブジェクトに関連付けられたビットマップが存在しない場合、または指定した入力ウィンドウがGeoRasterオブジェクトの空間エクステントと交差しない場合、このプロシージャは、長さが0 (ゼロ)に切り捨てられたrasterBlob
とNULL値が設定されたoutWindow
を戻します。
このプロシージャの処理は、単一のGeoRasterオブジェクト上で行われます。このプロシージャの構文は4種類あり、入力ウィンドウの指定がジオメトリ・オブジェクトによるものとウィンドウの左上角および右下角によるもののいずれであるか、およびoutWindow
パラメータを使用して出力ウィンドウの座標を戻すかどうかによって異なります。
window
またはinWindow
パラメータのデータ型がSDO_GEOMETRYの場合、SDO_SRID値は、NULL (ラスター空間を指定する)またはMDSYS.CS_SRS表のSRID列の値のいずれかである必要があります。
window
またはinWindow
パラメータ・ジオメトリとモデル空間のSDO_SRID値が異なる場合は、処理が実行される前に、ジオメトリ・パラメータは自動的にモデル空間の座標系に変換されます。(ラスター空間およびモデル空間の詳細は、「GeoRasterデータ・モデル」を参照してください。)
window
パラメータで測地MBRを指定する場合、日付変更線をまたぐMBRは指定できません。測地MBRについては、『Oracle Spatial開発者ガイド』を参照してください。
プロシージャが完了すると、rasterBLOBパラメータには、タイル処理されていないクロッピング済のウィンドウのセル(ピクセル)データが含まれます。クロッピング済のウィンドウとは、処理対象として指定したウィンドウとソースGeoRasterオブジェクトの空間エクステントが重複する部分のことです。outWindow
パラメータを指定した場合は、プロシージャが完了すると、セル空間内のクロッピング済のウィンドウの座標がそのパラメータに含まれます。
ビットマップ・マスクには、空のラスター・ブロック(「空のラスター・ブロック」を参照)が含まれる場合があります。空のラスター・ブロックから導出される出力ウィンドウ内のすべてのセルは、出力のBLOBでは値0(ゼロ)が埋め込まれます。
BLOBには埋込みがありません。ただし、セル深度が8ビットより小さく、出力に必要なビット数の合計が8で除算できない場合を除きます。このような場合は、通常の埋込みとは異なり、結果の最後のバイトでのみ、後続のビットに対し0(ゼロ)が埋め込まれます。
入力されたGeoRasterオブジェクトが圧縮されているかどうかに関係なく、圧縮を指定できます。圧縮済の入力されたGeoRasterオブジェクトに対して、解凍された出力を得るには、storageParam
パラメータでcompression=NONE
を指定します。GeoRasterの圧縮および解凍の詳細は、「圧縮と解凍」を参照してください。
ビットマップ・マスクの詳細は、「ビットマップ・マスク」を参照してください。
例
次の例では、指定したGeoRasterオブジェクトのオブジェクト・レイヤーに関連付けられたビットマップ・マスクのサブセットを取得します。
DECLARE gr sdo_georaster; lb blob; BEGIN SELECT georaster INTO gr FROM georaster_table WHERE georid=4; dbms_lob.createTemporary(lb, TRUE); sdo_geor.getBitmapMaskSubset(gr, 0, 0, sdo_number_array(0,0,99,99), lb, 'compression=none'); dbms_lob.freeTemporary(lb); END; /
親トピック: SDO_GEORパッケージのリファレンス