#include "lvkrn.h"
L_LVKRN_API L_INT L_VecCopy(pDst, pSrc, dwFlags)
pVECTORHANDLE pDst; |
pointer to a vector handle |
const pVECTORHANDLE pSrc; |
pointer to a vector object |
L_UINT32 dwFlags; |
copy flags |
Copies one vector handle to another.
Parameter | Description | |
pDst | Pointer to the target vector handle. | |
pSrc | Pointer to the source vector handle. | |
dwFlags | Flag that indicate the characteristics of the copy process. Possible values are: | |
Value | Meaning | |
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
LVKRN For a listing of the exact DLLs and Libraries needed, based on the toolkit version, refer to Files To Be Included With Your Application. |
Functions: |
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_INT VecCopyExample(
L_TCHAR* pszFile,
pVECTORHANDLE pVector)
{
L_INT nRet;
VECTORHANDLE TempVector; /* Temporary vector handle. */
/* Load the file into the temporary vector. */
nRet = L_VecLoadFile( pszFile, &TempVector, NULL, NULL );
if( nRet != SUCCESS )
return nRet;
/* Copy the new vector into the provided one. */
nRet = L_VecCopy( pVector, &TempVector, VECTOR_FLAGS_REPLACE );
if( nRet != SUCCESS )
{
L_VecFree( &TempVector );
return nRet;
}
/* Free the temporary vector before returning. */
nRet = L_VecFree( &TempVector );
return nRet;
}