struct PK_BODY_make_lofted_body_o_s
{
int o_t_version;
--- version number
PK_BODY_loft_end_conds_t end_conditions;
--- behaviour of the lofted
--- surfaces at the end profiles
int n_guide_wires;
--- number of guide wires (0)
const PK_BODY_t *guide_wires;
--- guide wires (NULL)
PK_BODY_simplify_t simplify;
--- level of simplification
--- (PK_BODY_simplify_yes_c)
PK_BODY_topology_t topology_form;
--- topology of resultant body
--- (PK_BODY_topology_minimal_c)
PK_BODY_loft_matches_t matches;
--- how to match vertices on
--- different profiles
int n_intermediate_derivs;
--- the number of intermediate
--- profiles that have derivative
--- constraints specified (0)
const PK_BODY_loft_deriv_conds_t *intermediate_derivs;
--- array of derivative
--- constraints (NULL)
const int *intermediate_profiles;
--- array of profile indices
--- (NULL)
int n_guide_derivs;
--- the number of guide wires
--- that have derivative
--- constraints specified (0)
const PK_BODY_loft_deriv_conds_t *guide_derivs;
--- array of derivative
--- constraints for guide wires
--- (NULL)
const int *guide_indices;
--- array of guide indices
--- (NULL)
};
typedef struct PK_BODY_make_lofted_body_o_s PK_BODY_make_lofted_body_o_t;
This structure holds optional controls on the construction of a lofted body.
The option structure for making a lofted body has the following fields :
end_conditions A structure to specify particular constraints on the
derivatives across the start and/or end profiles. It
is also used to specify a periodic loft.
n_guide_wires The number of guide curves for the loft.
guide_wires An array of oriented connected manifold wire bodies
that specify the guide curves for the loft. Each guide
wire is required to cut across all profiles though a
set of matched profile vertices at the wire's own
vertices, subject to relevant vertex tolerances.
simplify A token used to indicate the level of simplification
to be attempted on the lofted surfaces generated to
form the faces of the lofted body.
topology_form A token used to indicate how the resultant body should
be divided into faces.
matches A structure containing the profile vertex matching
information. The structure provides a map between the
vertices on one profile with those on the next.
n_intermediate_derivs The number of intermediate profiles (ie, profiles other
than the start or end profile) that have derivative
conditions specified.
intermediate_derivs An array of length equal to n_intermediate_derivs
specifying derivative conditions for each profile as
given in intermediate_profiles.
intermediate_profiles An array of length equal to n_intermediate_derivs
giving the index of the profile that has the derivative
conditions given by the corresponding entry in
intermediate_derivs. Each entry should be an int
between 1 and n_profiles-2 for non-periodic lofting,
or between 1 and n_profiles-1 for periodic lofting.
n_guide_derivs The number of guide wires with derivative constraints.
This must be a number between 0 and n_guides.
guide_derivs An array of length equal to n_guide_derivs specifying
derivative conditions for each guide wire as given in
guide_indices.
guide_indices An array of length equal to n_guide_derivs giving the
index of the guide wire (as given in guide_wires)
that has the derivative conditions given by the
corresponsing entry in guide_derivs.