PK_ERROR_code_t PK_GEOM_transform
(
--- received arguments ---
PK_GEOM_t in_geom, --- geometric entity to be transformed
PK_TRANSF_t transf, --- transformation
double tolerance, --- precision for replacing geometry
--- returned arguments ---
PK_GEOM_t *const out_geom, --- transformed entity
PK_LOGICAL_t *const exact --- whether result is exact.
)
This function transforms the given geometric entity by the given
transformation.
Specific Errors:
PK_ERROR_request_not_supported bad combination of geometry and transf
PK_ERROR_bad_component transformation matrix has perspective terms
out_geom is a new entity which is the result of applying transformation
transf to geometric entity in_geom.
If in_geom is a point then out_geom is a point.
For curves and surfaces, out_geom will satisfy the first possible of the
following list of criteria:
1 - be of the same class as in_geom,
2 - be exactly coincident with the transformation of in_geom,
3 - not deviate by more than the given tolerance from the transformation of
in_geom.
The returned argument exact is PK_LOGICAL_true if either in_geom is a
point, or criterion 1 or 2 has been satisfied. If out_geom only satisfies
criterion 3, then exact is returned as PK_LOGICAL_false.
If in_geom has any geometric dependents then new geometric entities are
created as transformations of these.
If in_geom is a cone, then it is not possible to transform it by a
transformation involving non-uniform scale. An attempt to do this will lead to
the error PK_ERROR_request_not_supported.
The transformation matrix must not contain perspective terms