プライマリ・コンテンツに移動
Oracle® Spatial and Graph開発者ガイド
12cリリース1 (12.1)
B72470-07
目次へ移動
目次
索引へ移動
索引

前
次

23.32 SDO_GEOM.SDO_XOR

書式

SDO_GEOM.SDO_XOR(     
  geom1  IN SDO_XOR,      
  dim1   IN SDO_DIM_ARRAY,      
  geom2  IN SDO_GEOMETRY,      
  dim2   IN SDO_DIM_ARRAY       
) RETURN SDO_GEOMETRY;

または

SDO_GEOM.SDO_XOR(     
  geom1  IN SDO_GEOMETRY,      
  geom2  IN SDO_GEOMETRY,      
  tol    IN NUMBER       
) RETURN SDO_GEOMETRY;

説明

2つのジオメトリ・オブジェクトで位相的に排他的論理和(XOR演算)となるジオメトリ・オブジェクトを戻します。

パラメータ

geom1

ジオメトリ・オブジェクト。

dim1

geom1に対応する次元情報の配列を指定します。通常、xxx_SDO_GEOM_METADATAビューの1つから選択します(「ジオメトリのメタデータ・ビュー」を参照)。

geom2

ジオメトリ・オブジェクト。

dim2

geom2に対応する次元情報の配列を指定します。通常、xxx_SDO_GEOM_METADATAビューの1つから選択します(「ジオメトリのメタデータ・ビュー」を参照)。

tol

許容差(「許容差」を参照)。

使用上の注意

図23-5のグレーの領域は、四角形geom1ともう1つのポリゴンgeom2でSDO_XORを使用した場合に戻されるポリゴンです。

geom1およびgeom2が異なる座標系に基づく場合、例外が発生します。

次の例では、cola_acola_cの位相的な排他的論理和(XOR演算)となるジオメトリ・オブジェクトを戻します。(例では、「空間データの挿入、索引付けおよび問合せの例」の定義およびデータを使用しています。)

-- Return the topological symmetric difference of two geometries.
SELECT SDO_GEOM.SDO_XOR(c_a.shape, m.diminfo, c_c.shape, m.diminfo) 
  FROM cola_markets c_a, cola_markets c_c, user_sdo_geom_metadata m 
  WHERE m.table_name = 'COLA_MARKETS' AND m.column_name = 'SHAPE' 
  AND c_a.name = 'cola_a' AND c_c.name = 'cola_c';

SDO_GEOM.SDO_XOR(C_A.SHAPE,M.DIMINFO,C_C.SHAPE,M.DIMINFO)(SDO_GTYPE, SDO_SRID, S
--------------------------------------------------------------------------------
SDO_GEOMETRY(2007, NULL, NULL, SDO_ELEM_INFO_ARRAY(1, 1003, 1, 19, 1003, 1), SDO
_ORDINATE_ARRAY(1, 7, 1, 1, 5, 1, 5, 3, 3, 3, 4, 5, 5, 5, 5, 7, 1, 7, 5, 5, 5, 3
, 6, 3, 6, 5, 5, 5))

戻されるポリゴンは複数ポリゴン(SDO_GTYPE = 2007)であり、SDO_ORDINATE_ARRAYには、次の2つのポリゴンが記述されています。1つは(1, 7)で開始および終了し、もう1つは(5, 5)で開始および終了します。