7.15 SDO_NFE.GET_LINES_MATCH_LP_RULE
Format
SDO_NFE.GET_LINES_MATCH_LP_RULE( model_id IN SDO_NUMBER, lp_rule_id IN NUMBER, lines IN SDO_INTERACT_LINE_FEAT_ARRAY, ) RETURN DBMS_SQL.NUMBER_TABLE;
Description
Given an set of line features, calculates the group of them that match a connectivity line-point rule. Returns a DBMS_SQL.NUMBER_TABLE object with the indexes of the lines in the input array that match the line-point rule.
Parameters
- model_id
-
NFE model identifier.
- lp_rule_id
- Connectivity line-point rule identifier. Must exist in the LINE_POINT_RULE table.
- lines
- Array of line features where the search will take place. (The SDO_INTERACT_LINE_FEAT_ARRAY type is described in Data Types Used for NFE Connectivity Rules.)
Usage Notes
This function is mainly used after the SDO_NFE.GET_INTERACTION_GROUPS function, which returned a group of mixed line features where some line features matched a specific connectivity rule and some did not.
Examples
The following example finds the lines that meet a connectivity line-point rule from interacting groups.
DECLARE model_id NUMBER := 1; lp_rule_id NUMBER := 1; lines SDO_INTERACT_LINE_FEAT_ARRAY; match_lines dbms_sql.NUMBER_TABLE; inter_grps SDO_INTERACTION_ARRAY; BEGIN -- find interaction groups inter_grps := sdo_nfe.get_interaction_groups( model_id, sdo_nfe.RULE_TYPE_LINE_LINE, 1 ); FOR i IN 1..inter_grps.count loop lines := inter_grps(i).lines; match_lines := sdo_nfe.get_lines_match_lp_rule( model_id, lp_rule_id, lines ); END loop; END; /
Parent topic: SDO_NFE Package Subprograms