master
Albert Graef 2018-08-31 13:18:26 +02:00
parent 18cf14b888
commit 84a9109e19
2 changed files with 4 additions and 4 deletions

View File

@ -446,7 +446,7 @@ In contrast to standard data translations, there's no increment flag here, so th
In order to describe more precisely how this works, let's assume an input value *v* and a modulus *k*. We divide *v* by *k*, yielding the quotient (offset) *q* = *v* div *k* and the remainder (value) *r* = *v* mod *k*. E.g., with *k* = 16 and *v* = 21, you'll get *q* = 1 and *r* = 5 (21 divided by 16 yields 1 with a remainder of 5). The calculated offset *q* is then applied to the note itself, and the remainder *r* becomes the velocity of that note. So in the example the output would be the note `C#0` (`C0` offset by 1) with a velocity of 5. On the APCmini, this message will light up the second button in the bottom row of the 8x8 grid in yellow.
This simple kind of transformation is surprisingly versatile, and there are some variations of the syntax which make it even more flexible. One such variation is *transposition*, denoted with the `'` (apostrophe) flag at the end of the output message. It reverses the roles of *q* and *r*, so that the remainder becomes the offset and the quotient the value of the output message. For instance, with `CP[16] C0` and the same input value of 21, you'd get the note `F0` (`C0` offset by 5) with a velocity of 1 instead. We won't utilize this in the present example, but it's very convenient in some situations, and we'll see some more examples of its use in the following section.
This simple kind of transformation is surprisingly versatile, and there are some variations of the syntax which make it even more flexible. One such variation is *transposition*, denoted with the `'` (apostrophe) flag at the end of the output message. It reverses the roles of *q* and *r*, so that the remainder becomes the offset and the quotient the value of the output message. For instance, with `CP[16] C0'` and the same input value of 21, you'd get the note `F0` (`C0` offset by 5) with a velocity of 1 instead. We won't utilize this in the present example, but it's very convenient in some situations, and we'll see some more examples of its use in the following section.
As usual in data translations, you can also specify a step size to upscale the output value *r*:

View File

@ -1237,9 +1237,9 @@ One such variation is \f[I]transposition\f[], denoted with the
It reverses the roles of \f[I]q\f[] and \f[I]r\f[], so that the
remainder becomes the offset and the quotient the value of the output
message.
For instance, with \f[C]CP[16]\ C0\f[] and the same input value of 21,
you'd get the note \f[C]F0\f[] (\f[C]C0\f[] offset by 5) with a velocity
of 1 instead.
For instance, with \f[C]CP[16]\ C0\[aq]\f[] and the same input value of
21, you'd get the note \f[C]F0\f[] (\f[C]C0\f[] offset by 5) with a
velocity of 1 instead.
We won't utilize this in the present example, but it's very convenient
in some situations, and we'll see some more examples of its use in the
following section.