PK_SURF_fix_degens_o_t   

struct PK_SURF_fix_degens_o_s
    {
    int                  o_t_version;     --- version number of option
                                          --- structure
    double               tolerance;       --- tolerance for approximating
                                          --- surfaces (1.0e-5)
    double               target_radii[2]; --- lower bounds for the radius of
                                          --- curvature of the surface
                                          --- (0.0,0.0)
    int                  n_normals;       --- number of normals (0)
    const PK_VECTOR1_t  *normals;         --- normals of the degeneracies
                                          --- (NULL)
    const int           *normal_indices;  --- indices linking 'normals' to each
                                          --- degeneracy
    };

typedef struct PK_SURF_fix_degens_o_s PK_SURF_fix_degens_o_t;



This structure holds optional controls for fixing degeneracies on a surface.

Used in:

PK_SURF_fix_degens


The option structure for fixing degeneracies on a surface has the following
fields :

'tolerance'         The tolerance to be used when approximating the surface.
                    (1.0e-5)

'target_radii'      Lower bounds for the minimum radii of curvature of the
                    resultant surface. The function will produce a surface
                    that, in the vicinity of the degeneracies, has minimum
                    radii of curvatures greater than these values. The first
                    entry in the array is for the minimum radius in the
                    direction of the surface normal, and the second entry is
                    for the direction opposite to the surface normal. Both
                    entries must be non-negative. Note the resultant surface
                    may still have a lower radius of curvature, if the input
                    'surf' is also tightly curved not near a degeneracy.
                    (0.0,0.0)

'n_normals'         Number of normals supplied. (0)

'normals'           An array of length 'n_normals'. For each degeneracy, an
                    optional normal may be supplied, specifying the normal that
                    the resultant degeneracy should have.

                    Normals may only be supplied for degeneracies where all of
                    the following are true:
                      o 'have_position' is equal to PK_LOGICAL_true.
                      o The degeneracy lies on a boundary of the surface, and
                        extends along the entire range of that boundary.
                    The resultant surface will still have a degeneracy at each
                    of these positions (and the resultant degeneracy will be
                    parametric), so this option allows control over the normal
                    of such degeneracies. (NULL)

'normal_indices'    An array of length 'n_normals' giving the index of the
                    degeneracy in 'degens' that will have the normal given by
                    the corresponding entry in 'normals'.
                    (NULL)