#include "ltivw.h"
L_LTIVW_API L_INT EXT_FUNCTION L_DispContainerAddCobbAngle(hCellWnd, nSubCellIndex, hFirstLine, hSecondLine)
L_HWND hCellWnd |
handle to the cell window |
L_INT nSubCellIndex; |
index into the image list attached to the cell |
HANNOBJECT hFirstLine; |
the first line of the c obb-angle structure |
HANNOBJECT hSecondLine; |
the second line of the c obb-angle structure |
Creates a cobb-angle, which is a text display the angle between two lines, using the specified annotation lines (hFirstLine and hSecondLine).
| Parameter | Description |
| hCellWnd | A handle to the window that represents the cell on which the function's effect will be applied. |
| nSubCellIndex | A zero-based index into the image list attached to the cell specified in nCellIndex. This sub-cell contains the image that contains the annotation container. Pass -2 to refer to the selected sub-cell. |
| hFirstLine | Handle of the first annotation line that is used to create the cobb-angle. |
| hSecondLine | Handle to the second annotation line that is used to creat the cobb-angle. |
| SUCCESS | The function was successful. |
| < 1 | An error occurred. Refer to Return Codes. |
To retrieve the cobb angle value, use the function L_DispContainerGetCobbAngleValue.
To delete a cobb angle, use the functionL_DispContainerRemoveCobbAngle.
Required DLLs and Libraries
| LTIVW For a listing of the exact DLLs and Libraries needed, based on the toolkit version, refer to Files To Be Included With Your Application. |
This function generate a cobb angle out of the 2 lines drawn in the container.
L_INT nCounter = 0;L_INT CALLBACK FindLine(HANNOBJECT hObject, L_VOID * pUserData){pHANNOBJECT hLinesObjects = (pHANNOBJECT)pUserData;L_UINT uType;L_AnnGetType(hObject, &uType);if (uType == ANNOBJECT_LINE){hLinesObjects[nCounter] = hObject;nCounter++;}return SUCCESS;}L_DOUBLE L_DispContainerAddCobbAngleExample(HWND hCellWnd){L_INT nSubCellIndex;L_DispContainerGetActiveSubCell(hCellWnd, &nSubCellIndex, 0);HANNOBJECT hAnnContainer;L_DispContainerGetAnnotationContainer(hCellWnd, nSubCellIndex, &hAnnContainer, 0);HANNOBJECT hLinesObjects[256];memset(hLinesObjects, 0, sizeof(HANNOBJECT) * 256);nCounter = 0;L_AnnEnumerate(hAnnContainer, FindLine, hLinesObjects, ANNFLAG_RECURSE, NULL);if (nCounter < 2){MessageBox(hCellWnd, TEXT("You have to have two lines on the cell to create the cobb angle"), TEXT("Error"), MB_OK);return 0.0;}L_INT nRet = L_DispContainerAddCobbAngle(hCellWnd, nSubCellIndex, hLinesObjects[nCounter - 1], hLinesObjects[nCounter - 2]);L_DOUBLE dAngle;nRet = L_DispContainerGetCobbAngleValue(hCellWnd, 0, hLinesObjects[nCounter - 1], &dAngle);if (nRet != SUCCESS){MessageBox(hCellWnd, TEXT("The line you sent is not attached to any cobb angle"), TEXT("Error"), MB_OK);}return dAngle;}