PK_GEOM_copy   

PK_ERROR_code_t         PK_GEOM_copy
(
--- received arguments ---
int                     n_geoms,
const PK_GEOM_t         geoms[],
const PK_GEOM_copy_o_t *options,

--- returned arguments ---
PK_GEOM_copy_r_t *const copies
)


This function copies the given geometries while preserving the geometric
dependencies amongst them.


Specific Errors:
    PK_ERROR_copy_failed            (SERIOUS)   The copying operation
                                                failed

    PK_ERROR_contradictory_request  (MILD)      The options are mutually
                                                contradictory

    PK_ERROR_not_implemented        (MILD)      Returned if any 2D BCURVE of an
                                                spcurve is explicitly appearing
                                                in 'geoms'



Each geometry in 'geoms' is copied. The array 'geoms' may contain any mixture
of principal, construction or orphan geometry. It may contain repeated entries
of any geometry, but in this case the geometry will be copied once only.
The copying procedure preserves all the geometric dependencies between the
given input geometries. The copying of the geometric dependents of the input
geometries is controlled by the options passed in and done in a manner that
preserves in the copies the relationships present between them.

The structure PK_GEOM_copy_o_t contains user control options. Finer control
over the copying process ( including setting the destination of the copies,
which geometric dependents are copied and whether any attributes owned by the
input geometries are copied ) can be exercised through the options structure.
See its documentation for more details.

The return structure PK_GEOM_copy_r_t contains the copies of the input
geometries ( in the same order as the input geometries were specified ). Note
that if a geometry was specified a multiple number of times as input only one
copy will be made but it will appear a multiple number of times in the output.
The return structure does also contain entity tracking information which holds
information about all geometries that were copied as part of this call,
regardless of whether these geometries were copied by an explicit request
( i.e. given as input to the function ) or implicitly as geometric dependents
of the input geometries. See its documentation for more details.