 |
PK_BODY_make_patterned |
|
PK_ERROR_code_t PK_BODY_make_patterned
(
--- received arguments ---
PK_BODY_t body, --- core body
double tolerance, --- tolerance
const PK_BODY_make_patterned_o_t *options, --- options
--- returned arguments ---
PK_BODY_make_patterned_r_t *const results --- results
)
This function creates a body made of patterned repetitions of the given body.
Specific Errors:
PK_ERROR_unsuitable_entity Supplied 'body' has classic geometry.
(MILD)
PK_ERROR_bad_type The type of supplied 'body' is neither
sheet nor solid.
(MILD)
PK_ERROR_bad_mvx_normals Supplied 'body' has a mesh with stored
mvertex normals.
(MILD)
PK_ERROR_vectors_coplanar Either the supplied 'cell' or the
rectilinear pattern are tolerantly flat.
(MILD)
PK_ERROR_too_many_facets Geometry on result would have too many
facets.
(SERIOUS)
PK_ERROR_pattern_failed Failed to create a patterned body.
(MILD/SERIOUS)
This function creates a body comprised of repetitions of the given 'body' in
the form of the given pattern.
The 'cell' tessellates to create a pattern of cells containing copies of the
core 'body'. The 'bounds' determines the number of repetitions of the 'cell'
used in each direction. Optionally a 'form' and/or 'callback' may be supplied
to relocate and deform the pattern. If both are supplied the callback is
applied after any deformation from the 'form'.
Matches between adjacent repetitions are defined by tolerantly coincident
topologies.
'body' must have only facet geometry.
The resulting body will have as little topology as possible, and may be
disjoint.