Class CircleVideoEffect
- Namespace
- VisioForge.Core.Types.X.VideoEffects
- Assembly
- VisioForge.Core.dll
Represents a circular arc perspective effect that maps the video onto a circular arc segment creating cylindrical distortion.
public class CircleVideoEffect : BaseVideoEffect, IBaseVideoEffect, IVideoEditXVideoEffectInheritance
Implements
Inherited Members
Remarks
SDK Availability: VideoCaptureCoreX, MediaPlayerCoreX, VideoEditCoreX, Media Blocks SDK
Platforms: Windows, Linux, macOS, Android, iOS
This effect creates a perspective transformation that maps the video image onto a circular arc, simulating viewing the content on a curved cylindrical surface. The effect can create partial or complete circular wrapping, panoramic views, or cylindrical distortions.
The circle effect is controlled by three parameters:
- Angle: Starting angle of the arc in radians (rotation position)
- Height: Vertical size/radius of the circular arc
- SpreadAngle: Arc length in radians (how much of circle is used)
The circle effect is commonly used for:
- Panoramic Views: Simulate wide-angle or 360° panoramas
- Cylindrical Projection: Map flat video to curved surfaces
- Fish-eye Simulation: Create circular distortion effects
- Artistic Effects: Curved, warped perspectives
- VR Content: Cylindrical video mapping for immersive content
This is a cross-platform effect using the circle element with parametric arc mapping.
The effect is GPU-accelerated where available for real-time performance.
Performance: Real-time capable on modern hardware. GPU-accelerated geometric transformation with cylindrical projection. Performance scales with arc complexity and resolution.
Constructors
CircleVideoEffect(string)
Initializes a new instance of the VisioForge.Core.Types.X.VideoEffects.CircleVideoEffect class with specified name.
public CircleVideoEffect(string name = "circle")Parameters
namestring-
The unique name for this effect instance. Defaults to "circle".
Fields
DefaultName
The default name for circle effects.
public static string DefaultNameField Value
Properties
Angle
Gets or sets the starting angle of the circular arc in radians.
public double Angle { get; set; }Property Value
Remarks
Angle defines the rotational starting position of the arc. Use this to orient the circular mapping in different directions. Negative values rotate counter-clockwise.
Height
Gets or sets the height/radius of the circular arc.
public int Height { get; set; }Property Value
Remarks
Height controls the radius of curvature for the cylindrical projection. Smaller values create tighter curvature (more pronounced cylindrical effect), while larger values create gentler curves approaching flat perspective.
SpreadAngle
Gets or sets the angular length/spread of the arc in radians.
public double SpreadAngle { get; set; }Property Value
Remarks
SpreadAngle determines how much of the circular arc is used for the mapping. Larger values wrap more of the video around the circular path. A full 2π creates a complete cylindrical wrap-around effect.
StartTime
Gets or sets the start time for the circle effect (VideoEditCoreX only).
public TimeSpan StartTime { get; set; }Property Value
Remarks
This property is only used in VideoEditCoreX for time-based effect control.
StopTime
Gets or sets the stop time for the circle effect (VideoEditCoreX only).
public TimeSpan StopTime { get; set; }Property Value
Remarks
This property is only used in VideoEditCoreX for time-based effect control.
Methods
GenerateDescription()
Generates the description.
public string GenerateDescription()Returns
- string
-
A string containing the GStreamer element description for the circle effect.