Skip to content
ChartForgeX
Class

VisualDropShadow

ChartForgeX.Effects

Namespace
ChartForgeX.Effects
Assembly
ChartForgeX
Modifiers
sealed

Immutable alpha shadow for a captured viewport or a retained native surface.

Inheritance

  • object
  • VisualDropShadow

Remarks

Offsets and signed spread use integer logical units, multiplied once by capture density. Positive spread dilates source alpha; negative spread erodes it with transparent exterior samples. Gaussian targets use the existing three-box approximation and one final sRGB RGBA8 conversion.

Usage

Explore 11 API references to this type

This type appears in these public API surfaces even when no hand-authored example is attached directly to the page.

Accepted by parameters 2

Constructors

public VisualDropShadow(ChartColor color, int offsetX, int offsetY, double sigmaX, double? sigmaY = null, int spread = 0, bool orderedDither = true, double opacity = 1, ChartRect? relativeRegion = null) #

Creates a literal alpha shadow. No existing scene or theme opts into it automatically.

Parameters

color ChartForgeX.Primitives.ChartColor required
Resolved shadow tint; its alpha multiplies captured source alpha once.
offsetX int required
Signed horizontal logical-pixel offset.
offsetY int required
Signed vertical logical-pixel offset.
sigmaX double required
Finite nonnegative horizontal target, at most 128 device pixels after density conversion.
sigmaY double? = null optional
Optional vertical target; null uses sigmaX.
spread int = 0 optional
Signed integer logical radius; dilation when positive, erosion when negative.
orderedDither bool = true optional
Independent finite 0..1 tint opacity; applied once before final byte conversion.
opacity double = 1 optional
Optional positive shadow-only region relative to source geometry, excluding stroke. Original source is retained.
relativeRegion ChartForgeX.Primitives.ChartRect? = null optional
Whether final RGBA8 conversion uses the existing layer-local Bayer pattern.

Properties

public ChartColor Color { get; } #

Gets the literal shadow color.

public int OffsetX { get; } #

Gets the signed horizontal logical offset.

public int OffsetY { get; } #

Gets the signed vertical logical offset.

public double SigmaX { get; } #

Gets the horizontal logical Gaussian target.

public double SigmaY { get; } #

Gets the vertical logical Gaussian target.

public int Spread { get; } #

Gets the signed logical alpha-spread radius.

public bool OrderedDither { get; } #

Gets the final ordered-dither policy.

public double Opacity { get; } #

Gets the independent finite tint-opacity multiplier. One retains the existing byte-alpha path.

public ChartRect? RelativeRegion { get; } #

Gets optional shadow-only clipping in fractions of the source surface geometry box; null retains propagated support.