 |
PK_BODY_section_with_sheet |
|
PK_ERROR_code_t PK_BODY_section_with_sheet
(
--- received arguments ---
PK_BODY_t target, --- Body to be sectioned by sheet
PK_BODY_t sheet, --- Sectioning sheet body
const PK_BODY_section_o_t *options, --- Sectioning options
--- returned arguments ---
PK_section_r_t *const results --- front/back faces/bodies
)
This function sections the target body with the tool sheet body.
NOTE: This function is deprecated and has been superseded by
PK_BODY_section_with_sheet_2.
Specific Errors:
PK_ERROR_contradictory_request Bad combination of options or
data for type of boolean (MILD)
PK_ERROR_missing_geom Target or tool has incomplete
geometry (SERIOUS)
PK_ERROR_wire_body Target or tool is a wire body (MILD)
PK_ERROR_partial_coi_found Boolean failure due to to partial
coincidence (SERIOUS)
PK_ERROR_non_manifold Non-manifold result (SERIOUS)
PK_ERROR_boolean_failure Inconsistent arguments, or
internal error (SERIOUS)
PK_ERROR_general_body Target or tool is general body (MILD)
PK_ERROR_same_tool_and_target Tool body is also target body (MILD)
PK_ERROR_not_sheet Tool is not a sheet body (MILD)
PK_ERROR_instanced_tools Instanced tool bodies (MILD)
Introduction
The given target body is sectioned with the given tool sheet body. The target
body is modified and the sectioning sheet body is deleted.
When the sectioning sheet body intersects with the target body, the body will
be split, by the sheet faces, into two or more parts. The resulting
bodies are split into two lists, those in front of the section sheet
and those behind it. These bodies are returned in the 'front_bodies' and
'back_bodies' arrays of the 'results' structure. All new faces associated
with these bodies which lie in the sectioning sheet are returned in
the 'front_faces' and 'back_faces' arrays of the 'results' structure.
The front of the section sheet is regarded as the side to which the
face normals point.
Target bodies, or disjoint components of the target body, that do not
clash with the section sheet will be left unchanged. It is not defined
whether they will be returned in the front_bodies or in the back_bodies
array.
The operation of the sheet sectioning function may be controlled via
an option structure passed to the function as an input argument.
This function operates similarly to the 'PK_BODY_boolean' function,
especially with regard to the phases of the boolean algorithm,
rules concerning tag persistence and error reporting. Refer to
the 'PK_BODY_boolean' documentation for information about these
subjects.
Section Options
The function can be instructed, via the 'fence' option, to :
o Only calculate the bodies and faces in front of the section sheet.
o Only calculate the bodies and faces behind the section sheet.
o Calculate the bodies and faces in front and behind the section sheet.
Returned Arguments
Refer to the 'PK_section_r_t' documentation for information
about the arrays returned in the 'results' structure.
Function Restrictions
The following restrictions apply to sheet sectioning operations :
o This function does not support general bodies.
Option Restrictions
The following options within the input 'options' are
ignored by this function :
o 'check_fa'
o 'default_tol'
o 'max_tol'
o 'tracking'