layout

Status:

UNDER DEVELOPMENT, outdated version on sourceforge

Platform:Java SE 6
Language:Java 6
Dependencies:core
License:GPL 2

Description

This module layouts scores, i.e. it "engraves" the music into a platform-independent format. All symbols, lines and words are saved as so-called Stampings, which have a content and a position.

Music engraving is one of the hardest parts when writing a music notation program. We spend much time in improving the algorithms, and try to follow the rules presented in books like Teach Yourself the Art of Music Engraving by Ted Ross.

Layout algorithm

We decided to split the layout algorithm into multiple steps with a defined input and output format. This allows to plug in different implementations for different steps. The following diagram shows the current structure of the layout algorithm: