Available in LEADTOOLS Vector Imaging toolkits. |
L_VecGetObjectParallelogram
#include "lvkrn.h"
L_LVKRN_API L_INT L_VecGetObjectParallelogram(pVector, pObject, pMin, pMax, dwFlags)
const pVECTORHANDLE pVector; |
/* pointer to a vector handle */ |
const pVECTOROBJECT pObject; |
/* pointer to a vector object */ |
pVECTORPOINT pMin; |
/* pointer to a VECTORPOINT structure */ |
pVECTORPOINT pMax; |
/* pointer to a VECTORPOINT structure */ |
L_UINT32 dwFlags; |
/* flag */ |
Gets the parallelogram that contains the specified object(s).
Parameter |
Description |
|
pVector |
Pointer to a vector handle. |
|
pObject |
Pointer to a VECTOROBJECT structure that references an object. If this parameter is not NULL, the top left point of this objects bounding parallelogram will be copied into pLeftTop and the bottom right point of the parallelogram will be copied into pRightBottom. |
|
|
If this parameter is NULL, dwFlags will control which objects parallelogram to copy into pLeftTop and pRightBottom. |
|
pMin |
Pointer to a VECTORPOINT structure to be updated with the minimum point of the bounding parallelogram of the specified object. |
|
pMax |
Pointer to a VECTORPOINT structure to be updated with the maximum point of the bounding parallelogram of the specified object. |
|
dwFlags |
Flag that indicates which parallelogram to use when updating the pLeftTop and pRightBottom parameters. This flag is valid only if pObject is NULL. If pObject is not NULL, this parameter is ignored. Possible values are: |
|
|
Value |
Meaning |
|
0 |
pMin and pMax will be updated with the parallelogram containing all objects within the vector handle. |
|
VECTOR_FLAGS_SELECTED_ONLY |
pMin and pMax will be updated with the parallelogram containing all selected objects within the vector handle. |
|
VECTOR_FLAGS_TRANSFORMED |
Apply transformation settings on pMin and pMax to be updated with the parallelogram. |
Returns
SUCCESS |
The function was successful. |
< 1 |
An error occurred. Refer to Return Codes. |
Comments
Obtains the bounding parallelogram of a single object, several selected objects, or all objects within the specified vector handle.
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: |
L_VecSelectObject, L_VecIsObjectSelected, L_VecGetObjectRect |
Example
This example will show the logical extent of the drawing, in a message box.
L_INT VecGetObjectParallelogramExample(pVECTORHANDLE pVector) { L_INT nRet; VECTORPOINT Min; /* Left-top point */ VECTORPOINT Max; /* Right-bottom point */ L_TCHAR szBuffer[ 80 ]; /* Buffer */ /* Get the parallelogram of all objects */ nRet = L_VecGetObjectParallelogram( pVector, NULL, &Min, &Max, 0L ); if(nRet != SUCCESS) return nRet; /* Format into a buffer */ _stprintf_s( szBuffer,80, TEXT("%.3f, %.3f, %.3f - %.3f, %.3f, %.3f"), Min.x, Min.y, Min.z, Max.x, Max.y, Max.z ); /* Show in a message box */ MessageBox( NULL, szBuffer, TEXT("Drawing extent"), 0 ); return SUCCESS; }