Table of Contents

Class Articulation

Namespace
Celeritas.Core.Ornamentation
Assembly
Celeritas.dll

Articulation modifier - affects duration and velocity without adding notes.

public sealed class Articulation : Ornament
Inheritance
Articulation
Inherited Members

Properties

DurationMultiplier

Duration multiplier (e.g., 0.5 for staccato).

public float DurationMultiplier { get; init; }

Property Value

float

Remarks

A value above 1 (the fermata preset's 1.5) lengthens the note past its written value without delaying anything that follows: Expand() keeps the base note's offset, and OrnamentApplier keeps every later note at its own, so in a single line the lengthened note overlaps the next. Every other preset stays inside the written note.

Type

Type of articulation.

public ArticulationType Type { get; init; }

Property Value

ArticulationType

VelocityMultiplier

Velocity multiplier (e.g., 1.3 for accent).

public float VelocityMultiplier { get; init; }

Property Value

float

Methods

Expand()

Expands into the single base note with duration and velocity scaled by the multipliers.

public override NoteEvent[] Expand()

Returns

NoteEvent[]

Exceptions

ArgumentOutOfRangeException

DurationMultiplier is not positive.

FromType(ArticulationType, NoteEvent)

Create articulation from type with standard modifiers.

public static Articulation FromType(ArticulationType type, NoteEvent baseNote)

Parameters

type ArticulationType
baseNote NoteEvent

Returns

Articulation

Exceptions

ArgumentOutOfRangeException

type is not a defined ArticulationType value.