#include "ltwrappr.h"
virtual L_INT LBitmap::Light (pLightInfo, uLightNo, uBright, uAmbient, crAmbientClr, uFlags = 0)
pLIGHTINFO pLightInfo; |
array of light sources information |
L_UINT uLightNo; |
number of light sources |
L_UINT uBright; |
image intensity |
L_UINT uAmbient; |
ambient intensity |
COLORREF crAmbientClr; |
ambient color |
L_UINT32 uFlags; |
flags |
Adds many spots of directed light sources to the bitmap.
Parameter |
Description |
pLightInfo |
Pointer to an array of LIGHTINFO structures that contains information on each light source. |
uLightNo |
The number of light sources. |
uBright |
Value that represents the brightness of the ambient light of the entire image. This can be any number that is 0 or greater. If it is 0 the image will be black. This value is divided internally by 100. |
uAmbient |
Factor used when mixing the ambient color with the image. |
crAmbientClr |
The COLORREF value that specifies the ambient color of the light sources in the pLightInfo array. |
uFlags |
Reserved for future use. Must be 0. |
SUCCESS |
The function was successful. |
< 1 |
An error occurred. Refer to Return Codes. |
This function supports 12 and 16-bit grayscale and 48 and 64-bit color images. Support for 12 and 16-bit grayscale and 48 and 64-bit color images is available only in the Document/Medical toolkits.
To update a status bar or detect a user interrupt during execution of this function, refer to LBase::EnableStatusCallback.
To obtain this effect, the following settings were used with the function:
pLightInfo:
{
ptCenter = (pBitmap->Width/2, pBitmap->Height/2);
uWidth = pBitmap->Width;
uHeight = pBitmap->Width * 4/3;
nAngle = 13500;
uBright = 100;
uEdge = 75;
crFill = RGB(0,0,255);
uOpacity = 100;
uFlag = LGT_SPOTLIGHT;
}
uLightNo = 1;
uBright = 100;
uAmbient = 100;
crAmbientClr = RGB(255,255,0);
This function does not support signed data images. It returns the error code ERROR_SIGNED_DATA_NOT_SUPPORTED if a signed data image is passed to this function.
This function does not support 32-bit grayscale images. It returns the error code ERROR_GRAY32_UNSUPPORTED if a 32-bit grayscale image is passed to this function.
Required DLLs and Libraries
LTIMGSFX For a listing of the exact DLLs and Libraries needed, based on the toolkit version, refer to Files To Be Included With Your Application. |
Win32, x64.
L_INT LBitmap__LightExample(LAnimationWindow *BitmapWindow)
{
LIGHTINFO LightInfo;
LightInfo.uStructSize = sizeof(LIGHTINFO);
LightInfo.crFill = RGB(255, 255, 255);
LightInfo.nAngle = 0;
LightInfo.ptCenter.x = BitmapWindow->GetWidth()/2;
LightInfo.ptCenter.y = BitmapWindow->GetHeight()/2;
LightInfo.uEdge = 0;
LightInfo.uBright = 100;
LightInfo.uFlag = LGT_SPOTLIGHT;
LightInfo.uHeight = min(BitmapWindow->GetHeight(), BitmapWindow->GetWidth())/2;
LightInfo.uWidth = max(BitmapWindow->GetHeight(), BitmapWindow->GetWidth())/2;
LightInfo.uOpacity = 100;
return BitmapWindow->Light(&LightInfo, 1, 100, 100, RGB(255,255,255));
}
Help Collections
Raster .NET | C API | C++ Class Library | HTML5 JavaScript
Document .NET | C API | C++ Class Library | HTML5 JavaScript
Medical .NET | C API | C++ Class Library | HTML5 JavaScript
Medical Web Viewer .NET
Multimedia
Direct Show .NET | C API | Filters
Media Foundation .NET | C API | Transforms
Supported Platforms
.NET, Java, Android, and iOS/macOS Assemblies
Imaging, Medical, and Document
C API/C++ Class Libraries
Imaging, Medical, and Document
HTML5 JavaScript Libraries
Imaging, Medical, and Document