LVectorBase::CopyLayer

#include "ltwrappr.h"

virtual L_INT LVectorBase::CopyLayer(pVectorLayerDst, pVectorLayerSrc, dwFlags=0);

LVectorLayer * pVectorLayerDst;

/* pointer to the destination layer object */

LVectorLayer * pVectorLayerSrc;

/* pointer to the source layer object */

L_UINT32 dwFlags;

/* copy flags */

Copies the contents of one layer to another.

This function is available in the LEADTOOLS Vector Imaging Pro Toolkit.

Parameter

Description

pVectorLayerDst

Pointer to an LVectorLayer object that points to the destination layer. Pass NULL to copy the source vector layer into the active layer.

pVectorLayerSrc

Pointer to an LVectorLayer object that points to the source layer. This parameter cannot be NULL.

dwFlags

Flag that indicates whether or not to empty the destination layer before copying. Possible values are:

 

Value

Meaning

 

0

Do not empty the destination layer before copying.

 

VECTOR_FLAGS_REPLACE

Empty the destination layer before copying.

Returns

SUCCESS

The function was successful.

< 1

An error occurred. Refer to Return Codes.

Comments

The destination layer can be in the same vector handle as the source layer, or it can be in a different vector handle.

An LVectorLayer object can be obtained by calling LVectorBase::EnumLayers, LVectorBase::GetLayerByName or LVectorBase::GetLayerByIndex.

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.

See Also

Functions:

LVectorBase::AddLayer, LVectorLayer::GetLayerDesc, LVectorBase::GetLayerByName, LVectorBase::GetLayerByIndex

Topics:

Working with Vector Layers

Example

This example will copy the first layer (and objects) from a vector into the active layer of pVector.

#define MAKE_IMAGE_PATH(pFileName) TEXT("C:\\Users\\Public\\Documents\\LEADTOOLS Images\\")pFileName
L_INT LVectorBase__CopyLayerExample(HWND hWnd, LVectorBase *pVector)
{
   UNREFERENCED_PARAMETER(hWnd);
   L_INT          nRet;
   LVectorLayer   VectorLayer;
   //Load a source vector
   LVectorBase VectorSrc;
   nRet = VectorSrc.Load(MAKE_IMAGE_PATH(TEXT("random.dxf")));
   if(nRet != SUCCESS)
      return nRet;
   //Get first layer of source
   nRet = VectorSrc.GetLayerByIndex(0, &VectorLayer);
   if(nRet != SUCCESS)
      return nRet;
   //Copy layer and objects into pVector active layer
   nRet = pVector->CopyLayer(NULL, &VectorLayer);   
   if(nRet != SUCCESS)
      return nRet;
   return SUCCESS;
}