#include "ltwrappr.h"

virtual L_INT LBitmap::FunctionalLight(pLightParams, uFlags = 0)

pLIGHTPARAMS pLightParams;

lighting parameters

L_UINT32 uFlags;


Adds light to the bitmap according to a function-based distribution. This light will be generated by one of the following methods: linear, quadratic, sine, cosine, or using freehand points.




Pointer to the LPLIGHTPARAMS structure that contains information about the required light.


Reserved for future use. Must be 0.



The function was successful.

< 1

An error occurred. Refer to Return Codes.


Controls the brightness of the bitmap according to the method selected for generating the light.

This function supports all bits/pixel supported by LEADTOOLS.

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.

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


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.

See Also


LBitmap::BricksTexture, LBitmap::Canvas, LBitmap::Clouds, LBitmap::ColoredBalls, LBitmap::DiffuseGlow, LBitmap::DisplaceMap, LBitmap::Fragment, LBitmap::HalfTonePattern, LBitmap::MaskConvolution, LBitmap::MosaicTiles, LBitmap::Offset, LBitmap::Perspective, LBitmap::PlasmaFilter, LBitmap::Pointillist, LBitmap::RomanMosaic, LBitmap::Vignette, LBitmap::ZigZag, LBitmap::AddNoise, LBitmap::Emboss, LBitmap::Mosaic, LBitmap::MotionBlur, LBitmap::Oilify, LBitmap::Posterize, LBitmap::RemoveRedeye, LBitmap::Solarize, LBitmapBase::Underlay, LBitmap::BumpMap, LBitmap::Cubism, LBitmap::DrawStar, LBitmap::Dry, LBitmap::FreePlaneBend, LBitmap::FreeRadBend, LBitmap::GlassEffect, LBitmap::GlowFilter, LBitmap::LensFlare, LBitmap::Light, LBitmap::Ocean, LBitmap::PlaneBend, LBitmap::Plane, LBitmap::SampleTarget, LBitmap::Tunnel, LBitmap::Bending, LBitmap::Cylindrical, LBitmap::FreeHandShear, LBitmap::FreeHandWave, LBitmap::Impressionist, LBitmap::Pixelate, LBitmap::Polar, LBitmap::Punch, LBitmap::RadialBlur, LBitmap::RadWave, LBitmap::Ripple, LBitmap::Spherize, LBitmap::Swirl, LBitmap::Wave, LBitmap::Wind, LBitmap::ZoomBlur, LBitmap::ZoomWave, LBitmap::DiceEffect, LBitmap::RingEffect


Raster Image Functions: Artistic Effects


Applying Artistic Effects


L_INT LBitmap__FunctionalLightExample(LBitmap *pLeadBitmap)  
   /* This example generates a linear lighting effect with a center at (uXOrigin,uYOrigin). */ 
   LIGHTPARAMS  LightParams;  
   /* Initialize all needed members in the LIGHTPARAMS structure to achieve the linear lighting effect. */ 
   LightParams.uStructSize  = sizeof(LIGHTPARAMS);  
   LightParams. uRAmp  =  75;  
   LightParams. uFlags  =  FL_LINEAR_QUADRATIC | FL_LINEAR_OUTER;  
   LightParams. uXOrigin  =   (L_UINT)(pLeadBitmap->GetWidth ()/2);  
   LightParams. uYOrigin  =   (L_UINT)(pLeadBitmap->GetHeight()/2);  
   /* Apply the linear lighting effect */ 
   return pLeadBitmap->FunctionalLight (&LightParams);  
Help Version 20.0.2019.3.12
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2019 LEAD Technologies, Inc. All Rights Reserved.

LEADTOOLS Raster Imaging C++ Class Library Help