L_VecEnumVertices
#include "lvkrn.h"
L_INT EXT_FUNCTION L_VecEnumVertices(pVector, pEnumProc, pUserData, dwFlags)
pVECTORHANDLE pVector; |
/* pointer to a vector handle */ |
pVECTORENUMVERTICESPROC pEnumProc; |
/* pointer to a callback function */ |
/* pointer to more parameters for the callback */ | |
L_UINT32 dwFlags; |
/* flags that determine which object's flags to enumerate */ |
Enumerates all vertices within the vector handle.
Parameter |
Description |
|
pVector |
Pointer to a vector handle. All vertices within this vector handle will be enumerated. |
|
pEnumProc |
Pointer to the callback function used to enumerate the vertices within the vector handle. The callback function must adhere to the function prototype described in VECTORENUMVERTICESPROC. |
|
pUserData |
Void pointer that you can use to pass one or more additional parameters that the callback function needs. |
|
|
To use this feature, assign a value to a variable or create a structure that contains as many fields as you need. Then, in this parameter, pass the address of the variable or structure, casting it to L_VOID L_FAR *. The callback function, which receives the address in its own pUserData parameter, can cast it to a pointer of the appropriate data type to access your variable or structure. |
|
|
If the additional parameters are not needed, you can pass NULL in this parameter. |
|
dwFlags |
Flags that determine which object's vertices to enumerate. Possible values are: |
|
|
Value |
Meaning |
|
0 |
Enumerate the vertices of all objects. |
|
VECTOR_FLAGS_SELECTED_ONLY |
Enumerate the vertices of selected objects only. |
Returns
SUCCESS |
The function was successful. |
< 1 |
An error occurred. Refer to Return Codes. |
Comments
This function will enumerate all the vertices in the given vector.
Note: |
In OpenGL and DirectX, you cannot enumerate vertices, therefore this function will do nothing. |
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: |
Example
/* This example will do a certain user-defined algorithm on all vertices inside the drawing. */
static L_INT EXT_CALLBACK MyEnumProc( pVECTORHANDLE, pVECTORPOINT, L_VOID *);
void DoAlgorithm1( pVECTORHANDLE pVector )
{
/* enumerate vertices */
L_VecEnumVertices( pVector, MyEnumProc, NULL, 0L );
}
static L_INT EXT_CALLBACK MyEnumProc( pVECTORHANDLE pVector, pVECTORPOINT pVertex, L_VOID *pUserData)
{
/* call our custom filter function */
DoSoAndSoWithVertex( pVertex );
return( 1 ); /* Continue enumeration */
}