JMSL Tutorial: JScore
Transforming notes algorithmically

Recall that JScore's programmability breaks down into two areas:
  1. Adding algorithmically generated notes to a score
  2. Transforming selected notes in a score

This tutorial introduces how to algorithmically transform existing notes.

Transforms are applied to notes in JScore's copy buffers. The result of the transform is pasted into the score.

The Copy operation clones selected Notes into the Copy Buffer, so any transforms that happen to the Notes in the copy buffer do not affect the originally selected Notes.

JScore supports two kinds of transforms:
  1. Unary Copy Buffer Transform - operates on notes contained in the Copy Buffer.
    Example: result = retrograde of copy buffer.
  2. Binary Copy Buffer Transform - operates on two sets of notes contained in Aux Buffers 1 and 2.
    Example: result = interleaved notes from aux1 and aux2

Unary Copy Buffer Transform example: Retrograde Transform
The Retrograde transform is a Unary Copy Buffer Transform which reverses the order of the notes in the copy buffer.

You need a Java-enabled browser to view this applet.
View the complete source here.

Previous Tutorial Index Tutorial Contents Next

  (C) 2000 Nick Didkovsky and Phil Burk, All Rights Reserved
  JMSL is based upon HMSL (C) Phil Burk, Larry Polansky and David Rosenboom.