 |
PK_TOPOL_fctab_strip_zigzag_t |
|
struct PK_TOPOL_fcstr_strip_zigzag_s
{
int strip;
int fin;
};
typedef struct PK_TOPOL_fcstr_strip_zigzag_s
PK_TOPOL_fcstr_strip_zigzag_t;
struct PK_TOPOL_fctab_strip_zigzag_s
{
PK_TOPOL_fcstr_strip_zigzag_t *data;
int length;
};
typedef struct PK_TOPOL_fctab_strip_zigzag_s
PK_TOPOL_fctab_strip_zigzag_t;
Used in:
PK_TOPOL_facet_table_t
This is a support structure for PK_TOPOL_facet_2_r_t. It is a lookup
table which 'groups' the fins in the facet strip together so that their head
vertices follow a zigzag ordering along the strip.
NOTE: The first three fins bound the first facet in anti-clockwise order, the
following facet is in clockwise order and so on.
Example:
v0--f0---v2-------v4-------v6-------v8-------v10
| /| /| /| /| /|
| / | / | / | / | / |
| / | / | / | / | / |
f1 f2 f3 f4 f5 f6 f7 f8 f9 f10 |
| / | / | / | / | / |
| / | / | / | / | / |
| / | / | / | / | / |
|/ |/ |/ |/ |/ |
v1-------v3-------v5-------v7-------v9--f11--v11
v0--f0---v2-------v4-------v6-------v8-------v10
| /| /| /| /| /
| / | / | / | / | /
| / | / | / | / | /
f1 f2 f3 f4 f5 f6 f7 f8 f9 f10
| / | / | / | / | /
| / | / | / | / | /
| / | / | / | / | /
|/ |/ |/ |/ |/
v1-------v3-------v5-------v7-------v9
The first facet strip contains an even number of facets, its 'strip_zigzag' is
represented by the sequence:
f0 f1 f2 f3 f4 f5 f6 f7 f8 f9 f10 and f11
The second facet strip contains an odd number of facets, its 'strip_zigzag' is
represented by the sequence:
f0 f1 f2 f3 f4 f5 f6 f7 f8 f9 and f10
Where f0 is the fin starting at v2 and ending at v0,
f1 is the fin starting at v0 and ending at v1,
f2 is the fin starting at v1 and ending at v2,
. . .
. . .
. . .
f9 is the fin starting at v8 and ending at v9,
f10 is the fin starting at v9 and ending at v10 and
f11 is the fin starting at v9 and ending at v11
Each facet_strip is assigned an integer value from 0 to
('number_of_strips' - 1).