L_LTVKRN_API L_INT L_VecCopy(pDst, pSrc, dwFlags)
Copies one vector handle to another.
Pointer to the target vector handle.
Pointer to the source vector handle.
Flag that indicate the characteristics of the copy process. Possible values are:
|0||Copy the entire vector handle from the source vector to the destination vector.|
|VECTOR_FLAGS_SELECTED_ONLY||Copy only selected objects from the source vector to the destination vector.|
|VECTOR_FLAGS_REPLACE||Empty the destination vector handle before copying.|
|VECTOR_FLAGS_RENAME_DUPLICATES||Renames duplicate layer names if found. This flag is only valid when VECTOR_FLAGS_REPLACE is not specified. The toolkit will add a suffix (0, 1, 2, etc) to the layer name if duplicated. Checking will be aborted when the suffix value reaches 999 and no unique name can be created.|
|VECTOR_FLAGS_COPY_INTO_ACTIVE_LAYER||Copies objects and layers into the active layer of the destination vector.|
|VECTOR_FLAGS_COPY_LAYERS_ONLY||Copies all layers and objects from the source vector to the destination vector. Transformation, camera, viewport and all other properties of the destination vector will not be effected.|
|SUCCESS||The function was successful.|
|< 1||An error occurred. Refer to Return Codes.|
Copies an entire drawing of a source vector structure and places it into a destination structure.
This also copies all fields in the VECTORHANDLE structure.
This function will not copy the window attachment, if pSrc is attached to a window, pDst will not be attached to the same window.
Required DLLs and Libraries
This example will try to load a file into a given vector handle,
it will try to not alter the provided handle if the file cannot be loaded.
L_LTVKRNTEX_API L_INT VecCopyExample(
VECTORHANDLE TempVector; /* Temporary vector handle. */
/* Load the file into the temporary vector. */
nRet = L_VecLoadFile( pszFile, &TempVector, NULL, NULL );
if( nRet != SUCCESS )
/* Copy the new vector into the provided one. */
nRet = L_VecCopy( pVector, &TempVector, VECTOR_FLAGS_REPLACE );
if( nRet != SUCCESS )
L_VecFree( &TempVector );
/* Free the temporary vector before returning. */
nRet = L_VecFree( &TempVector );