 |
PK_GEOM_enlarge |
|
PK_ERROR_code_t PK_GEOM_enlarge
(
--- received arguments ---
int n_geoms, --- number of geometry entities
const PK_GEOM_t geoms[], --- geometries to be enlarged
const PK_TRANSF_t transfs[], --- transforms to be applied to the
--- enlarged geometries ( this array
--- may be NULL else it may contain
--- PK_ENTITY_null entries )
PK_scale_factor_t factor, --- scale factor
const PK_GEOM_enlarge_o_t *options, --- options structure
--- returned arguments ---
PK_GEOM_enlarge_r_t *const results --- results
)
This function enlarges the given geometric entities by the given factor.
Specific Errors:
PK_ERROR_request_not_supported A member of 'geoms' is not supported for
enlargement. (MILD)
PK_ERROR_has_parent A member of 'geoms' is not orphan. (MILD)
PK_ERROR_wrong_transf A member of 'transfs' contains scale,
shear, or perspective components. (MILD)
This function will enlarge the supplied geometries by the supplied scale
factor. The centre of scaling is the origin.
If supplied, each enlarged geometry will be transformed by the corresponding
transform in the 'transfs' array.
Note that some geometry may be trimmed into one or more pieces to avoid size
box violations.
A trimming box may be supplied to partially or completely exclude some enlarged
geometry from the results. However, some geometries, such as analytic curves
and surfaces, that sit partially outside the supplied trimming box after
enlargement may not be trimmed if they are valid with respect to the size box.
If a transform is supplied, the trimming is applied to the transformed
geometry.