書式
SDO_UTIL.CONCAT_LINES( geometry1 IN SDO_GEOMETRY, geometry2 IN SDO_GEOMETRY ) RETURN SDO_GEOMETRY;
説明
2つの単一線または複数線の2次元ジオメトリを連結して、新しいジオメトリを作成します。
使用上の注意
各入力ジオメトリは、単一線または複数線の2次元ジオメトリ(SDO_GTYPE値が2002または2006)である必要があります。このファンクションは、LRSジオメトリではサポートされません。LRSジオメトリ・セグメントを連結するには、SDO_LRS.CONCATENATE_GEOM_SEGMENTSファンクションを使用します(「SDO_LRSパッケージ(線形参照システム)」を参照)。
入力ジオメトリは、頂点が直線セグメントに連結している線ストリングである必要があります。円弧および複合線ストリングはサポートされていません。
入力ジオメトリが複数線ジオメトリの場合、ジオメトリの各要素は非接続であることが必要です。非接続でない場合、このファンクションは不適切な結果を戻すことがあります。
geometry1
とgeometry2
の位相関係は、DISJOINTまたはTOUCHである必要があり、位相関係がTOUCHの場合は、ジオメトリは2つの終了点でのみ交差する必要があります。
SDO_AGGR_CONCAT_LINES空間集計ファンクション(「空間集計ファンクション」を参照)を使用すると、単一線または複数線の複数の2次元ジオメトリを連結できます。
geometry1
およびgeometry2
が異なる座標系に基づく場合、例外が発生します。
例
次の例では、2つの単一線ストリング・ジオメトリを連結します。
-- Concatenate two touching lines: one from (1,1) to (5,1) and the -- other from (5,1) to (8,1). SELECT SDO_UTIL.CONCAT_LINES( SDO_GEOMETRY(2002, NULL, NULL, SDO_ELEM_INFO_ARRAY(1,2,1), SDO_ORDINATE_ARRAY(1,1, 5,1)), SDO_GEOMETRY(2002, NULL, NULL, SDO_ELEM_INFO_ARRAY(1,2,1), SDO_ORDINATE_ARRAY(5,1, 8,1)) ) FROM DUAL; SDO_UTIL.CONCAT_LINES(SDO_GEOMETRY(2002,NULL,NULL,SDO_ELEM_INFO_ARRAY(1,2,1),SDO -------------------------------------------------------------------------------- SDO_GEOMETRY(2002, NULL, NULL, SDO_ELEM_INFO_ARRAY(1, 2, 1), SDO_ORDINATE_ARRAY( 1, 1, 5, 1, 8, 1))