 |
PK_OFFSET_sf_t |
|
struct PK_OFFSET_sf_s
{
PK_SURF_t underlying_surface; ---underlying surface
double offset_distance; ---an offset distance
};
typedef struct PK_OFFSET_sf_s PK_OFFSET_sf_t;
Specific Errors:
PK_ERROR_invalid_object an invalid argument has been passed
PK_ERROR_su_self_intersect the offset surface would self-intersect
PK_ERROR_cant_offset underlying surface cannot be offset
Used in:
PK_OFFSET_ask
PK_OFFSET_create
An offset surface is defined to be the smooth, continuous (G1) surface obtained
from the underlying surface by adding to each point on it the unit normal
vector scaled by the 'offset_distance'. The 'offset_distance' must be of
non-zero length.
The 'offset_distance' is positive in the normal direction as provided by
PK_SURF_eval_with_normal and negative in the opposite direction.
For swung, swept and parametric surface types, the surface created will be
checked for self-intersections caused by degeneracies on the underlying
surface.