Environment: Siren
MusicalInterval commentStamp: '
computing notes
topIfBottomIs: aNote
printing
printOn: s
printPrintableOn: s
Watch out : all Intervals cant print themselves.
You can convert a musicalInterval into a ChromaticInterval.
E.g. : Interval between Cbb and C ## (super super augmented
unison!!).
There are here 40 printable intervals. Cf. method MusicalInterval allPrintableIntervals
(put in protocol constants)
storeOn: s
automatic access
semiTones
semiTones: aValue
type
type: aValue
arithmetics
(MusicalInterval majorSecond) + (MusicalInterval perfectFifth)
testing
isAscending
isDescending
comparing
<= anInterval
= anInterval
> anInterval
>= anInterval
hasSameDirectionAs: anInterval
mutations
asChromaticInterval
descending
MetaClass: MusicalInterval class
examples
MusicalInterval allPrintableIntervals
example
MusicalInterval majorThird inverse
MusicalInterval perfectFourth topIfBottomIs: N C sharp -> Fa#
MusicalInterval perfectFourth bottomIfTopIs: N F sharp -> Do#
N do intervalBetween: N re -> Major second
N do flat intervalBetween: N sol -> Augmented fifth
N do flat intervalBetween: N do sharp -> superAugmented unisson
N do flat intervalBetween: N do sharp sharp -> non printable interval
(N do flat intervalBetween: N do sharp sharp) asChromaticInterval -> Chromatic 3
(N do intervalBetween: N sol) = (N re intervalBetween: N la) -> true
(N do intervalBetween: N fa sharp) = (N do intervalBetween: N sol flat) -> false
MusicalInterval allIntervalsType: 3 -> #(Major third Minor third )
MusicalInterval allIntervalsType: 2 ->
#(Augmented second Diminished second Major second Minor second )
MusicalInterval allIntervalsType: 1 -> #(Augmented unisson Diminished unisson superAugmented unisson superDiminished unisson unisson )
exampleTranspositions
three ways of of transposing pitch classes and od notes
creation
MusicalInterval allIntervalsType: 2
type: aType semiTones: d
all-printable
augmentedFifth
8 semitones
augmentedFourth
6 semitones
augmentedNinth
15 semitones
augmentedOctave
3 semitones
augmentedSecond
3 semitones
augmentedTenth
17 semitones
augmentedTwelvth
20 semitones
augmentedUnison
diminishedFifth
6 semitones
diminishedFourth
5 semitones
diminishedNinth
1 octave + 1 semitones
diminishedOctave
11 semitones
diminishedSecond
0 semitones
diminishedSeventh
9 semitones
diminishedTenth
15 semitones
diminishedThirteenth
diminishedTwelvth
18 semitones
diminishedUnison
MusicalInterval diminishedUnison topIfBottomIs: N C
majorNinth
14 semitones
majorSecond
2 semitones
majorSeventh
11 semitones
majorSixth
9 semitones
majorTenth
14 semitones
majorThird
4 semitones
majorThirteenth
majorTwelvth
19 semitones
minorNinth
1 octave + 1 semitones
minorSecond
1 semitone
minorSeventh
10 semitones
minorSixth
8 semitones
minorThird
3 semitones
minorThirteenth
octave
perfectEleventh
5 semitones
perfectFifth
7 semitones
perfectFourth
5 semitones
superAugmentedUnison
MusicalInterval superAugmentedUnison topIfBottomIs: N C
superDiminishedUnison
MusicalInterval superDiminishedUnison topIfBottomIs: N C
unison
constants nick-names
aug4
aug5
aug9
15 semitones
dim13
dim5
6 semitones
dim7
9 semitones
dim9
eleventh
fifth
flatFifth
flatNinth
1 octave + 1 semitones
flatThirteenth
fourth
ninth
second
2 semitones
seventh
sixth
thirteenth