#include "MusimatChapter9.h"Go to the source code of this file.
Functions | |
| MusimatChapter9Section (C091101) | |
| IntegerList | transpose (IntegerList L, Integer t) |
| Static Void | para1 () |
| IntegerList | invert (IntegerList L) |
| Static Void | para2 () |
| IntegerList | retrograde (IntegerList L) |
| Static Void | para3 () |
| IntegerList invert | ( | IntegerList | L ) |
Definition at line 63 of file C091101.cpp.
{
For(Integer i = 0; i < Length(L); i = i + 1) {
L[i] = Mod(12 - L[i], 12);
}
Return(L);
}
| MusimatChapter9Section | ( | C091101 | ) |
Definition at line 2 of file C091101.cpp.
References para1(), para2(), and para3().
{
Print("*** 9.11.1 Precomposition ***");
/*****************************************************************************
9.11.1 Precomposition
The process of composing atonal music is typically divided into two parts.
o Precomposing: assembling the musical materials
o Composing: applying the assembled materials in a design
Musimat already has a number of data types and operations, but a few more are needed:
o To represent pitches as symbols with integer values, such as:
Integer C = 0, Cs = Db = 1, D = 2, Ds = Eb = 3 . . ., B = 11;
o To represent motives as lists, such as:
IntegerList a = {F, F, G, A};
IntegerList b = {F, A, G};
IntegerList c = {F, E};
IntegerList d = {Bb, A, G, F};
IntegerList e = {E, C, D, E, F, F};
o To combine motives and concatenate lists:
IntegerList y = Join(a, b, a, c, a, d, e);
(y is defined as the list of pitches of the tune "Yankee Doodle.")
The function transpose() below transposes a pitch set.
*****************************************************************************/
para1(); // Step into this function to continue.
para2(); // Step into this function to continue.
para3(); // Step into this function to continue.
}
| Static Void para1 | ( | ) |
Definition at line 48 of file C091101.cpp.
References transpose().
{
/*****************************************************************************
Here is an example of transposing a list:
*****************************************************************************/
Print("*** Transposing a list ***");
IntegerList L( 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11 );
Print("Original row:", L);
Print("Row transposed by 6: ", transpose(L, 6) );
/*****************************************************************************
To invert a pitch set:
*****************************************************************************/
}
| Static Void para2 | ( | ) |
Definition at line 70 of file C091101.cpp.
References invert().
{
/*****************************************************************************
Here is an example of inverting a list:
*****************************************************************************/
Print("*** Inverting a list ***");
IntegerList L( 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11 );
Print("Original row:", L);
Print( "Inverted row:", invert(L) );
/*****************************************************************************
To take the retrograde of a set:
*****************************************************************************/
}
| Static Void para3 | ( | ) |
Definition at line 93 of file C091101.cpp.
{
/*****************************************************************************
Here is an example of retrograding a list:
*****************************************************************************/
Print("*** Retrograding a list ***");
IntegerList L( 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11 );
Print("Original row:", L);
Print( "Retrograded row:", retrograde(L) );
}
| IntegerList retrograde | ( | IntegerList | L ) |
Definition at line 84 of file C091101.cpp.
References n().
| IntegerList transpose | ( | IntegerList | L, |
| Integer | t | ||
| ) |
Definition at line 41 of file C091101.cpp.
{
For(Integer i = 0; i < Length(L); i = i + 1) {
L[i] = PosMod(L[i] + t, 12); // BUG: given as Mod() in "Musimat", s.b. PosMod()
}
Return(L);
}
1.7.2