#include "ltwrappr.h"
virtual L_INT LVectorClone::SetGroup(pVectorGroup)
LVectorGroup *pVectorGroup; |
pointer to a vector group object |
Associates a vector group with a vector clone.
Parameter |
Description |
pVectorGroup |
Pointer to an LVectorGroup object to be associated with the clone object. |
SUCCESS |
The function was successful. |
< 1 |
An error occurred. Refer to Return Codes. |
A vector clone object must be associated with a vector group before it can be added to an LVectorBase object, using LVectorBase::AddObject or LVectorLayer::AddObject.
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: |
|
Topics: |
This example will add a three square to a LVectorBase object and to a LVectorGroup object. A "clone" vector object will be created from the group, and displayed with purple hatched brush.
L_VOID CreateRectangle(LVectorBase *pVector,LVectorGroup *pGroup,VECTORPOINT point0,VECTORPOINT point1,COLORREF crPen,COLORREF crBrush){VECTORRECTANGLE Rectangle;Rectangle.Point[0] = point0;Rectangle.Point[1] = point1;Rectangle.Brush.nSize = sizeof(VECTORBRUSH);Rectangle.Brush.VectorBrushStyle = VECTORBRUSH_STANDARD;Rectangle.Brush.BrushType.StandardBrush.LogBrush.lbColor = crBrush;Rectangle.Brush.BrushType.StandardBrush.LogBrush.lbStyle = BS_SOLID;Rectangle.Pen.nSize = sizeof( VECTORPEN );Rectangle.Pen.bExtPen = FALSE;Rectangle.Pen.NewPen.LogPen.lopnStyle = PS_SOLID;Rectangle.Pen.NewPen.LogPen.lopnWidth.x = 2;Rectangle.Pen.NewPen.LogPen.lopnWidth.y = 2;Rectangle.Pen.NewPen.LogPen.lopnColor = crPen;LVectorRectangle VectorRectangle(&Rectangle);pVector->AddObject(&VectorRectangle);pGroup->AddObject(&VectorRectangle);}L_INT LVectorClone__SetGroupExample(HWND hWnd, LVectorBase *pVector){UNREFERENCED_PARAMETER(hWnd);//Create a new groupL_INT nRet;LVectorGroup VectorGroup;VECTORGROUPDESC GroupDesc;VECTORPOINT point0, point1;COLORREF color;LVectorLayer Layer;VECTORLAYERDESC LayerDesc;nRet = VectorGroup.GetGroupDesc(&GroupDesc);if(nRet != SUCCESS)return nRet;lstrcpy(GroupDesc.szName, TEXT("My New Group"));nRet = VectorGroup.SetGroupDesc(&GroupDesc);if(nRet != SUCCESS)return nRet;nRet = pVector->AddGroup(&VectorGroup);if(nRet != SUCCESS)return nRet;//Create three rectangle objects and add to the group//Add first rectanglepoint0.x = 10; point0.y = 10; point0.z = 10;point1.x = 30; point1.y = 30; point1.z = 10;color = RGB(255,0,0);CreateRectangle(pVector, &VectorGroup, point0, point1, color, color);//Add second rectanglepoint0.x = 30; point0.y = 30; point0.z = 10;point1.x = 50; point1.y = 50; point1.z = 10;color = RGB(0,255,0);CreateRectangle(pVector, &VectorGroup, point0, point1, color, color);//Add third rectanglepoint0.x = 50; point0.y = 50; point0.z = 10;point1.x = 70; point1.y = 70; point1.z = 10;color = RGB(0,0,255);CreateRectangle(pVector, &VectorGroup, point0, point1, color, color);// create an empty layerZeroMemory( &LayerDesc, sizeof( LayerDesc ) );LayerDesc.nSize = sizeof( LayerDesc );lstrcpy( LayerDesc.szName, TEXT("My Layer"));LayerDesc.bVisible = TRUE;LayerDesc.bLocked = FALSE;LayerDesc.dwTag = 0L;Layer.SetLayerDesc(&LayerDesc);//Create a clone of the groupVECTORCLONE Clone;LVectorClone VectorClone;nRet = VectorClone.SetGroup(&VectorGroup);if(nRet != SUCCESS)return nRet;nRet = VectorClone.LockObject(&Clone);if(nRet != SUCCESS)return nRet;Clone.dwFlags = VECTOR_CLONE_USE_PEN | VECTOR_CLONE_USE_BRUSH;Clone.Pen.bExtPen = FALSE;Clone.Pen.NewPen.LogPen.lopnColor = RGB(0,0,0);Clone.Brush.BrushType.StandardBrush.LogBrush.lbColor = RGB(255,0,255);Clone.Brush.BrushType.StandardBrush.LogBrush.lbStyle = BS_HATCHED;Clone.Point.x = 40;Clone.Point.y = 40;Clone.Point.z = 40;Clone.Rotation.x = 0;Clone.Rotation.y = 0;Clone.Rotation.z = 45;nRet = VectorClone.UnlockObject(&Clone);if(nRet != SUCCESS)return nRet;nRet = pVector->AddLayer(&Layer);if(nRet != SUCCESS)return nRet;nRet = Layer.AddObject(&VectorClone);if(nRet != SUCCESS)return nRet;//~LVectorClone() destructor gets called when VectorClone object goes out of scopereturn SUCCESS;}