 |
PK_FACE_imprint_cus_normal_o_t |
|
struct PK_FACE_imprint_cus_normal_o_s
{
int o_t_version; --- version number
PK_imprint_complete_t
imprint_complete; --- whether to complete imprint
--- on target faces
--- (PK_imprint_complete_no_c)
PK_imprint_tracking_t
tracking_type; --- format of returned tracking
--- records
--- (PK_imprint_tracking_basic_c)
PK_imprint_proj_dist_t
use_max_projection_dist; --- whether and how to limit
--- imprints to those where the
--- projected curves upon a face
--- lie within
--- 'max_projection_dist' of the
--- curve causing the imprint
--- ( PK_imprint_proj_dist_no_c )
double max_projection_dist; --- (0.0)
PK_LOGICAL_t imprint_coi_exactly; --- whether to imprint curves
--- exactly where they are
--- coincident with the surface
--- geometry of the body.
--- (PK_LOGICAL_false)
PK_continuity_t
preferred_continuity; --- level of continuity to impose
--- when making projection curves.
--- (PK_continuity_g1_c)
};
typedef struct PK_FACE_imprint_cus_normal_o_s PK_FACE_imprint_cus_normal_o_t;
The option structure defines options applicable to imprinting a set of
curves on a set of faces.
Used in:
PK_FACE_imprint_cus_normal
Description of fields:
'imprint_complete' Complete the imprint on the target faces so
that the end vertices of the imprint lie on
any edge or any laminar edge of the target
faces. The incomplete imprint is completed by
intersecting the target faces with a plane
orthogonal to the target at the end vertices
of the incomplete imprint tangential to the
imprinted curve. Depending on the value of this
option, the imprint will be completed along the
direction of this plane until either:
o it meets any edge belonging to the target faces
o it meets any laminar edge belonging to the
target faces.
A completed imprint that self-intersects
will be trimmed at the point of self-intersection.
For more information, see here.
'tracking_type' Determines the format of the tracking records
that are returned when curves are imprinted.
There are two possible values for this option:
o PK_imprint_tracking_basic_c (default)
o PK_imprint_tracking_curves_c
For this function the information returned when
setting this option to PK_imprint_tracking_basic_c
is in the same format as pre V17.1.
The returned PK_TOPOL_track_r_t structure contains
tracking records of type PK_TOPOL_track_create_c
each of which contains the original face and the
imprinted edges on that face. When imprint
completion is performed additional information is
returned associated with edges imprinted to complete
imprints, tracking records are returned containing
the original topological element (face or edge)
upon which edges have been imprinted along with a
list of edges imprinted upon that element.
Setting the tracking_type option to
PK_imprint_tracking_curves_c returns information
that associates imprinted edges with both the
imprint curve from which they originate and the
original topology upon which they are imprinted.
The tracking information is returned by returning
a track record for each imprinted edge. Each edge
has two original_topols. The first of these is the
input curve which gave rise to this edge. The
second is the original topology on the body where
this edge is created. This is usually a face, but
where the edge is imprinted along a pre-existing
edge that edge is returned instead. Imprinted
curves arising from any requested imprint
completion are tracked by the same method, but the
original topology associated with the curve is
always null.
'use_max_projection_dist' If this is set to PK_imprint_proj_dist_whole_c
then edges are only imprinted where the projection
of the curve upon a face lies wholly within
'max_projection_dist' of the curve causing the
imprint. The default behaviour when this field is
set to PK_imprint_proj_dist_no_c is to imprint all
curves regardless of the distance of the curve from
its projections upon the faces of the body. See
here for more information.
'max_projection_dist' If 'use_max_projection_dist' is set to
PK_imprint_proj_dist_whole_c then edges are only
imprinted when the projected curve upon a face
lies wholly within this distance of the curve
causing the imprint. See here for more
information.
The default value is 0.0.
`imprint_coi_exactly` If 'imprint_coi_exactly' is set to PK_LOGICAL_true
then curves coincident with their target surfaces
are imprinted exactly where appropriate, rather
than being imprinted by projection.
See here for more information.
The default value is PK_LOGICAL_false.
`preferred_continuity` Only PK_continuity_g1_c and PK_continuity_c2_c
are permitted. If 'preferred_continuity' is set
to PK_continuity_c2_c, then projection curves
are fitted with c2 continuity when not exact.
It is also required that 'tracking_type' be set
to PK_imprint_tracking_curves_c when using
PK_continuity_c2_c.
See here for more information.
The default value is PK_continuity_g1_c.
Generated on: Fri, 04 Oct 2024 12:19:06 GMT