6.3 SDO_NET.ADD_FEATURE

構文

SDO_NET.ADD_FEATURE(
     feature_layer_id  IN NUMBER,
     feature_id        IN NUMBER,
     feature_elements  IN SDO_NET_FEAT_ELEM_ARRAY DEFAULT NULL,
     child_feature_ids IN SDO_NET_LAYER_FEAT_ARRAY DEFAULT NULL,
     check_integrity   IN BOOLEAN DEFAULT TRUE);

説明

フィーチャ・レイヤーにフィーチャを追加します。

パラメータ

feature_layer_id

フィーチャの追加先となるフィーチャ・レイヤーのIDを指定します。

feature_id

フィーチャ・レイヤーに追加されるフィーチャのIDを指定します。

feature_elements

追加されるフィーチャのフィーチャ要素を指定します。このパラメータがNULLの場合、このフィーチャに対して定義されているフィーチャ要素はありません。(SDO_NET_FEAT_ELEM_ARRAY型の詳細は、「フィーチャ・モデリングに使用するデータ型」を参照してください。)

child_feature_ids

フィーチャとともに追加される、フィーチャの子フィーチャのIDを指定します。このパラメータがNULLの場合、追加される子フィーチャはありません。(SDO_NET_LAYER_FEAT_ARRAY型の詳細は、「フィーチャ・モデリングに使用するデータ型」を参照してください。)

check_integrity

TRUE (デフォルト)を指定すると、入力ネットワーク要素が存在するかどうかを確認し、存在しない場合はエラーが生成されます。FALSEを指定すると、入力ネットワーク要素が存在するかどうかを確認しません。

使用上のノート

フィーチャ・レイヤー内のフィーチャを更新するには、SDO_NET.UPDATE_FEATUREプロシージャを使用します。

次の例では、リンク1314上の20%の位置にある点に関連付けられているフィーチャを追加します。

DECLARE
  feature_layer_id NUMBER;
  feature_id NUMBER := 1;
  elements SDO_NET_FEAT_ELEM_ARRAY := SDO_NET_FEAT_ELEM_ARRAY();
  link_id NUMBER := 1314;
BEGIN
  feature_layer_id := sdo_net.get_feature_layer_id('GRID', 'POI');
  elements.extend;
  elements(1) := SDO_NET_FEAT_ELEM(SDO_NET.FEAT_ELEM_TYPE_POL, link_id, 0.2, null);
  sdo_net.add_feature(feature_layer_id, feature_id, elements, null);  
END;
/