UNPKG

starling-framework

Version:

A fast, productive library for 2D cross-platform development.

88 lines 3.44 kB
import Texture from "../textures/Texture"; import Painter from "../rendering/Painter"; import IFilterHelper from "./IFilterHelper"; import FragmentFilter from "./FragmentFilter"; declare namespace starling.filters { /** * The DropShadowFilter class lets you add a drop shadow to display objects. * * To create the shadow, the class internally uses the BlurFilter. * */ export class DropShadowFilter extends FragmentFilter { /** * Creates a new DropShadowFilter instance with the specified parameters. * * * * @param distance the offset distance of the shadow, in points. * * @param angle the angle with which the shadow is offset, in radians. * * @param color the color of the shadow. * * @param alpha the alpha value of the shadow. Values between 0 and 1 modify the * * opacity; values > 1 will make it stronger, i.e. produce a harder edge. * * @param blur the amount of blur with which the shadow is created. Note that high * * values will cause the number of render passes to grow. * * @param quality the quality of the shadow blur, '1' being the best (range 0.1 - 1.0) * * @param inner if enabled, the shadow will be drawn inside the object. * * @param knockout if enabled, only the shadow will be drawn. * */ constructor(distance?: number, angle?: number, color?: number, alpha?: number, blur?: number, quality?: number, inner?: boolean, knockout?: boolean); /** * @inheritDoc */ override dispose(): void; /** * @private */ override process(painter: Painter, helper: IFilterHelper, input0?: Texture, input1?: Texture, input2?: Texture, input3?: Texture): Texture; /** * The color of the shadow. @default 0x0 */ get color(): number; set color(value: number) /** * The alpha value of the shadow. Values between 0 and 1 modify the opacity; * * values > 1 will make it stronger, i.e. produce a harder edge. @default 0.5 */ get alpha(): number; set alpha(value: number) /** * The offset distance for the shadow, in points. @default 4.0 */ get distance(): number; set distance(value: number) /** * The angle with which the shadow is offset, in radians. @default Math.PI / 4 */ get angle(): number; set angle(value: number) /** * The amount of blur with which the shadow is created. * * The number of required passes will be <code>Math.ceil(value) × 2</code>. * * @default 1.0 */ get blur(): number; set blur(value: number) /** * The quality used for blurring the shadow (range: 0.1 - 1). * * Forwarded to the internally used <em>BlurFilter</em>. */ get quality(): number; set quality(value: number) /** * Indicates whether or not the shadow is an inner shadow. The default is * * <code>false</code>, an outer shadow (a shadow around the outer edges of the object). */ get inner(): boolean; set inner(value: boolean) get_inner(): boolean; set_inner(value: boolean): boolean; /** * If enabled, applies a knockout effect, which effectively makes the object's fill * * transparent. @default false */ get knockout(): boolean; set knockout(value: boolean) get_knockout(): boolean; set_knockout(value: boolean): boolean; } } export default starling.filters.DropShadowFilter;