 |
PK_pattern_rectilinear_o_t |
|
struct PK_pattern_rectilinear_o_s
{
int o_t_version; --- version number of structure
PK_VECTOR_t origin; --- origin of pattern (0, 0, 0)
PK_VECTOR1_t direction1; --- first direction (1, 0, 0)
PK_VECTOR1_t direction2; --- second direction (0, 1, 0)
PK_VECTOR1_t direction3; --- third direction (0, 0, 1)
double length1; --- length in the first direction (0)
double length2; --- length in the second direction (0)
double length3; --- length in the third direction (0)
};
typedef struct PK_pattern_rectilinear_o_s PK_pattern_rectilinear_o_t;
This structure contains information defining a rectilinear pattern. A
transform will be applied to ensure the minimum corner of the 'skewbox' of
the 'cell' will be mapped to the origin of the rectilinear pattern.
Specific Errors:
PK_ERROR_vectors_coplanar 'direction1', 'direction2', and 'direction3'
are either co-planar or co-linear
(MILD)
PK_ERROR_basis_not_right_handed 'direction1', 'direction2', and 'direction3'
don't form a right-handed triplet
(MILD)
PK_ERROR_distance_le_0 'length1', 'length2', or 'length3' is
zero or negative
(MILD)
Used in:
PK_pattern_form_t
Description of fields:
'origin' Origin of pattern
'direction1' First direction, corresponding to the 'i_axis' direction of
the 'skewbox' within the 'cell'
'direction2' Second direction, corresponding to the 'j_axis' direction of
the 'skewbox' within the 'cell'
'direction3' Third direction, corresponding to the 'k_axis' direction of
the 'skewbox' within the 'cell'
'length1' Length between adjacent repetitions in first direction
'length2' Length between adjacent repetitions in second direction
'length3' Length between adjacent repetitions in third direction
Note: the three directions need not be orthogonal.
Note: in order to restrict the pattern to fewer than three dimensions, the
corresponding repetitions in the 'bound' structure should be set to [0, 0].