 |
PK_FACE_offset_2 |
|
PK_ERROR_code_t PK_FACE_offset_2
(
--- received arguments ---
int n_faces, --- number of faces > 0
const PK_FACE_t faces[], --- faces to offset
const double offsets[], --- offset for each face
double tolerance, --- tolerance
const PK_FACE_offset_o_t *options, --- options
--- returned arguments ---
PK_TOPOL_track_r_t *const tracking, --- tracking information
PK_TOPOL_local_r_t *const results --- status information
)
This function offsets faces of a solid or sheet body.
NOTE : This function supersedes PK_FACE_offset.
Specific Errors:
PK_ERROR_cant_offset (SERIOUS) offsetting failure
PK_ERROR_bad_tolerance (MILD) proposed edge tolerance is too small
PK_ERROR_unsuitable_entity (MILD) body is not a sheet or solid body
PK_ERROR_wrong_entity_in_array (MILD) given faces are not from same body
Introduction
Each face in faces is offset by the corresponding distance in offsets.
A positive offset indicates an offset outwards (i.e. in the direction of the
face normal) and a negative offset an offset inwards.
Under some circumstances the function may need to replace exact geometry by
tolerant geometry. For instance, in the case of a sheet body some edge
geometry at the boundary may have to be approximated by SP curves in order
to generate a boundary curve on the offset sheet. In all such situations the
new geometry will have a tolerance less than or equal to the tolerance
supplied through the tolerance argument.
User options
The PK_FACE_offset_o_t structure contains user control options. See
its documentation for details.
Tracking
The PK_TOPOL_track_t structure contains topology tracking information on
the operation. In the case of this function, only tracking information
records of the type PK_TOPOL_track_derive_c may be returned, if faces
have been split or merged during the operation.
Error handling
If this function returns PK_ERROR_no_errors, the result of the operation
will be indicated by the value of the status field of the results
structure. When this value is not PK_local_status_ok_c or
PK_local_status_nocheck_c, it indicates an operation failure and an array
of entities involved in this failure is returned through the field
error_entities of the results structure, when possible.
For more information regarding the failure status code and the error_entities,
refer to the PK documentation of the PK_TOPOL_local_r_t structure.
Generated on: Fri, 15 Dec 2023 13:16:24 GMT