PK_FACE_identify_blends_o_t   

struct PK_FACE_identify_blends_o_s
    {
    int                    o_t_version;     --- version number of options
                                            --- structure
    PK_double_constraint_t limit_radii;     --- only return blends with radii
                                            --- that satisfy the constraint
                                            --- ((PK_comparison_always_c,
                                            ---     (0, 0)))
    PK_blend_convexity_t   convexity;       --- only blends of the
                                            --- specified convexity will be
                                            --- returned.
                                            --- (PK_blend_convexity_any_c)
    PK_LOGICAL_t           allow_pi;        --- whether to return blends
                                            --- that span pi radians
                                            --- (PK_LOGICAL_true)
    double                 tolerance;       --- tolerance (1.0e-6)
    PK_LOGICAL_t           want_radii;      --- whether to return the blends
                                            --- radii (PK_LOGICAL_false)
    PK_LOGICAL_t           want_convexities;--- whether to return the blends
                                            --- convexities
                                            --- (PK_LOGICAL_false)
    PK_blend_follow_branch_t
                           follow_branch;   --- whether to follow all possible
                                            --- branches when building blend
                                            --- chains
                                            --- (PK_blend_follow_branch_yes_c)
    PK_LOGICAL_t           have_propagation_angle;
                                            --- whether a 'propagation_angle'
                                            --- has been specified
                                            --- (PK_LOGICAL_false)
    double                 propagation_angle;
                                            --- maximum angular tolerance
                                            --- for propagation (0.0)
    PK_local_ops_update_t  update;          --- update flag
                                            --- (PK_local_ops_update_default_c)
    PK_chain_optimise_t    optimise_chains; --- how the blend chains are to be
                                            --- post-processed
                                            --- (PK_chain_optimise_none_c)
    PK_blend_report_blends_t
                           report_blends;   --- whether to create Parasolid
                                            --- reports for blends that
                                            --- have been identified
                                            --- (PK_blend_report_blends_no_c)
    PK_blend_distant_unders_t
                           distant_unders;
                                            --- whether to identify blends
                                            --- whose underlying faces are
                                            --- not adjacent to the blend
                                            --- (PK_blend_distant_unders_no_c)
                                            --- [NF]
    };
typedef struct PK_FACE_identify_blends_o_s PK_FACE_identify_blends_o_t;


The PK_FACE_identify_blends_o_t structure provides the following controls:


Specific Errors:
    PK_ERROR_bad_combination     (MILD) 'follow_branch' is set to
                                        PK_blend_follow_branch_no_c but
                                        'ident_type' is not set to either
                                        PK_blend_identify_exc_chain_c or
                                        PK_blend_identify_inc_chain_c.

    PK_ERROR_bad_value           (MILD) 'propagation_angle' is < 0.0 or > 2*pi

    PK_ERROR_bad_tolerance       (MILD) 'tolerance' is too small

Used in:

PK_FACE_identify_blends


Description of fields:

'limit_radii'            The 'limit_radii' structure restricts which blend
                         faces are returned such that only blend faces with
                         radii that satisfy the limit(s) specified are
                         returned.  The option consists of an interval, and a
                         comparison operation that is used to compare the
                         values with the interval.  The default is to return
                         all blends, regardless of their radii. See
                         Identifying blends based on radius for more
                         information.

'convexity'              This option limits the blend faces returned such that
                         only blend faces of the requested convexity are
                         returned.  The default value is
                         PK_blend_convexity_any_c. See
                         Identifying blends based on convexity for
                         more information.

'allow_pi'               This option controls whether blend faces that have
                         cross-section circles that span pi radians are
                         returned.
                         The default is PK_LOGICAL_true.

'tolerance'              This is the tolerance used by the blend
                         identification.
                         The default value is 1.0e-06.

'want_radii'             If this flag is set to PK_LOGICAL_true the radii of
                         the blend faces found will be returned. See
                         Controlling returned information for more
                         information.

'want_convexities'       If this flag is set to PK_LOGICAL_true the
                         convexities of the blend faces found will be returned.
                         See Controlling returned information for
                         more information.

'follow_branch'          If this flag is set to PK_blend_follow_branch_no_c
                         and 'ident_type' is set to
                         PK_blend_identify_exc_chain_c or
                         PK_blend_identify_inc_chain_c, then at a branch face
                         if at least one of its adjacent blend faces is
                         supplied then the blend chain will only propagate onto
                         the supplied adjacent blend faces.  If none of the
                         branch face's adjacent blend faces are supplied then
                         the blend chain propagates onto all adjacent blend
                         faces.
                         If this flag is set to PK_blend_follow_branch_yes_c
                         the blend chain may propagate from a branch face to
                         faces that were not supplied as well as to faces that
                         were supplied. See here for more
                         information.

'have_propagation_angle' Setting this flag to PK_LOGICAL_true indicates that
                         a 'propagation_angle' has been supplied and this will
                         be used to control propagation past sharp eges.

'propagation_angle'      The maximum angle in radians at which propagation past
                         sharp edges is allowed.  It is used whenever
                         'have_propagation_angle' is set to PK_LOGICAL_true.
                         See here for more information.

'update'                 The default value allows applications to take
                         advantage of the latest enhancements under blend
                         identification.  To maintain consistency when
                         rebuilding models created in a previous version of
                         Parasolid, a non-default value should be specified.

                         The default value is PK_local_ops_update_default_c.

'optimise_chains'        This option controls whether blend chains identifed
                         are to be optimised for subsequent operations.

                         The default value is PK_chain_optimise_none_c.

'report_blends'          If this is set to PK_blend_report_blends_yes_c, then
                         a report will be returned for each identified blend
                         in the Parasolid report stream.  Each report will
                         contain a record of type PK_REPORT_record_type_3_c
                         with a status of PK_REPORT_3_identified_blend_c and
                         will contain information on the identified blend.  See
                         documentation for PK_REPORT_3_t for further details.

                         The default value is PK_blend_report_blends_no_c.

'distant_unders'         This option controls whether blend faces with non-
                         adjacent under faces will be identified.

                         The default value is PK_blend_distant_unders_no_c.