PK_SURF_eval_curvature_handed   


PK_ERROR_code_t     PK_SURF_eval_curvature_handed
(
--- received arguments ---
PK_SURF_t    surf,                          --- surface
PK_UV_t      uv,                            --- parametric position
PK_HAND_t    u_hand_dir,                    --- evaluate u from left or right
PK_HAND_t    v_hand_dir,                    --- evaluate v from left or right

--- returned arguments ---
PK_VECTOR1_t *const normal,                --- surface normal
PK_VECTOR1_t *const principal_direction_1, --- principal direction 1
PK_VECTOR1_t *const principal_direction_2, --- principal direction 2
double       *const principal_curvature_1, --- principal curvature 1
double       *const principal_curvature_2  --- principal curvature 2
)


This function behaves like PK_SURF_eval_curvature but takes additional
arguments ( u_hand_dir and v_hand_dir ) as the input.


Specific Errors:
    PK_ERROR_eval_failure          failed to evaluate posn. or normal at uv
    PK_ERROR_bad_parameter         uv not suitable for surf
    PK_ERROR_at_singularity        uv is at a singularity of surf


This is the handed version of PK_SURF_eval_curvature which calculates the
normal, principal directions and principal curvatures at a given parametric
position on the surface patch indicated by an additional pair of direction
arguments. If the surface has discontinuity at the parameter position, these
arguments will determine which side of the discontinuity will be calculated
( see PK_SURF_eval_handed for the definition ).