Class OverlayManagerZoom
- Namespace
- VisioForge.Core.Types.X.VideoEffects
- Assembly
- VisioForge.Core.dll
Zoom effect for overlay manager that scales and shifts the video content. This effect allows zooming into the video with configurable X/Y scaling ratios and pixel-based shift offsets for positioning the zoomed area. Implements the VisioForge.Core.Types.X.VideoEffects.IOverlayManagerElement interface.
public class OverlayManagerZoom : IOverlayManagerElementInheritance
Implements
Inherited Members
Constructors
OverlayManagerZoom()
Initializes a new instance of the VisioForge.Core.Types.X.VideoEffects.OverlayManagerZoom class with default values (no zoom, no shift).
public OverlayManagerZoom()OverlayManagerZoom(double, double, int, int, bool, string, TimeSpan, TimeSpan)
Initializes a new instance of the VisioForge.Core.Types.X.VideoEffects.OverlayManagerZoom class with specified zoom and shift values.
public OverlayManagerZoom(double zoomX, double zoomY, int shiftX = 0, int shiftY = 0, bool enabled = true, string name = "Zoom", TimeSpan startTime = default, TimeSpan endTime = default)Parameters
zoomXdouble-
The zoom X ratio (1.0 = 100%).
zoomYdouble-
The zoom Y ratio (1.0 = 100%).
shiftXint-
The horizontal shift in pixels.
shiftYint-
The vertical shift in pixels.
enabledbool-
If set to
true, the effect is enabled. namestring-
The effect name.
startTimeTimeSpan-
The start time for the effect.
endTimeTimeSpan-
The end time for the effect.
OverlayManagerZoom(double, int, int, bool)
Initializes a new instance of the VisioForge.Core.Types.X.VideoEffects.OverlayManagerZoom class with uniform zoom (same X and Y ratio).
public OverlayManagerZoom(double zoom, int shiftX = 0, int shiftY = 0, bool enabled = true)Parameters
zoomdouble-
The uniform zoom ratio for both axes (1.0 = 100%).
shiftXint-
The horizontal shift in pixels.
shiftYint-
The vertical shift in pixels.
enabledbool-
If set to
true, the effect is enabled.
Properties
Cache
Gets or sets the cache object used internally for rendering.
public object Cache { get; set; }Property Value
Enabled
Gets or sets a value indicating whether this VisioForge.Core.Types.X.VideoEffects.OverlayManagerZoom is enabled.
public bool Enabled { get; set; }Property Value
EndTime
Gets or sets the end time when the effect stops being visible. Use TimeSpan.Zero to show the effect until the end.
public TimeSpan EndTime { get; set; }Property Value
InterpolationMode
Gets or sets the interpolation mode used when scaling the video.
public OverlayManagerInterpolationMode InterpolationMode { get; set; }Property Value
Name
Gets or sets the name of the element.
public string Name { get; set; }Property Value
Opacity
Gets or sets the opacity (0.0 to 1.0). Note: Opacity is not directly applicable for zoom effects.
public double Opacity { get; set; }Property Value
Rotation
Gets or sets the rotation angle in degrees (0-360). Note: Rotation is applied after zoom transformation.
public double Rotation { get; set; }Property Value
Shadow
Gets or sets the shadow settings. Note: Shadow is not applicable for zoom effects and will be ignored.
public OverlayManagerShadowSettings Shadow { get; set; }Property Value
ShiftX
Gets or sets the horizontal shift in pixels. Positive values shift the view to the right (showing content from the left), negative values shift to the left (showing content from the right).
public int ShiftX { get; set; }Property Value
ShiftY
Gets or sets the vertical shift in pixels. Positive values shift the view down (showing content from the top), negative values shift up (showing content from the bottom).
public int ShiftY { get; set; }Property Value
StartTime
Gets or sets the start time when the effect becomes visible. Use TimeSpan.Zero to show the effect from the beginning.
public TimeSpan StartTime { get; set; }Property Value
ZIndex
Gets or sets the Z-Index (drawing order). Higher values are drawn on top. For zoom effects, this determines the order of transformation application.
public int ZIndex { get; set; }Property Value
ZoomX
Gets or sets the zoom ratio for the X axis. 1.0 = 100% (no zoom), 2.0 = 200% (2x zoom), 0.5 = 50% (zoom out).
public double ZoomX { get; set; }Property Value
ZoomY
Gets or sets the zoom ratio for the Y axis. 1.0 = 100% (no zoom), 2.0 = 200% (2x zoom), 0.5 = 50% (zoom out).
public double ZoomY { get; set; }