Table of Contents

Struct Arc

Namespace
Sigil.Sound
Assembly
Sigil.Sound.Notes.dll

A stretch of cycle time, from Sigil.Sound.Arc.Begin up to but not including Sigil.Sound.Arc.End.

public readonly record struct Arc : IEquatable<Arc>

Implements

Inherited Members

Constructors

Arc(Fraction, Fraction)

A stretch of cycle time, from Sigil.Sound.Arc.Begin up to but not including Sigil.Sound.Arc.End.

public Arc(Fraction Begin, Fraction End)

Parameters

Begin Fraction
End Fraction

Properties

Begin

public Fraction Begin { get; init; }

Property Value

Fraction

End

public Fraction End { get; init; }

Property Value

Fraction

Length

The length of the arc, in cycles.

public Fraction Length { get; }

Property Value

Fraction

Methods

SplitCycles()

Splits the arc at every cycle boundary; a point arc comes back as itself.

public CycleSplitter SplitCycles()

Returns

CycleSplitter

ToString()

The arc as [begin, end).

public override string ToString()

Returns

string

TryIntersect(Arc, out Arc)

The part both arcs cover; false when they do not overlap. A point arc overlaps an arc that contains it.

public bool TryIntersect(Arc other, out Arc result)

Parameters

other Arc
result Arc

Returns

bool