LVectorBase::GetActiveLayer

#include "ltwrappr.h"

virtual L_INT LVectorBase::GetActiveLayer(pVectorLayer);

LVectorLayer * pVectorLayer;

/* pointer to vector layer object */

Gets the active layer inside the class object's vector.

Parameter

Description

pVectorLayer

Pointer to an LVectorLayer object to be updated with the active layer.

Returns

SUCCESS

The function was successful.

< 1

An error occurred. Refer to Return Codes.

Comments

Some functions will use the active layer when NULL is passed for a pLVectorLayer parameter. This makes it easier to work with the toolkit when layers are not needed.

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::SetActiveLayer.

Topics:

Working with Vector Layers

Example

#define MAKE_IMAGE_PATH(pFileName) TEXT("C:\\Users\\Public\\Documents\\LEADTOOLS Images\\")pFileName
// This example copies all objects from the active layer of the vector source
// to the destination vector (active layer)
class LMyVectorLayer1: public LVectorLayer
{
public:
   LVectorBase *m_pVectorDst;
public:
   LMyVectorLayer1() {};
   virtual ~LMyVectorLayer1(){};
   virtual L_INT EnumObjectsCallBackGAL(pVECTORHANDLE pVector, pVECTOROBJECT pObject);
};
L_INT LMyVectorLayer1::EnumObjectsCallBackGAL(pVECTORHANDLE pVector, pVECTOROBJECT pObject)
{
   LVectorBase   VectorBase(pVector);
   LVectorObject VectorObject(pObject, &VectorBase);
   m_pVectorDst->CopyObject(&VectorObject);
   VectorBase.SetHandle(NULL, FALSE);
   return SUCCESS ;
}
L_INT LVectorBase__GetActiveLayerExample(HWND hWnd, LVectorBase *pVectorDst)
{
   UNREFERENCED_PARAMETER(hWnd);
   //Load a source vector
   L_INT       nRet;
   LVectorBase VectorSrc;
   nRet = VectorSrc.Load(MAKE_IMAGE_PATH(TEXT("random.dxf")));
   if(nRet != SUCCESS)
      return nRet;
   //Get the active layer of source
   LMyVectorLayer1  VectorLayer;
   nRet = VectorSrc.GetActiveLayer(&VectorLayer);
   if(nRet != SUCCESS)
      return nRet;
   //Set the destination vector where objects from source will be copied
   VectorLayer.m_pVectorDst = pVectorDst;
   //Enumerate all objects in Active layer (and copy to destination vector)
   nRet = VectorLayer.EnumObjects();
   if(nRet != SUCCESS)
      return nRet;
   return SUCCESS;
}