書式
SDO_TIN_PKG.CLIP_TIN( inp IN SDO_TIN, qry IN SDO_GEOMETRY, qry_min_res IN NUMBER, qry_max_res IN NUMBER, blkid IN NUMBER DEFAULT NULL ) RETURN SDO_TIN_BLK_TYPE;
説明
TINに対してクリップ操作を実行します。
パラメータ
クリップ操作を実行するTINを指定します。
戻されるオブジェクトを選択するウィンドウを指定します。通常、2次元ジオメトリの場合はポリゴン、3次元ジオメトリの場合は錐台となります。
最小解像度の値を指定します。解像度がqry_min_res以上およびqry_max_res以下のqryのオブジェクトがクリップ操作により戻されます。
最大解像度の値を指定します。解像度がqry_min_res以上およびqry_max_res以下のqryのオブジェクトがクリップ操作により戻されます。
クリップ操作によって戻されるオブジェクトを制限するブロックのブロックID番号を指定します。このパラメータがNULLの場合、他のパラメータを満たすすべてのオブジェクトが戻されます。
使用上の注意
このファンクションでは、指定した問合せウィンドウ内にあり、かつパラメータによって指定されている他の要件を満たしているTINの三角形を戻します。一般に、このファンクションはTINに対して問合せを実行するために使用します。TINの問合せのパフォーマンスを最大にするには、ファンクションが操作に対して考慮する必要のあるオブジェクトの数を最小限にします。
SDO_TINおよびSDO_TIN_BLK_TYPEデータ型については、「TINに関連するオブジェクト型」を参照してください。
TINを使用して表面をモデル化する方法は、「表面のモデル化」を参照してください。
例
次の例では、TINに対してクリップ操作を実行します。これは、Oracle Database Examplesメディアからすでにファイルをインストールしている場合は、$ORACLE_HOME/md/demo/TIN/examples/plsql/tin.sqlから取得できます(『Oracle Database Examplesインストレーション・ガイド』を参照)。
. . .
declare
inp sdo_tin;
begin
select tin INTO inp from base where rownum=1;
insert into restst
select * from
table(sdo_tin_pkg.clip_tin
(
inp, -- Input TIN object
sdo_geometry(2003, null, null,
mdsys.sdo_elem_info_array(1, 1003, 3),
mdsys.sdo_ordinate_array(-74.1, -73.9, 39.99999,40.00001)), -- Query
null, null));
end;
. . .