Brings up the Vector Scale dialog.
#include "ltwrappr.h"
virtual L_INT LVectorDialog::DoModalVectorScale(hWndParent=NULL, pScale=NULL, pOrigin=NULL)
Handle of the window that owns the dialog.
Pointer to a VECTORPOINT structure that contains scale values. The values present in pScale when the function is called are used to initialize the dialog. If this parameter is NULL when the function is called, the values used to initialize the dialog will come from the vector handle. When this function returns, this parameter is updated with the values entered through the dialog.
Pointer to a VECTORPOINT structure that contains the origin of the scale. (The point about which the scaling occurs.) If pOrigin is not NULL, scaling occurs around this point. If pOrigin is NULL, the center of scaling is the accumulative center of the objects to be scaled.
Value | Meaning |
---|---|
SUCCESS | The function was successful. |
ERROR_DLG_CANCELED | User clicked the Cancel button. |
If no objects are currently selected in the source vector handle, all of the objects in the vector handle will be scaled in the dialog.
If there are selected objects inside the source vector handle, only those objects will be scaled in the dialog.
L_INT LVectorDialog__DoModalVectorScaleExample(HWND hWnd)
{
L_INT nRet;
VECTORPOINT scalePoint = {2,2,2,0};
VECTORPOINT originPoint= {0,0,0,0};
LVectorBase Vector;
LVectorDialog VectorDlg;
L_TCHAR szTemp[100];
nRet = Vector.Load(MAKE_IMAGE_PATH(TEXT("random.dxf")));
if(nRet != SUCCESS)
return nRet;
VectorDlg.SetVector(&Vector);
VectorDlg.EnablePreview();
VectorDlg.EnableAutoProcess();
//double the scale
nRet = VectorDlg.DoModalVectorScale(hWnd, &scalePoint, &originPoint);
if(nRet != SUCCESS)
return nRet;
wsprintf(szTemp,
TEXT("Scale(%d, %d, %d)"),
(int)scalePoint.x,
(int)scalePoint.y,
(int)scalePoint.z );
MessageBox(hWnd, szTemp, TEXT(""), MB_OK);
return SUCCESS;
}