 |
PK_hole_component_t |
|
struct PK_hole_component_s
{
PK_hole_comp_t hole_comp; --- type of hole component
double depth; --- depth at bottom of component
double data; --- a parameter of component (eg radius)
PK_ENTITY_t entity; --- entity associated with component
};
typedef struct PK_hole_component_s PK_hole_component_t;
This structure contains information defining a hole component.
Used in:
PK_detail_def_hole_t
PK_FACE_details_hole_o_t
Its fields are:
'hole_comp' this specifies the type of the hole component. For its values
see PK_hole_comp_t
'depth' the distance along the hole's 'origin's 'axis' from the hole's
'origin's 'location' to the bottom of the component. Note
that since the hole's 'origin's axis points out of the hole,
all depths are negative. Components for which no
meaningful depth can be calculated will have the 'depth' set to
0.0
'data' a parameter of the component; see table below
'entity' an entity associated with the component; see table below
The 'data' and 'entity' associated with each hole component type are:
'hole_comp' 'data' 'entity'
PK_hole_comp_cyl_c radius cylindrical surface
PK_hole_comp_cone_in_c semi-vertical angle conical surface
PK_hole_comp_cone_out_c semi-vertical angle conical surface
PK_hole_comp_blnd_in_concave_c blend radius blend surface
PK_hole_comp_blnd_out_concave_c blend radius blend surface
PK_hole_comp_blnd_in_convex_c blend radius blend surface
PK_hole_comp_blnd_out_convex_c blend radius blend surface
PK_hole_comp_zero_depth_in_c annular width surface
PK_hole_comp_zero_depth_out_c annular width surface
PK_hole_comp_open_end_c radius (Note 1) face (Note 2)
PK_hole_comp_closed_end_c radius surface (Note 3)
PK_hole_comp_unknown_c N/A face
If the option 'face_tracking' is PK_LOGICAL_true, the surface entities will
instead be new groups containing the surface and all faces making up the
component. Applications should delete these groups after use.
Note 1: In cases where the bounding edge or edges of the hole at the open end
do not form a circle orthogonal to the hole's axis, the value given
here is the distance from the hole's axis to the extreme point on
those bounding edges in the direction of the hole's axis. For the
bottom open end of a through hole the point is the extreme in the
opposite direction to the hole's axis.
Note 2: Generally this is the face into which the hole is drilled. If the
open end of a hole is not within a single face then the face is
selected which maximises the depth of the hole (ie such that all of
the hole is "below" the face). If more than one face satisfies this
condition then one is arbitrarily selected.
Note 3: If a closed hole is closed by a face bounded by a single loop, then
that face's surface will be returned. A blind drilled hole will have a
PK_hole_comp_cone_in_c component which reduces the radius to zero and
the following PK_hole_comp_closed_end_c component will have its
entity set to its conical surface and the data will be zero.