![]() |
PK_TRANSF_transform_2 |
PK_ERROR_code_t PK_TRANSF_transform_2 ( --- received arguments --- PK_TRANSF_t transf_1, --- first transformation PK_TRANSF_t transf_2, --- second transformation const PK_TRANSF_transform_o_t *options, --- options --- returned arguments --- PK_TRANSF_transform_r_t *const results --- results ) This function applies a transform to another transform. The returned 'transf_out' is the result of applying 'transf_2' to 'transf_1'. By default, this is the result of multiplying 'transf_1' by 'transf_2'. If used to transform an entity, 'transf_out' has the same effect as firstly transforming the entity by 'transf_1' and then secondly by 'transf_2'. Other operations are available via the 'operation_1' and 'operation_2' options. If 'transf_1' and 'transf_2' are represented by A and B respectively, then the resultant combined transform is given by the following table: operation_1 | operation_2 | Result ---------------------------------- none | none | B.A none | invert | (B^-1).A invert | none | B.(A^-1) invert | invert | (B^-1).(A^-1) The returned 'transf_out' will be a copy, unless 'modify' is set to PK_LOGICAL_true, in which case it will be equal to 'transf_1' (i.e., the supplied 'transf_1' will be modified).